nameko微服务框架的Django集成。

nameko-django的Python项目详细描述


django nameko公司

特拉维斯CICoverage Status

BranchBuild status
masterBuild Status
developBuild Status

名字科·詹戈

nameko微服务框架的Django集成

使用自定义gpkombu序列化对象

此序列化程序与msgpack完全兼容,因此可以这样使用它:

serializer:'django_msgpackpickle'ACCEPT:['msgpack','django_msgpackpickle']SERIALIZERS:msgpack:encoder:'nameko_django.serializer.dumps'decoder:'nameko_django.serializer.loads'content_type:'application/x-msgpack'content_encoding:'binary'

为了迁移现有的微服务堆栈(使用msgpack序列化程序)来使用这个新的序列化程序 首先安装并设置所有项目

^{pr2}$

这将接受msgpackdjango_msgpackpickle,但只接受使用msgpack的结果组合的输出 一旦所有服务迁移,然后切换到第一个配置

特点

此序列化程序将自动编码和解码:

  • 日期时间,日期,时间,持续时间: 对象将转换为与兼容的字符串表示形式django.utils.dateparse 然后用django.utils.dateparse()
  • 十进制: 对象将被转换为字节字符串,然后恢复为十进制
  • Django ORM实例: 对象将使用python cPickle/pickle库进行pickle,并重新pickle回ORM模型实例
  • Django ORM查询集: 对象将变形为Model+Query,然后进行pickle以避免发送实例列表

字符串求值

此序列化程序可以计算与django.utils.dateparse格式兼容的字符串 并自动将字符串转换为DateTimeDateTimeDuration对象。在

它还可以使用如下格式计算字符串: "<app_name.model_name.ID>"这将转换为ORM实例:使用Model.objects.get(pk=ID) 例如:<auth.User.1>

"(app_name.model_name: RAW_QUERY_WITHOUT_SELECT_FROM)"这将转换为ORM查询集 例如:(auth.User: id >= 1 and date_joined > '2018-11-22 00:47:14.263837')

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

推荐PyPI第三方库


热门话题
并行处理java。util。同时发生的叉子在游泳池里。常见的并行性准则,用于选择正确的并行度大小   java如何将空白字符追加到指定长度?   安卓应用程序中出现错误,SSLHandshakeException,找不到证书路径的信任锚点   java如何使用JUnit Mockito验证检查方法是否未被调用   java如何使用不同的@RequestMapping解析多个控制器中的静态页面   Selenium中的javascript需要验证搜索结果   访问数据库SQLiteopenHelper方法时java应用程序崩溃(nullpointerexception)   在二叉树中验证最小堆时出现java空指针异常   Java 7的SSL连接失败   java用RestEasyWebTarget替换ProxyFactory不起作用   在Java应用程序中单击“否”按钮后,数组程序冻结(无响应)   数组中的前缀Java初学者前进和   Java HTML解析器,包括脚本标记和LineNumberReader   在java中为长类型数字加前导零   正则表达式无法映射正则表达式java。lang.IllegalArgumentException:模式段中捕获组的数量