Agileutil v0.0.7 发布,Python RPC 框架

栏目: 软件资讯 · 发布时间: 3年前

内容简介:本次更新的版本是v0.0.7, 在v0.0.6的基础上,添加了TCP服务端的keepalive timeout设置。如果客户端长时间没有活动,达到超时时间后,服务端会主动关闭客户端连接,减少性能开销,节省系统资源,防止内存泄漏。 当...

        本次更新的版本是v0.0.7, 在v0.0.6的基础上,添加了TCP服务端的keepalive timeout设置。如果客户端长时间没有活动,达到超时时间后,服务端会主动关闭客户端连接,减少性能开销,节省系统资源,防止内存泄漏。

       当服务端主动关闭客户端连接后,如果客户端的client对象,后面继续调用call()方法请求,此时由于连接已被服务端关闭,已不可用,客户端会自动判断进行重连,对用户是透明的,因此用户可以无需关心连接被关闭的问题。

       默认的keepalive timeout时间设置为和Nginx相同的75s 。也支持自定义keepalive timeout时间,用户可以通调用setKeepaliveTime() 方法,参考下面的例子:

from agileutil.rpc.server import TcpRpcServer

def sayHello(name):
    return 'hello ' + name

s = TcpRpcServer('0.0.0.0', 9988)
s.setKeepaliveTimeout(10) #那么客户端连接如果10秒内没有活动,将会被服务端主动关闭
s.regist(sayHello)
s.serve()

客户端

from agileutil.rpc.client import TcpRpcClient
import time

cli = TcpRpcClient('127.0.0.1', 9988, timeout = 2)
resp = cli.call(func = 'sayHello', args=('zhangsan'))
print('resp', resp)
time.sleep(15)
resp = cli.call(func = 'sayHello', args=('zhangsan'))  #此时客户端会自动进行重连
print('resp', resp)

 

详情访问

github: https://github.com/lycclsltt/agileutil

gitee:   https://gitee.com/lycclsltt/agileutil


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据驱动:从方法到实践

数据驱动:从方法到实践

桑文锋 / 电子工业出版社 / 2018-3 / 49

本书是从理论到实践的全面且细致的企业数据驱动指南,从作者的百度大数据工作说起,完整还原其从零到一构建百度用户行为大数据处理平台经历。详解大数据本质、理念与现状,围绕数据驱动四环节——采集、建模、分析、指标,深入浅出地讲述企业如何将数据驱动方案落地,并指出数据驱动的价值在于“数据驱动决策”、“数据驱动产品智能”。最后通过互联网金融、电子商务、企业服务、零售四大行业实践,从需求梳理、事件指标设计、数据......一起来看看 《数据驱动:从方法到实践》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具