软件框架
RPC、GRPC、
zzti_bsj
没有可以抵达的巅峰
展开
-
yaml scan(stream)
scan(stream)由于在yaml与其他对象互相转化的过程中,yaml是要经过若干个逻辑阶段,所以yaml中有events和tokens序列的概念。scan()对给定的stream,生成一个tokens序列。反之,tokens序列也可以被加载成yaml流,通过emit方法stream: 字符流或者文件流document = """---block sequence: - BlockEntryTokenblock mapping: ? KeyToken : ValueT原创 2020-09-24 17:04:48 · 224 阅读 · 0 评论 -
yaml parse(stream)
parse(stream)由于在yaml与其他对象互相转化的过程中,yaml是要经过若干个逻辑阶段,所以yaml中有events和tokens序列的概念。parse对给定的yaml stream,生成一个events序列。stream: 字符流或者文件流document = """---block sequence: - BlockEntryTokenblock mapping: ? KeyToken : ValueTokenflow sequence: [FlowEntry原创 2020-09-24 16:57:58 · 751 阅读 · 0 评论 -
通过yaml构造python对象实例
定义一个Hero类编辑一个!!python/object:__main__.Hero标签的yaml字符流,内容是构建实例需要的参数内容。使用load()加载该文档,返回值是Hero对象实例。import yamlclass Hero: def __init__(self, name, hp, sp): self.name = name self.hp = hp self.sp = sp def __repr__(self):原创 2020-09-28 23:25:26 · 1339 阅读 · 0 评论 -
Prometheus dial tcp ****, connect: no route to host
解决方案参考博文systemctl stop firewalldsystemctl disable firewalld原创 2020-08-19 20:39:57 · 4105 阅读 · 0 评论 -
prometheus入门介绍
introduce参考blog,入门以Prometheus为中心的服务监控系统的运作流程,包括警告管理系统AlertManager、可视化界面、(push gateway)临时任务和批处理任务的推送处理方式。自动抓取数据到+自动报警+可视化展示效果PrometheusPrometheus是一个开源的服务监控系统、时间序列数据库、警报工具包。Prometheus原理:通过http协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控。由于使用http协议抓取监控组件原创 2020-09-22 00:27:13 · 167 阅读 · 1 评论 -
proto3基础
字段编号字段编号用来指定消息中字段的二进制加密格式,1-15编号的字段使用一个字节加密,16-2047编号使用两个字节加密。在定义proto消息字段时,把经常出现的字段的使用1-15编号标记。有关proto encoding的更多信息参考可以指定的最小编码是1,最大编码是2^29-1。在19000-19999之间的字段编码是protobuf保留的编码,不可以用来作为自定义的消息字段的编码。字段规则singular:proto3的默认语法。repeated:该规则标记的字段可以重复任意次。(原创 2020-10-25 15:15:07 · 3026 阅读 · 0 评论 -
grpc - 实例之同步代码:say hello
grpc - 实例之同步代码:say hello通过一个grpc实现一个同步的c/s代码,client发送一个空的requset,server返回一个含有hello字符串的response。1. 定义proto文件这里使用proto3的语法。syntax = "proto3"// response是empty,request中只有一个字段,类型是字符串类型,则如下定义这两个消息message client_request{}message server_reponse{ str原创 2020-10-25 17:09:17 · 418 阅读 · 0 评论 -
Thrift的网络堆栈
网络堆栈结构简图 +-------------------------------------------+ | Server | | (single-threaded, event-driven etc) | +-------------------------------------------+ | Processor | | (co原创 2020-11-03 18:12:10 · 228 阅读 · 0 评论 -
thrift入门实例
thrift简单实例简单实现say hello的RPC服务比如你现在有一套代码,只有一个简单的Hello类,你想使用thrift实现RPC的客户端和服务端业务,让客户端向服务端打招呼,say hello。filename: h.py(注意是h.py不要写成hello.py,博主写的时候命名冲突了,注意此处写成h.py)class Hello: def hello_kitty(self): print("hello kitty") def hello_py(self):原创 2020-10-11 19:41:05 · 411 阅读 · 1 评论 -
Thrfit简介
Thrift简介Thrift:可伸缩的跨语言服务开发框架,将软件堆栈和代码生成引擎结合,为不同的语言构建高效、无缝的软件服务。Thrift允许开发者创建.thrift文件,用来定义数据类型和服务接口,并且以.thrift文件作为入口,轻松构建跨语言的RPC客户端和服务端,极大方便了业务开发。Thrift层次架构图可参考的官方文档简单实例以及安装教程Apache Thrift Tutorial一系列的文档:包括安装教程、Thrift的概念、特征、接口描述语言(IDL)、数据类型Apache原创 2020-10-11 00:30:09 · 324 阅读 · 0 评论 -
thrift的python实现,简单实例
python thrift 入门实例参考自:乱糟糟thrift:接口描述语言二进制通讯协议thrift需要定义一个xxx.thrift的文件, 来生成各种语言的代码,生成之后我们的服务提供者和消费者,都需要把代码引入,服务端把代码实现,消费者直接使用API的存根,直接调用。thrift基于tcp协议实现,相比于http,有XX优点(看来需要写一篇http与thrift的比较了)。thrift的网络包相比于http的更小。windows安装thriftthrift下载地址python:转载 2020-10-10 22:56:03 · 1680 阅读 · 3 评论