Agileutil v0.0.7 发布,Python RPC 框架

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

内容简介:本次更新的版本是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


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

查看所有标签

猜你喜欢:

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

C#图解教程

C#图解教程

索利斯 (Daniel M.Solis) / 姚琪琳、苏林、朱晔 / 人民邮电出版社 / 2013-7-1 / CNY 89.00

本书是广受赞誉的C# 图解教程的最新版本。作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式、朴实简洁的文字,并辅以大量表格和代码示例,全面、直观地阐述了C# 语言的各种特性。新版本除了精心修订旧版内容外,还全面涵盖了C# 5.0 的新增特性,比如异步编程、调用者信息、case 表达式、带参数的泛型构造函数、支持null 类型运算等。通过本书,读者能够快速、深入理解C#,为自己的编程生涯......一起来看看 《C#图解教程》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

SHA 加密
SHA 加密

SHA 加密工具