SOFAMesh的通用协议扩展## SOFA MESH 的通用协议扩展 邵俊雄(熊啸) 2018.08.25 ## AGENDA • SOFA MESH 介绍 • SERVICE MESH 落地的问题 • SOFA MESH 的通用落地方案 • DNS 服务寻址方案 • X-PROTOCOL 通用协议 · 问答 ## SOFA MESH • 从 ISTIO 克隆并保持同步更新 - 使用 SOFA-MOSN 代替 Controller Pattern 通过 CRD 扩展新的能力 ## MESH 落地碰到的问题 • 客户端服务发现与负载均衡无法与 ISTIO 一起工作 • ENVOY 不支持微服务使用的通信协议 - RPC 服务使用的接口,方法,参数语义无法匹配 ISTIO 的路由模型 • 一个应用上部署了多个 RPC 服务,每个服务有自己的版本 ## I STIO 控制平面路由的抽象模型 VirtualHost 服务的路由规则 XDS 适配 • 开发 DUBBO 协议支持 ## SOFA MESH 的统一解决方案 • 采用 Kubernetes Native 方式落地微服务应用 • 使用 INTERFACE 作为 DNS 来寻址服务 • 开发一个通用协议处理框架 - 避免为不同的微服务框架修改 PILOT 代码 • 通过插件的方式按需支持新的协议 • 对应用代码无侵入性 • 为微服务框架提供轻量化客户端0 码力 | 28 页 | 4.73 MB | 1 年前3
Greenplum分布式事务和两阶段提交协议## Greenplum分布式事务 和两阶段提交协议 钉钉直播 | 10月21日 20:00 - 21:00 #### Greenplum中文社区 https://cn.greenplum.org 博文·资料·文档·项目 ## 全新的问答论坛 #### https://cn.greenplum.org/askgp ## GREENPLUM DATABASE $ ^{®} $  ## Apache孵化器 s/conduct.html ## 许可协议是关键 • 起源 — 当代码被创造出来时,需要建立许可协议 • 商标 — 不可以与已经存在的名称有冲突 - 软件许可 — 现有代码,测试,文档需要知识产权的拥有者需要将软件许可赋予Apache • 贡献者协议 — 在Apache的贡献需要遵循贡献者协议: ■ 版权,专利,分发/修改 ## Apache协议 • 万能捐献者 · 务实 - 免费用于商业和非商业用途 免费用于商业和非商业用途 • 兼容其他开源协议 ## 协议 • A 类 - 可以依赖并包括在发布中 ■ MIT, 2 和 3 条款 BSD • B 类 - 可以依赖并且可能包括 ■ 通用开发和发布协议 (CDDL), Eclipse公共协议 (EPL), Mozilla公共协议 (MPL), 知识共享许可协议 (CC-A) • X 类 - 不可以依赖或者包括在发行版中 ■ GPL, LGPL0 码力 | 43 页 | 4.89 MB | 2 年前3
基于amqp实现的golang消息队列MaxQ# 基于amqp实现的golang消息队列 MaxQ 2017-07-01 张培培 饿了么-基础框架组 ## 内容 1. 队列 2. IPC消息队列 3. AMQP协议 4. MaxQ架构模型 5. MaxQ相关特性 6. 使用场景和案例 ### 1. 队列  跟消息队列相比,有哪些共性? ### 3. AMQP(Advanced Message Queuing Protocol)协议 • 七层应用协议 • 定义Broker实现 • 生产消费轻耦合 • 生产消费状态记录 • Push/Pull消费模型 • 消费者流控 • 事务支持  - 按照协议spec自动生成frame encode/decode • Exchange接口化 • Queue接口化——MaxQ集群 ## MaxQ - 生产实现架构 GreenplumIstio七层协议扩展服务发现流量管理模型xDS协议Rust HTTP协议栈终端通信场景Ylong HTTP客户端库异步IO状态机IBC协议跨链互操作Solana合约链Rust语言IBC协议实现websocketsasyncioWebSocket协议HTTP协议TLS/SSLHeaders类异步编程扩展控制面数据面网络层Apache之道孵化项目贡献者协议社区发展许可协议MaxQAMQP协议消息队列GolangZookeeper













