Rust HTTP 协议栈在终端通信场景的实践 - 胡凯第三届中国Rust开发者大会 Rust HTTP 协议栈在终端通信场景的实践 胡凯 hukai45@huawei.com 华为 公共开发部 嵌入式软件能力中心 什么是 HTTP 协议? ⚫ HTTP 协议介绍 目录 终端场景下 HTTP 协议的主要使用场景,以及需要思考的问题。 ⚫ 终端 HTTP 通信场景浅析 我们当前结合 Rust 和终端通信场景的实践的简单介绍。 ⚫ Rust Rust 与 HTTP 协议栈结合的业界实现。 ⚫ Rust 与 HTTP 协议 HTTP 协议介绍 Part 01 什么是 HTTP 协议? Rust China Conf 2022 – 2023, Shanghai, China Rust China Conf 2022 – 2023, Shanghai, China HTTP 协议介绍 HTTP 协议,即超文本传输协议(HyperText 和超媒体 信息系统的应用层协议。 HTTP 是一个客户端(用户)和服务端(网站)之间请求和应答的标准。 Rust China Conf 2022 – 2023, Shanghai, China HTTP 协议介绍 HTTP 协议主要具有以下特点: ✓ 支持客户/服务器模式。 ✓ 简单快速:客户向服务器请求服务时,只需传送 请求方法、路径和请求头。HTTP 协议简单、HTTP 服务器的程序规模小,因而通信速度很快。0 码力 | 26 页 | 1.25 MB | 1 年前3
在Solana合约链实现IBC协议跨链互操作 - 苏胤榕@DaviRain 在Solana合约链 实现IBC协议跨链互操作 简单介绍下IBC协议是什么,及其生态 简介 > 介绍IBC协议和其在跨链互操作中的作用 IBC协议中的角色和参与者 1. 客户端 2. 连接 3. 通道 4. 包 4. 中继器 解释为什么选择在Rust合约链中实现IBC协议 - IBC协议的核心已经被协议核心团队用Rust语言实现。 - 对于本身就是 对于本身就是使用Rust语言作为智能合约开发的区块链 平台来说,支持集成支持IBC协议会很方便。 - 这里优先构想了在Solana链上实现IBC协议,因为 Solana平台本身极 低的gas消耗,很适合我现在构思 的这套实现方案。(后面会做解释) 引入Solana作为示例平台 - Solana极低的Gas花销。 - Anchor合约开发框架,大大降低了Rust合 约开发者在Solana上开发智能合约的难度。 - 以及本人对Solana平台的喜欢,优先考虑 了Solana平台,但是这套方案是可以推广到 任何的Rust智能合约平台的。 大致讲解下IBC协议的原理, 以及参与整个IBC协议活动的不同决策 IBC协议概述> 详细介绍IBC协议的基本概念和原理 Connection创建原理 Connection创建OpenInit Connection创建OpenTry Connection创建OpenAck0 码力 | 29 页 | 3.05 MB | 1 年前3
Nacos架构&原理
简介 13 Nacos 架构 17 Nacos 总体设计 17 Nacos 架构 17 Nacos 配置模型 21 Nacos 内核设计 28 Nacos ⼀致性协议 28 Nacos 自研 Distro 协议 38 Nacos 通信通道 42 Nacos 寻址机制 56 Nacos 服务发现模块 63 Nacos 注册中心的设计原理 63 Nacos 注册中心服务数据模型 规模:十万级服务/配置,百万级连接,具备强大扩展性。 15 > 简介 Nacos 生态 Nacos 几乎支持所有主流语言,其中 Java/Golang/Python 已经支持 Nacos 2.0 长链接协议,能 最大限度发挥 Nacos 性能。阿里微服务 DNS(Dubbo+Nacos+Spring-cloud-alibaba/Seata/ Sentinel)最佳实践,是 Java 微服务生态最佳解决方案;除此之外,Nacos 接口,简单易用,方便多语言集成。 Console:易用控制台,做服务管理、配置管理等操作。 SDK:多语言 SDK,目前几乎支持所有主流编程语言。 Agent:Sidecar 模式运行,通过标准 DNS 协议与业务解耦。 CLI:命令行对产品进行轻量化管理,像 git ⼀样好用。 业务层 服务管理:实现服务 CRUD,域名 CRUD,服务健康状态检查,服务权重管理等功能。 配置管理:实现配置管0 码力 | 326 页 | 12.83 MB | 10 月前3
声明式自愈系统——高可用分布式系统的设计之道-王昕处理消息的服务节点可以随机选择 不必处理数据复制和同步的问题 系统容量和高可用能力可以同步提升 服务节点可以随意迁移,不必固定 IP 和存储 有状态分布式系统的高可用问题 一致性 可用性 分区容错性 Paxos Raft 2PC Gossip Ø 处理请求需要特定节点 Ø 必须要考虑数据备份和同步 的问题 Ø 容量扩展和高可用需要不同 解决方案 Ø 服务节点不能随便迁移 CAP Is Not 要在领域内 自己实现 如何设计好状态机和自愈协议? Writing Correct Software Is Hard! Math and Thinking Can Help Us! Ø TLA+ 是用来给(软件或硬件)系统建模的语言 Ø TLA+ 强调排除特定编程语言(软件或硬件)的影响验证系 统设计 Ø TLA+ 由 Paxos 协议的发明人 Leslie Lamport 发明 使用0 码力 | 44 页 | 2.47 MB | 1 年前3
从百度文件系统看大型分布式系统设计中的定式与创新容忍网络隔离是必须的 - CP、AP Quorum机制 • Quorum写(NWR) - Write 写成功W副本 - Read 读R副本 - W+R>N,就不会丢失更新 • 一致性协议 - Paxos - Raft CAP到CAD的演变 • 必须容忍网络隔离 - CAP->CA • 跨地域的延迟 - CA->CAD/CAL • 多数情况下我们更重视可用性 - CAD->CD0 码力 | 24 页 | 937.45 KB | 1 年前3
FISCO BCOS 2.1.0 中文文档潮。 在此背景下,区块链技术在2008年萌芽成型,并逐渐发展成熟。通过区块链 技术解决方案中的共识机制、分布式账本、加密算法、智能合约、点对点通 信、分布式计算架构、分布式存储、隐私保护算法、跨链协议等技术模块, 可以让商业模式中的参与各方实现了地位对等和互信合作,从而推动了从“信 息互联网”到“信任互联网”的时代进步,也令商业模式全面走向“分布式”成为 可能。 新型的“分布式商业”模式,按微众银行整理给出的定义,是一种由多个具有 密钥管理服务 2.0版本对落盘加密进行了重塑升级,开启落盘加密功能时,依赖KeyManager 服务进行密钥管理,安全性更强。 KeyManager在Github开源发布,节点与KeyManager的交互协议是开放的,支 持机构设计实现符合自身密钥管理规范的KeyManager服务,比如采用硬件加 密机技术。 该部分更详细的文档请参考使用文档和设计文档 准入控制 2.0版本对准入机制进行了重塑升级,包括网络准入机制和群组准入机制,在 com/FISCO-BCOS/FISCO- BCOS/releases/tag/v1.5.0-pre-release] 查看节点和数据版本 查看节点二进制版本:./fisco-bcos --version 数据格式和通信协议的版本:通过配置文件 config.ini的 supported_version配置项 获取 v2.1.0 [https://github.com/FISCO- BCOS/FISCO-BCOS/releases/tag/v20 码力 | 1058 页 | 740.85 KB | 1 年前3
微服务架构实践-唯品会helloMsg) } } IDL����Thrift�gRPC������� XML������dubbo���Spring Cloud�� � 14 ���� N 服务通p协议OH552、5C2、U(2等P N 数据f输方式O同步、异步P N 数据序列化OJ41N序列化、2B序列化等P 15 ����/�� Registry! Client! Service AP����/� ����! ��! ���! ���! ���! CP����/� ����! ���! ��! ��! ��! �����! -! ��! ��! ��! �����! -! paxos! raft! raft! 28 ����������� • ������������������ ������������������ ������������������ �������0 码力 | 120 页 | 82.16 MB | 1 年前3
FISCO BCOS 2.3.0 中文文档潮。 在此背景下,区块链技术在2008年萌芽成型,并逐渐发展成熟。通过区块链 技术解决方案中的共识机制、分布式账本、加密算法、智能合约、点对点通 信、分布式计算架构、分布式存储、隐私保护算法、跨链协议等技术模块, 可以让商业模式中的参与各方实现了地位对等和互信合作,从而推动了从“信 息互联网”到“信任互联网”的时代进步,也令商业模式全面走向“分布式”成为 可能。 新型的“分布式商业”模式,按微众银行整理给出的定义,是一种由多个具有 密钥管理服务 2.0版本对落盘加密进行了重塑升级,开启落盘加密功能时,依赖KeyManager 服务进行密钥管理,安全性更强。 KeyManager在Github开源发布,节点与KeyManager的交互协议是开放的,支 持机构设计实现符合自身密钥管理规范的KeyManager服务,比如采用硬件加 密机技术。 该部分更详细的文档请参考使用文档和设计文档 准入控制 2.0版本对准入机制进行了重塑升级,包括网络准入机制和群组准入机制,在 com/FISCO-BCOS/FISCO- BCOS/releases/tag/v1.5.0-pre-release] 查看节点和数据版本 查看节点二进制版本:./fisco-bcos --version 数据格式和通信协议的版本:通过配置文件 config.ini的 supported_version配置项 获取 v2.3.0 [https://github.com/FISCO- BCOS/FISCO-BCOS/releases/tag/v20 码力 | 1227 页 | 10.79 MB | 1 年前3
FISCO BCOS 2.2.0 中文文档潮。 在此背景下,区块链技术在2008年萌芽成型,并逐渐发展成熟。通过区块链 技术解决方案中的共识机制、分布式账本、加密算法、智能合约、点对点通 信、分布式计算架构、分布式存储、隐私保护算法、跨链协议等技术模块, 可以让商业模式中的参与各方实现了地位对等和互信合作,从而推动了从“信 息互联网”到“信任互联网”的时代进步,也令商业模式全面走向“分布式”成为 可能。 新型的“分布式商业”模式,按微众银行整理给出的定义,是一种由多个具有 密钥管理服务 2.0版本对落盘加密进行了重塑升级,开启落盘加密功能时,依赖KeyManager 服务进行密钥管理,安全性更强。 KeyManager在Github开源发布,节点与KeyManager的交互协议是开放的,支 持机构设计实现符合自身密钥管理规范的KeyManager服务,比如采用硬件加 密机技术。 该部分更详细的文档请参考使用文档和设计文档 准入控制 2.0版本对准入机制进行了重塑升级,包括网络准入机制和群组准入机制,在 com/FISCO-BCOS/FISCO- BCOS/releases/tag/v1.5.0-pre-release] 查看节点和数据版本 查看节点二进制版本:./fisco-bcos --version 数据格式和通信协议的版本:通过配置文件 config.ini的 supported_version配置项 获取 v2.2.0 [https://github.com/FISCO- BCOS/FISCO-BCOS/releases/tag/v20 码力 | 1156 页 | 10.03 MB | 1 年前3
FISCO BCOS 2.4.0 中文文档流,最大化并行执行区块内的交易。 交易生命周期的异步并行处理:共识、同步、落盘等各个环节的异步化 以及并行处理。 安全性 考虑到联盟链的高安全性需求,除了节点之间、节点与客户端之间通信采用 TLS安全协议外,FISCO BCOS还实现了一整套安全解决方案: 网络准入机制:限制节点加入、退出联盟链,可将指定群组的作恶节点 从群组中删除,保障了系统安全性。 黑白名单机制:每个群组仅可接收相应群组的消息,保证群组间网络通 断开网络连接,保障了系 统安全。 权限管理机制:基于分布式存储权限控制机制,灵活、细粒度地控制外 部账户部署合约和创建、插入、删除和更新用户表的权限。 支持国密算法:支持国密加密、签名算法和国密通信协议。 落盘加密方案:支持加密节点落盘数据,保障链上数据的机密性。 密钥管理方案:在落盘加密方案的基础上,采用KeyManager服务管理节 点密钥,安全性更强。 同态加密、群环签名:链上提供了同态加密、群环签名接口,用于满足 于区块链的分布式多中心的技术解决方案,提供分布式实体身份标识及 管理、可信数据交换协议等一系列的基础层与应用接口,可实现实体对 象(人或物)数据的安全授权与交换。 分布式事件驱动架构WeEvent [https://github.com/webankfintech/weevent]:实现了 可信、可靠、高效的跨机构、跨平台事件通知机制。在不改变已有商业 系统的开发语言、接入协议的情况下,实现跨机构、跨平台的事件通知 与处理。 跨链协作方案WeCross0 码力 | 1314 页 | 11.21 MB | 1 年前3
共 298 条
- 1
- 2
- 3
- 4
- 5
- 6
- 30













