TarsGo微服务开发实践-利开园TarsGo微服务高效开发 最佳实践 利开园 腾讯高级工程师 2021-08-21 关于我 Docker TarsGo Tars+K8S DevOps 2015至今 腾讯 目录 1. RPC 2. 日志 3. 监控 4. 调用链 5. 网关 6. 错误码 7. 配置 8. 云原生 9. 标准化 背景 • Tars是腾讯开源的微服务解决方案 • 高性能的RPC框架 • 丰富的服务治理能力 丰富的服务治理能力 • 支持Golang/Cpp/Java/PHP/Nodejs • 腾讯内部(TAF)曾经应用最广的开发框架 • Tars应用实践:https://github.com/tarscloud/gopractice RPC:不应该只是RPC • 基本功能:远程函数调用 • 可观测 • 名字服务+SET流量管理 • 熔断与恢复 • 轮询/一致性Hash • 错误码管理 日志:排查问题的利器 日志:排查问题的利器 • 格式化 =〉 JSON • 单机withFields • 基于context • 跨服务withFields • 基于透传元数据 • 按大小/时间滚动 • 远程日志 vs 本地日志 的取舍 监控:主动发现问题 • RPC接口默认监控 • 自定义业务监控 • 基于Prometheus Tracing:在复杂系统中定位问题 • 依赖框架Context透传 • 基于OpenTracing+Jaeger0 码力 | 15 页 | 4.23 MB | 1 年前3
WeRoBot 1.4.0 微信公众号开发框架文档索引 模块 | 下一页 | WeRoBot 1.4.0 文档 » WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 回应有指定文本的消息 Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 82 页 | 88.39 KB | 1 年前3
WeRoBot 1.6.0 微信公众号开发框架文档索引 模块 | 下一页 | WeRoBot 1.6.0 文档 » WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 回应有指定文本的消息 Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 85 页 | 89.26 KB | 1 年前3
WeRoBot 1.5.0 微信公众号开发框架文档索引 模块 | 下一页 | WeRoBot 1.5.0 文档 » WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 回应有指定文本的消息 Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 83 页 | 88.85 KB | 1 年前3
WeRoBot 1.10.0 微信公众号开发框架文档WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 Session 开启/关闭 Session Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage LinkMessage LocationMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 101 页 | 73.89 KB | 1 年前3
WeRoBot 1.6.0 微信公众号开发框架文档WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 Session 开启/关闭 Session Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage LinkMessage LocationMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 94 页 | 74.98 KB | 1 年前3
WeRoBot 1.12.0 微信公众号开发框架文档WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 Session 开启/关闭 Session Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage LinkMessage LocationMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 103 页 | 74.49 KB | 1 年前3
WeRoBot 0.2.0 微信公众号开发框架文档index WeRoBot 0.2 documentation » WeRoBot WeRoBot是一个微信机器人框架,采用MIT协议发布。 Hello World 最简单的Hello World, 会给收到的每一条信息回复 Hello World import werobot robot = werobot.WeRoBot(token='tokenhere') @robot.handler Article 的构造函数的参数如下: name value title 标题 description 描述 img 图片链接 name value url 点击图片后跳转链接 注意,微信公众平台对图片链接有特殊的要求,详情可以在 消息接口使用指 南 [http://mp.weixin.qq.com/cgi-bin/readtemplate?t=wxm-callbackapi-doc&lang=zh_CN] reply = ArticlesReply(message=message) article = Article( title="WeRoBot", desription="WeRoBot是一个微信机器人框架", img="https://github.com/apple-touch-icon-144.png", url="https://github.com/whtsky/WeRoBot"0 码力 | 8 页 | 32.83 KB | 1 年前3
WeRoBot 1.1.0 微信公众号开发框架文档索引 模块 | 下一页 | WeRoBot 1.1.0 文档 » WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 回应有指定文本的消息 Session 开启/关闭 Session 修改 Handler 以使用 Session 可用的 Session Storage WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 Message Message 公共属性 TextMessage ImageMessage LinkMessage LocationMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 62 页 | 75.61 KB | 1 年前3
WeRoBot 1.2.0 微信公众号开发框架文档索引 模块 | 下一页 | WeRoBot 1.2.0 文档 » WeRoBot WeRoBot 是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 回应有指定文本的消息 Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage hello(message): return 'Hello World!' # 让服务器监听在 0.0.0.0:80 robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 消息处理 WeRoBot 会解析微信服务器发来的消息, 并将消息转换成成 Message 或者是 Event 。 Message0 码力 | 70 页 | 82.33 KB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













