python连接池实现示例程序


Posted in Python onNovember 26, 2013
import socket
import Queue
import threading
def worker():
    while True:
        i = q.get()
        conn=i[0]
        addr=i[1]
        while 1:
            sms=conn.recv(1024)
            if sms!="":
                print "Message from ("+str(addr[0])+":"+str(addr[1])+"): "+sms
            else:
                print "Close the Connection from ("+str(addr[0])+":"+str(addr[1])+")"
                conn.close()
                break
        q.task_done()
if __name__=="__main__":
    q = Queue.Queue()
    thread_num=5000
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
    s.bind(("",4242))
    s.listen(50000)
    print "Server is listening at 4242"
    for _ in range(0,thread_num):
        t=threading.Thread(target=worker)
        t.setDaemon(1)
        t.start()
    while 1:
        conn,addr=s.accept()
        print "Connection come from ("+str(addr[0])+":"+str(addr[1])+")"
        q.put((conn,addr))
    q.join()
Python 相关文章推荐
Python对象体系深入分析
Oct 28 Python
Python实现控制台输入密码的方法
May 29 Python
python批量设置多个Excel文件页眉页脚的脚本
Mar 14 Python
Python3 单行多行万能正则匹配方法
Jan 07 Python
关于Python形参打包与解包小技巧分享
Aug 24 Python
简单了解python中的f.b.u.r函数
Nov 02 Python
Python基于内置库pytesseract实现图片验证码识别功能
Feb 24 Python
Python实现电视里的5毛特效实例代码详解
May 15 Python
python正则表达式的懒惰匹配和贪婪匹配说明
Jul 13 Python
六种酷炫Python运行进度条效果的实现代码
Jul 17 Python
python的scipy.stats模块中正态分布常用函数总结
Feb 19 Python
Python实现Excel自动分组合并单元格
Feb 22 Python
使用python BeautifulSoup库抓取58手机维修信息
Nov 21 #Python
python BeautifulSoup使用方法详解
Nov 21 #Python
python装饰器使用方法实例
Nov 21 #Python
tornado框架blog模块分析与使用
Nov 21 #Python
python迭代器的使用方法实例
Nov 21 #Python
python生成器的使用方法
Nov 21 #Python
python单链表实现代码实例
Nov 21 #Python
You might like
为你总结一些php信息函数
2015/10/21 PHP
PHP使用socket发送HTTP请求的方法
2016/02/14 PHP
浅析PHP7新功能及语法变化总结
2016/06/17 PHP
Discuz论坛密码与密保加密规则
2016/12/19 PHP
PHPUnit + Laravel单元测试常用技能
2019/11/06 PHP
JavaScript的parseInt 进制问题
2009/05/07 Javascript
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
Jquery插件写法笔记整理
2012/09/06 Javascript
jquery重复提交请求的原因浅析
2014/05/23 Javascript
jQuery实现转动随机数抽奖效果的方法
2015/05/21 Javascript
js控制文本框输入的字符类型方法汇总
2015/06/19 Javascript
jQuery事件绑定方法学习总结(推荐)
2016/11/21 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
2017/02/09 Javascript
angular5 httpclient的示例实战
2018/03/12 Javascript
element跨分页操作选择详解
2020/06/29 Javascript
Python学习笔记之常用函数及说明
2014/05/23 Python
Python基于scrapy采集数据时使用代理服务器的方法
2015/04/16 Python
Python实现以时间换空间的缓存替换算法
2016/02/19 Python
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
python3.4实现邮件发送功能
2018/05/28 Python
使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤
2018/12/17 Python
详解用python自制微信机器人,定时发送天气预报
2019/03/25 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
在Python函数中输入任意数量参数的实例
2019/07/16 Python
基于YUV 数据格式详解及python实现方式
2019/12/09 Python
基于django micro搭建网站实现加水印功能
2020/05/22 Python
CSS3 简单又实用的5个属性
2010/03/04 HTML / CSS
Yves Rocher捷克官方网站:植物化妆品的创造者
2019/07/31 全球购物
如何利用find命令查找文件
2015/02/07 面试题
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
Servlet面试题库
2015/07/18 面试题
应届生法律求职信
2013/10/22 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
投标承诺函格式
2015/01/21 职场文书
介绍信怎么写
2015/05/05 职场文书
Python趣味爬虫之用Python实现智慧校园一键评教
2021/05/28 Python