Cilium的网络加速秘诀
理请求的结果,或者改变内核处理请求的流程。 极大提升了内核处理事件的效率。 截止 linux 5.14 版本,eBPF 有32种类型程序。而 cilium 主要使用了如下类型程序: • sched_cls 。cilium在内核 TC 处实现数据包转发、负载均衡、过滤 • xdp 。cilium在内核 XDP 处实现数据包的转发、负载均衡、过滤 • cgroup_sock_addr 。cilium在 cgroup 中实现对service解析 stack raw PREROUTING mangle PREROUTING nat PREROUTING tc ingress conntrack filter FORWARD mangle POSTROUING nat POSTROUING tc egress veth pod 2 veth woker node1 pod1 process kernel network stack tc ingress kernel network stack netfilter tc egress veth veth eth0 tc ingress tc egress redirect_peer redirect_neigh kernel network0 码力 | 14 页 | 11.97 MB | 1 年前3Apache ShardingSphere 中文文档 5.0.0-alpha
TM (事务管理器),RM (资源管理器) 和 TC (事务协调器)。TC 是一个独立部署的 服务,TM 和 RM 以 jar 包的方式同业务应用一同部署,它们同 TC 建立长连接,在整个事务生命周期内, 保持远程通信。TM 是全局事务的发起方,负责全局事务的开启,提交和回滚。RM 是全局事务的参与者, 负责分支事务的执行结果上报,并且通过 TC 的协调进行分支事务的提交和回滚。 Seata Seata 管理的分布式事务的典型生命周期: 1. TM 要求 TC 开始一个全新的全局事务。TC 生成一个代表该全局事务的 XID。 2. XID 贯穿于微服务的整个调用链。 3. 作为该 XID 对应到的 TC 下的全局事务的一部分,RM 注册本地事务。 4. TM 要求 TC 提交或回滚 XID 对应的全局事务。 5. TC 驱动 XID 对应的全局事务下的所有分支事务完成提交或回滚。 3 XAResource2.rollback Seata 柔性事务 整合 Seata AT 事务时,需要将 TM,RM 和 TC 的模型融入 Apache ShardingSphere 的分布式事务生态中。 在数据库资源上,Seata 通过对接 DataSource 接口,让 JDBC 操作可以同 TC 进行远程通信。同样,Apache ShardingSphere 也是面向 DataSource 接口,对用户配置的数据源进行聚合。因此,将0 码力 | 301 页 | 3.44 MB | 1 年前3阮一峰 《ECMAScript 6入门》 第三版
ES2015 标准,但有时也是泛指“下一代 JavaScript 语言”。 语法提案的批准流程 任何人都可以向标准委员会(又称 TC39 委员会)提案,要求修改语言标准。 一种新的语法从提案到变成正式标准,需要经历五个阶段。每个阶段的变动都需要 由 TC39 委员会批准。 Stage 0 - Strawman(展示阶段) Stage 1 - Proposal(征求意见阶段) Stage Finished(定案阶段) ECMAScript 6简介 8 一个提案只要能进入 Stage 2,就差不多肯定会包括在以后的正式标准里面。 ECMAScript 当前的所有提案,可以在 TC39 的官方网站Github.com/tc39/ecma262 查看。 本书的写作目标之一,是跟踪 ECMAScript 语言的最新进展,介绍5.1版本以后所有 的新语法。对于那些明确或很有希望,将要列入标准的新语法,都将予以介绍。 为什么 ES4 没有通过呢?因为这个版本太激进了,对 ES3 做了彻底升级,导致标 准委员会的一些成员不愿意接受。ECMA 的第39号技术专家委员会(Technical Committee 39,简称TC39)负责制订 ECMAScript 标准,成员包括 Microsoft、 Mozilla、Google 等大公司。 2007年10月,ECMAScript 4.0 版草案发布,本来预计次年8月发布正式版本。但0 码力 | 679 页 | 2.66 MB | 1 年前34 seata-golang 分布式事务框架
connCtx 是否有值来决定是否和 tc 交互,报 告分⽀事务的执⾏状态。如果执⾏ Commit,connCtx 有值则把 sqlUndoItemsBuffer 中的 undoLog 和业务 数据⼀起提交到数据库,然后报告 tc 事务分⽀提交的状态(成功还是失败),否则执⾏正常的提交。如果 执⾏ Rollback,connCtx 有值则回滚然后向 tc 报告分⽀执⾏失败,tc 会根据这个状态回滚整个全局事务,0 码力 | 14 页 | 3.23 MB | 1 年前3openEuler 21.09 技术白皮书
Technical Committee The openEuler Technical Committee (TC) is the technical leader of the openEuler community. The main responsibilities of the TC are as follows: 1. Makes the final decision on technical technical influence of the community. Conference Organization Official conference (public): The TC holds a public online discussion at 10:00 a.m. (GMT+8) on alternating Wednesdays. Details on how to To report explicit or inappropriate behaviors, you can contact the openEuler Technical Committee at: tc@openeuler.org. Commitment of Contributors To maintain an open and professional environment, the openEuler0 码力 | 36 页 | 3.40 MB | 1 年前3绕过conntrack,使用eBPF增强 IPVS优化K8s网络性能
eBPF brief • Write C • Compile into eBPF assembly code • Inject to kernel • Attach to network tc hooks • Triggered by ingress/egress packets IPVS bypass conntrack • Why IPVS depends on conntrack eBPF • eBPF program is easy to deploy • How to do SNAT in eBPF • Do SNAT in TC egress • Do reverse SNAT in TC ingress Tc egress Hit eBPF map? Does SNAT nic nic Y N • How IPVS talks with eBPF0 码力 | 24 页 | 1.90 MB | 1 年前3openEuler 21.03 技术白皮书
Technical Committee The openEuler Technical Committee (TC) is the technical leader of the openEuler community. The main responsibilities of the TC are as follows: 1. Makes the final decision on technical technical influence of the community. Conference Organization Official conference (public): The TC holds a public online discussion at 10:00 a.m. (GMT+8) on alternating Wednesdays. Details on how To report explicit or inappropriate behaviors, you can contact the openEuler Technical Committee at: tc@openeuler.org. Commitment of Contributors To maintain an open and professional environment, the openEuler0 码力 | 21 页 | 948.66 KB | 1 年前3make & Makefile
但仅部分支持 GNU make 的功能 . Makefile for Turbo c . . CFLAGS = -v -O INCLUDE = -I\tc\include;. LIB = -L\tc\lib;\tc\tools CC = \tc\tcc MODEL = -mc .c.obj: $(CC) $(INCLUDE) -c $(CFLAGS) $(MODEL) $*.c OBJ = lex0 码力 | 36 页 | 975.98 KB | 1 年前3openEuler 21.09 技术白皮书
议召开,协调社区各个机构开展工作。 2. 编写社区季度、年度的工作报告,经理事会批准后对外发布。 技术委员会 openEuler 技术委员会(Technical Committee,以下和 TC 互换使用)是 openEuler 社区的技术领导机构。 技术委员会的主要职责如下 : 1. 技术委员会拥有技术决策的最终裁决权。 2. 决策社区技术的发展愿景和方向。 3. 决策社区 领域技术创新,保证社区具有持续的技术竞争力。 6. 导社区建立原创性开源项目,持续构建社区技术影响力。 openEuler 21.09 技术白皮书 27 组织会议 公开的会议时间:当前 TC 在北京时间,每双周周三的上午 10:00 召开公开的例行线上讨论会议。 具体会议参会方式,会提前一天在邮件列表中讨论确定。 欢迎任何感兴趣的开发者参加旁听 SIG 专注于一个领域的持久和开 社区贡献。 社区行为准则 openEuelr 社区遵守开源社区《贡献者公约》V1.4 中规定的行为守则,请参考 V1.4 版本。 如需举报侮辱、骚扰或其他不可接受的行为,您可以发送邮件至 tc@openeuler.org,联系 openEuler 技术委员会处理。 贡献者们的承诺 为建设开放友好的环境,我们贡献者和维护者承诺:不论年龄、体型、身体健全与否、民族、经验水平、教育程度、社会地位、0 码力 | 35 页 | 3.72 MB | 1 年前3openEuler 21.03 技术白皮书
议召开,协调社区各个机构开展工作。 2. 编写社区季度、年度的工作报告,经理事会批准后对外发布。 技术委员会 openEuler 技术委员会(Technical Committee,以下和 TC 互换使用)是 openEuler 社区的技术领导机构。 技术委员会的主要职责如下 : 1. 技术委员会拥有技术决策的最终裁决权。 2. 决策社区技术的发展愿景和方向。 3. 决策社区 参与社区贡献。 社区行为准则 openEuelr 社区遵守开源社区《贡献者公约》V1.4 中规定的行为守则,请参考 V1.4 版本。 如需举报侮辱、骚扰或其他不可接受的行为,您可以发送邮件至 tc@openeuler.org,联系 openEuler 技术委员会处理。 贡献者们的承诺 为建设开放友好的环境,我们贡献者和维护者承诺:不论年龄、体型、身体健全与否、民族、经验水平、教育程度、社会地位、 贯彻落实 可以致信 tc@openeuler.org,向项目团队举报滥用、骚扰及不当行为。 4. 落实社区日常开发工作,保证 openEuler 操作系统版本高质量发布。 5. 引导社区在体系架构、内核、虚拟化、云原生、安全等领域技术创新,保证社区具有持续的技术竞争力。 6. 引导社区建立原创性开源项目,持续构建社区技术影响力。 组织会议 公开的会议时间:当前 TC 在北京时间,每双周周三的上午0 码力 | 18 页 | 1.30 MB | 1 年前3
共 76 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8