python websocket异步高并发_Python3.5异步和多个websocket服务器
我在Ubuntu上使用pythonwebsockets4.0.1。我想有2个websocket服务器运行。我可以通过为每个线程创建2个线程和独立的事件循环来实现这一点。我所说的“某种工作”是指两个websockets都工作,并且响应大约30秒,然后其中一个停止。我必须重新启动程序让他们两个都重新工作。如果我只运行这两个线程中的一个,那么单个websocket将永远工作。
我做错了什么?如何让2个websockets永远与asyncio一起工作?谢谢。# Start VL WebSocket Task
class vlWebSocketTask (threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
def run(self):
# Main while loops
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
while True:
try:
print("Starting VL WebSocket Server...")
startVLServer = websockets.serve(vlWebsocketServer, '192.168.1.3', 8777)
asyncio.get_event_loop().run_until_complete(startVLServer)
asyncio.get_event_loop().run_forever()
except Exception as ex:
print(ex)
time.sleep(5)
# Start IR WebSocket Task
class irWebSocketTask (threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
def run(self):
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
while True:
try:
print("Starting IR WebSocket Server...")
startIRServer = websockets.serve(irWebsocketServer, '192.168.1.3', 8555)
asyncio.get_event_loop().run_until_complete(startIRServer)
asyncio.get_event_loop().run_forever()
except Exception as ex:
print(ex)
time.sleep(5)
# Initialize VL WebSocket Task
#VLWebSocketTask = vlWebSocketTask()
#VLWebSocketTask.start()
# Initialize IR WebSocket Task
IRWebSocketTask = irWebSocketTask()
IRWebSocketTask.start()
python websocket异步高并发_Python3.5异步和多个websocket服务器相关推荐
- python3.6 websocket异步高并发_Python3.6 websocket开发
message_queues ={} client_socket_fd_map={}defstart_socket_select_server(): sock=socket.socket(socket ...
- python3.6 websocket异步高并发_在Python3.6上的websocket客户端中侦听传入消息时出现问题...
我正在尝试使用websockets包在Python上构建一个websockets客户端:Websockets 4.0 API 我使用这种方式而不是示例代码,因为我想创建一个websocket客户机类对 ...
- netty框架实现websocket达到高并发
websocket(三) 进阶!netty框架实现websocket达到高并发 引言: 在前面两篇文章中,我们对原生websocket进行了了解,且用demo来简单的讲解了其用法.但是在实际项目中,那 ...
- python go高并发_天下武功为快不破,戏说Python与Go高并发争锋!
在这个以斗气大陆横行的世界,每一个大的势力宗门都有自己的杀手锏的功法,比如老牌的古族有C++这样的巨无霸语言,药族有C语言,几乎斗气大陆所有的操作系统都是用C语言做的,毕竟斗气都要靠吃丹药维持.而实力 ...
- 天下武功为快不破,戏说Python与Go高并发争锋!
在这个以斗气大陆横行的世界,每一个大的势力宗门都有自己的杀手锏的功法,比如老牌的古族有C++这样的巨无霸语言,药族有C语言,几乎斗气大陆所有的操作系统都是用C语言做的,毕竟斗气都要靠吃丹药维持.而实力 ...
- 高并发大流量专题---6、独立图片服务器的部署
高并发大流量专题---6.独立图片服务器的部署 一.总结 一句话总结: 独立图片服务器还是非常有必要的,可以很大程度的降低主服务器的io以及提升用户访问速度 1.独立图片服务器 独立的必要性? 分担W ...
- python异步高并发_通过python异步通讯方式构建高并发压力测试工具
背景说明 在工作中,要对一个接口进行压测,我当时就想通过python自己编写一个压力发生器. 初步方案(单线程循环发送) 通过循环向服务端发送请求,代码如下: #采用单步循环的方式循环测试 impor ...
- java 异步_聊聊java高并发系统之异步非阻塞
作者:孙伟,目前负责京东商品详情页统一服务系统,写过java,写过ngx_lua,还写过storm等,喜欢学习研究新事物. 在做电商系统时,流量入口如首页.活动页.商品详情页等系统承载了网站的大部分流 ...
- Python Tornado搭建高并发Restful API接口服务
Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快能实现高并发.得利于其 非阻塞的方式和对epoll的运用,Torn ...
最新文章
- Nginx防盗链,Nginx访问控制, Nginx解析php相关配置, Nginx代理
- 安装Vertica数据库
- docker-compose up volumes 调用外部文件,权限问题 cannot open directory xxxxx .: Permission denied
- java构造函数使用方法总结
- xp装linux一键安装教程图解,XP下硬盘安装CentOS 6.0图解教程
- centos忘记root用户的密码
- WPF Grid动态显示或隐藏一列的一种方法
- sqlserver如何定义一个静态变量_[Bazel]自定义规则实现将多个静态库合并为一个动态库或静态库...
- python virtualenv_python开发之virtualenv与virtualenvwrapper讲解
- 谷歌聊天机器人api_如何编写针对Google地图等网络应用量身定制的聊天机器人
- linux与pc机网络通信,PC宿主机和目标机通信方式
- 微信小程序的零食商城
- python 滚动字幕_Python pygame绘制文字制作滚动文字过程解析
- JavaScript判断office的版本
- bzoj 1623: [Usaco2008 Open]Cow Cars 奶牛飞车(贪心)
- STM32标准库驱动蜂鸣器
- android获取手机号ip地址,手机ip查询我的地址定位(网站如何抓取用户手机号和IP地址)...
- php 下载 迅雷下载地址,PHP 生成下载地址,比如迅雷下载
- 【Chrome扩展程序】解决“只能通过Chrome网上应用商店安装该程序”的方法
- linux版vmware无法导入ovf,vmware 虚拟机导入OVF出现路径错误