Gevent供电的跨业务通信工具

crosservice的Python项目详细描述


此工具旨在为 通过套接字在不同服务之间进行通信。尚未加密。

简单示例:

客户:

from crosservice.signals import BaseSignal

class PingSignal(BaseSignal):
    _host = '127.0.0.1'
    _port = 5555
    signal = 'ping'
    expect_data = ['time']

if __name__ == '__main__':
    ping = PingSignal({'foo': 'bar'})
    if ping.result:
        print ping.result.foo, ':', ping.result.time
    else:
        print "Error: ", ping.result.error

服务器:

from crosservice.server import start_server
from crosservice.handlers import BaseHandler
import time

class PingHandler(BaseHandler):
    signal = 'ping'
    required_data = ['foo']

    def run(self, foo):
        if foo == 'bar':
            foo = 'received at'
            self.result.foo = foo
            self.result.time = time.time()
        else:
            self.result.error = 'Bad foo!'

if __name__ == '__main__':
    start_server('127.0.0.1', 5555, 1000)

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

推荐PyPI第三方库


热门话题
java Spring freemarker多模板加载程序路径   在java插件中从控制台获取输入   java在包中创建继承类   网页抓取Java Jsoup网页抓取   java在线程内创建一个对象,而true条件具有相同的引用   java如何根据空格数拆分字符串   java新的安卓 studio更新中的配置文件“app”是什么?   java在将ArrayList写入/读取到文件时出现奇怪的问题   java Reg替换文本块第一次出现+最后一次出现   java当我单击任何RecyclerView列表项时,如何在MainActivity的EditText中显示特定的单击项?   JAVA XML删除节点仅删除第一个外观   java如何在数组中查找特定值   java SVG/矢量图形对象布尔运算(并集、交集、减法)   java在Android中创建线程需要多长时间   尝试从JBOSS联系Oracle LDAP服务器时发生java连接重置异常   java基于参数获取特定的实现实例   使用java就地修改文件内容   java MonetaryException:未加载MonetaryAmountsSingletonSpi   java接受用户的不同输入并使其触发完全相同的代码段的最短方法是什么   Spring 3.2.8应用程序中未找到java HTTP 404错误