redis pubsub websocket代理

socker的Python项目详细描述


Socker作为一个进程服务运行,对非阻塞I/O使用Asyncio。

socker使用单个redis pubsub通道,并且有自己的通道 订阅逻辑,这意味着您可以与其他人共享redis数据库 应用。

socker作为单个进程服务运行。Socker打开了一个WebSocket 服务器端口并建立redis连接。redis连接创建 Socker频道上的订阅。

安装

pip install socker

用法

$ socker -h
Start the socker websocket server

Usage:
  socker [options]
  socker -? | --help
  socker --version

Options:
  -i INTERFACE    Listening interface [default: localhost]
  -p PORT         Listening port [default: 8765]

  -v              Enable verbose output

  --redis-host=HOST             Redis host [default: localhost]
  --redis-port=PORT             Redis port [default: 6379]
  --redis-db=DB                 Redis database [default: 0]
  --redis-password=PASSWORD     Redis password

  --logto FILE    Log output to FILE instead of console

  --version       show version
  -? --help       Show this screen

从另一个应用程序向Socker发布消息:

fromsockerimportMessagechannel='foo.bar.42'data={'yes':['yes','no','baz']}redis_client.publish('socker',Message(channel,data))

任何已订阅的WebSocket客户端

  • foo.*
  • foo.bar.*
  • foo.bar.42

将收到该消息。

向pypi发布新版本

  1. VERSION中提升版本。
  2. 提交更改并用新版本标识符标记它。
  3. 生成源发行版:python setup.py sdist
  4. 建立轮子:python setup.py bdist_wheel
  5. 使用Twinetwine upload dist/*上载生成的分发。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用“Wed,01 Jul 2015 17:32:41 EDT”解析字符串   java Storm apache升级(1.0.0到2.0.0)   java类驻留在不同的目录中,而不是包指定的目录。为什么?   将Java中的图像缩放到非常小的维度   java如何通过子文档从自定义方面访问ElasticSearch parentdoc字段   java如何在RationalSoftwareArchitect中使用findbugs?   Java中的事件提升处理   java值被添加到arrayList的所有索引中,而不是在“”时添加到最后一个索引中。正在使用arraylist的add()方法   JFrame中的java JPanel派生类   java如何用循环和异步方法模拟类   java Android阻止可绘制背景超出视图范围   为客户排序Java阵列   java Apache poi如何将工作表设置为枚举位置值属性?   java Rhino在使用自定义类参数调用javascript函数时出错   java格式化日期从年月日到年月日   spring如何修复java。lang.illegalargumentexception在此特定场景中是否尝试创建具有null实体的合并事件?   java如何创建更好的对象