Rust HTTP 协议栈在终端通信场景的实践 - 胡凯CONFE 2023 Rust HTTP 协议栈在终端通信场景的实践 胡凯 hukai45@huaweicom 华为 公共开发部 嵌入式软件能力中心 ‖ 目录 @ HTTP 协议介绍 什么是 HTTP 协议? @ Rust与HTTP协议 介绍 Rust 与 HTTP 协议栈结合的业界实现。 @ 终端 HTTP 通信场景浅析 终端场景下 HTTP 协议的主要使用场景,以及需要思考的问题。 和1 Part 01 HTTP 协议介绍 什么是 HTTP 协议? Rust China Conf 2022 - 2023, Shanghai China HTTP 协议介绍 HTTP 协议,即超文本传输协议 (HyperText Transfer Protocol) 是一种用于分布式、协作式和超媒体 信息系统的应用层协议。 HTTP 是一个客户端〈用户) 和服务端 (网站) 之间请求和应答的标准。 Server ust China Conf 2022 - 20: HTTP 协议介绍 HTTP 协议主要具有以下特点: WO WO 支持客户/服务器模式。 简单快速: 客户向服务器请求服务时,只需传送 请求方法、路径和请求头。HTTP 协议简单、HTTP 服务器的程序规模小,因而通信速度很快。 灵活: HTTP 支持传输任意类型的数据对象。 无连接:0 码力 | 26 页 | 1.25 MB | 2 年前3
IPC性能极致优化方案-RPAL落地实践[Image](/uploads/documents/0/9/9/d/099dbb5037c4c50541f0ff9d02a06a91/p2_1.jpg) 方案诞生的背景 01 全进程地址空间共享与保护 02 用户态进程切换 03 高效的Go Event Poller 04 RPC框架Kitex集成 05 性能收益与业务展望 06 ## 第一部分 ## 方案诞生的背景 ## 方案诞生的背景 需要做到跨进程的虚拟地址空间共享,通过传递指针来传递一切数据。 基于以上问题,我们最终引入了 RPAL(Run Process As Library)方案,基于跨进程虚拟地址共享,复用 epoII 网络模型,实现了纯用户态的事件轮询和无拷贝的指针读写接口。 ## 第二部分 ## 全进程地址空间共享与保护 ## 全进程地址空间 The quick brown fox jumps over the lazy dog. Register),其长度为 32 bits,每 2-bit 对应页表中的一个 Protection Key,分别为 WD 位和 AD 位,用于控制所在域的内存访问权限。 ## 第三部分 ## 用户态进程切换 ## 用户态进程切换 User Stack Sender 传统线程切换 switch thread Receiver Kernel Stack Sender Receiver rpal线程切换:0 码力 | 39 页 | 2.98 MB | 2 年前3
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
Kubernetes全栈容器技术剖析## 华为云 技术 私享会 ## 华为云技术 私享会 ## Kubernetes全栈容器技术剖析 陈弘 华为云PaaS解决方案架构师 ## 华为云应用服务:让企业应用上云更简单,运行更高效 应用 开发测试 PaaS 统一编排 IaaS 云性能测试CPTS 软件开发服务 DevCloud 微服务引擎 CSE 应用编排引擎 AOS App/PaaS/IaaS 资源一键式创建 .jpg) Scheduled Containers Kubernetes Node Container Manager Docker Managed Base OS kubectl(用户命令)  容器编排引擎提供资源的管理 - Kubernetes(简称K8S)是主流的容器编排部署管理平台。它基于Google Borg商用系统开发,具有轻量级,可移植性,高灵活性等特点。 CNCF是围绕Kubernetes构建容器软件全栈的基金会组织,提供Kubernetes和周边软件的技术孵化和服务提供商资质认证 ## 容器技术迅猛发展,Kubernetes主宰容器编排调度引擎市场 2017年10月,Docker公司宣布支持Kubernetes0 码力 | 26 页 | 3.29 MB | 2 年前3
微服务的设计原则与⽣态系统 - 王磊Microservices – the new architectural style Martin Fowler, Mar 2014 - 微服务架构是一种架构模式,将单体应用划分成一组小的服务,服务之间互相协作,为用户提供最终价值 · 每个服务运行在其独立的进程中,服务间采用轻量级的通信机制协作(通常是基于RESTful API) - 每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等 康威定律:组织产生的设计成果等同于组织内的协作结构  用户体验团队   Paymen: Service Search Service 数据库作为集成点 ## 去“中心化” - 业务持有数据 会话服务 ↑ 购物车 ↑ 产品服务 ↑ 用户会话 购物车  产品数据  冰种黄加绿花手链 可惜了。我原来有2条子手链。就我头像上的。留下一条来把花编上去。悔了。所以这个是冰种黄支持复鉴啊。。。 可出可不出。留下来的珠子。编手链里面。卖 混合栈  Native组件 ## 视频和动画 [Image](/uploads/documents/f/2/4/d/f24d6eb679fc89b96a162bb87c0a122e/p11_2.jpg) 动画 ## 关键问题解决 混合开发:工程管理和混合栈管理 外接纹理播放视频 图片缓存优化 无反射JSON序列化 私有PUB库、阿里生态适配 ## Flutter和Native性能简单比较  ## i5ting:一个开源爱好者 StuQ明星讲师 Node.js布道者 空弦科技CTO Cnodejs管理员   ## 目录 • Part 1:为什么选择 Node.js? • Part 2:Node.js 快速开发实践 • Part 3:全栈展望 • Part 4:如何全栈? ### Part 1: 为什么选择 Node.js? 空弦科技做的是基于云仓储的 SaaS 服务,给中小卖家提供服务,核心系统是进销存、订单池、WMS。 “JavaScript 集成mongoosedao,快速写crud等dao接口 • 自带用户管理 • 使用jsonwebtoken做用户鉴权 - 支持migrate测试 • 支持mocha测试 • 默认集成res.api,便于写接口 • 集成supervisor,代码变动,自动重载 • gulp自动监控文件变动,跑测试 • gulp routes生成路由说明 • 使用log4js记录日志 技术栈 base2(mirco kernel)0 码力 | 50 页 | 1.35 MB | 2 年前3
Greenplum分布式事务和两阶段提交协议## Greenplum分布式事务 和两阶段提交协议 钉钉直播 | 10月21日 20:00 - 21:00 #### Greenplum中文社区 https://cn.greenplum.org 博文·资料·文档·项目 ## 全新的问答论坛 #### https://cn.greenplum.org/askgp ## GREENPLUM DATABASE $ ^{®} $ GreenplumIstio七层协议扩展服务发现流量管理模型xDS协议IBC协议跨链互操作Solana合约链Rust语言IBC协议实现













