Rust API可靠性分析与验证CHINA CONF 2021 - 2022 第二届中国Rust开发者大会 2022.07.31 Online # Rust API可靠性分析与验证 姜剑峰 ## 主题内容 • Rust第三方库API可靠性现状 • 现用方法的局限性 - 基于程序合成+模糊测试的可靠性分析方法 ## 自我简介 • 本(2019)硕(2022)毕业于复旦大学 - 目前在蚂蚁集团安全计算部门开发应用于机密计算的Rust系统软件 ## Rust API 可靠性 现有的机制是否足够呢? - unsafe代码没有破坏内存安全性 • no memory leakage • panic free 在任何合法使用API的情况下 • 所有静态检查提供的保证都应该被满足(不应该被unsafe所破坏) - 所有动态检查都不应该被违背(可以被安全的移除),除非panic是一种允许的行为 ## 现有的可靠性分析方法及其局限性 模糊测试(afl 模糊测试用例程序 ## 结论以及未来的发展 1. Rust优秀的语言设计避免了大量可能发生的潜在错误 2. 目前Rust程序合成的难点在于unsafe代码,泛型与trait,宏等 3. 保障Rust程序的可靠性仍然需要各种程序分析以及软件测试的手段 ## Thanks ## Rust China Conf 2021-2022 – Online, China0 码力 | 13 页 | 1.68 MB | 2 年前3
Falcon v3.1.1-b3 Documentation0 码力 | 540 页 | 476.61 KB | 2 年前3
Apache RocketMQ 介绍许可协议:署名-相同方式共享4.0国际(CC BY-SA 4.0) # Apache RocketMQ 介绍 ## 概要 Apache RocketMQ是一个分布式消息传递和流媒体平台,具有低延迟,高性能和可靠性,万亿级容和灵活的可伸缩性。它的一个重要特性是支持非日志类型的可靠消息传送,非常适合运用在金融和电商务领域。目前他是Apache社区的顶级项目,在全球有超过100家公司在其业务中使用RocketMQ开源版本。 IO模块遇到了瓶颈,几经努力但改善成果不。这时正值Kafka流行,于是引起了阿里巴巴开发团队的注意,对kafka的无限消息堆积,高效持久化度等特性非常赞赏。但不幸的是,Kafka不能满足他们的要求,特别是在低延迟和高可靠性方面。在种情况下,阿里巴巴决定发明一个新的消息传递引擎来处理更广泛的用例集,从传统的发布/订阅方到大批量实时零损失容忍交易系统。 ## 里程碑 2012年,阿里巴巴开始开发RocketMQ,经历了数次双11核心交易链路检验。 Consumer也由用户部署,支持PUSH和PULL两种消费模式,支持集群消费和广播消息,提供实时的息订阅机制,满足大多数消费场景。 ## 特点 ● RocketMQ支持异步实时刷盘,同步刷盘,同步复制,异步复制。具有高可靠性。不会因为操作系的崩溃而导致数据丢失。 ● RocketMQ经过一系列的实践和优化,处理速度从最初的10,000TPS到目前已经超过50,000TPS。纯比较TPS的话虽然还不如Kafka的百万级0 码力 | 5 页 | 375.48 KB | 2 年前3
openEuler 22.03-LTS 技术白皮书etMem:新增用户态 swap 功能,策略配置淘汰的冷内存交换到用户态存储,用户无感知,性能优于内核态 swap。 - 内存 RAS 增强:内存可靠性分级技术,可以指定内核、关键进程等对内存故障敏感的数据优先使用高可靠内存,降低宕机率,提升可靠性(技术预览特性)。 ## 夯实云化基座 容器操作系统 KubeOS:云原生场景,实现 OS 容器化部署、运维,提供与业务容器一致的基于 K8s 的管理体验。 供用户空间的可信执行环境,通过一组新的指令集扩展与访问控制机制,实现不同程序间的隔离运行,保障用户关键代码和数据的机密性与完整性不受恶意软件的破坏。 - 技术预览特性: a) 内存可靠性分级技术:通过对不同可靠性等级的内存分级管理,可以支持内核、关键进程、内存文件系统、文件缓存使用高可靠内存,避免内存多 bit 故障引起内核复位。 b) 动态大页技术:支持对大页进行拆分和合并的功能,从而使得绑定到 ## 内存可靠性分级 服务器支持的内存增多时,内存硬件故障将成为不可忽视的存在。内存不可纠正的多 Bit 错误,如果影响到操作系统内核、关键业务进程,则会导致系统复位,导致业务较长时间的中断。 另一方面,随着硬件技术的发展,服务器系统中可能会配置不同可靠性规格的内存,比如 HMB、NVDIMM 以及 Address Range Mirror。即系统中可以同时存在可靠性更高的内存和可靠性较低的内存0 码力 | 17 页 | 6.52 MB | 1 年前3
基于amqp实现的golang消息队列MaxQd/6b0d34642f07cbdbaf3b54e04ecb40a1/p3_1.jpg) 跟消息队列相比,有哪些共性? • 生产者消费者 • 通信方式 • 存储方式 • 堆积能力 消息可靠性 • 生产消费关系 • Pull/Push ### 2. IPC消息队列  1) Publishing可靠性 -> Confirm 2) 消息Routing可靠性 -> Publish mandatory mandatory 3) Consuming可靠性 -> Ack 4) Persisting可靠性 -> RAID1 5) 分布式下的可靠性 -> Slave Queue ## 容错性 zookeeper不可用 0 码力 | 22 页 | 1.45 MB | 2 年前3
为何选择VMware?0 版” 产品,既没有在生产数据中心中进行验证,也缺乏提供客户亟需的可靠性、可扩展性和性能所需的核心功能。 因此,虽然其他供应商试图在以下方面跟上 VMware 的步伐,但是 VMware 即将推出的版本会将 ESX 提升为更高级别的企业级虚拟化管理程序,能够进一步巩固我们的领先地位,并确保我们的客户获得无与伦比的性能和可靠性。 表 1. 各虚拟化管理程序的比较 |虚拟化管理程序属性|VMware Hyper-V、Xen 和 KVM:代码太多 就虚拟化而言,越小越好。虚拟化占用的空间越小,外部威胁的攻击面就越小,因此可以极大地降低所需的补丁程序的数量,而这不仅可以提高产品的可靠性,而且还能提高数据中心的稳定性。 VMware 一贯致力于提高虚拟化可靠性,开发了业界最小的虚拟化管理程序 VMware ESXi,这同时也是第一个完整的 x86/x64 虚拟化体系结构,无需依赖通用操作系统。VMware ESXi 仅仅占用 器操作系统通常需要应用的所有补丁程序,同时也消除了与此类通用操作系统相关的风险。Microsoft Hyper-V、Xen 和 KVM 采用的体系结构都依赖于通用服务器操作系统,其虚拟化管理程序的可靠性与相应的通用服务器操作系统密切相关。 Microsoft 试图按照 VMware 的方向缩小其虚拟平台的受攻击面,提供了 Windows Server Core (Windows Server 20080 码力 | 34 页 | 862.76 KB | 2 年前3
阿里云云数据库 Redis 版 产品简介## 简介 标准版-单副本是云数据库 Redis 推出的一种新系列,采用单个数据库节点部署架构。与双副本版本相比,它只包含一个节点,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景使用。  ## 重新拉起一个 Redis 进程(没有数据),当节点故障业务自动切换完成后,应用程序需要将数据重新预热,以免对后端数据库产生访问压力冲击。 注意:由于单副本模式不能提供数据可靠性,节点故障后需要业务进行预热,如果是对数据可靠性要求较高的敏感性业务,不建议使用单副本版,可选用双副本高可用版。 对 Redis 协议兼容性要求较高的业务 标准版完全兼容 Redis 协议,业务可以平滑迁移。 ## 单个 证业务平稳运行。  ## 特点 可靠性 服务可靠 采用双机主备架构,主备节点位于不同物理机。主节点对外提供访问,用户可通过 Redis 命令行和通用客户端进行数据的增删改查操作。当主节点出现故障,自研的 HA 系统会自动进行主备切换,保证业务平稳运行。0 码力 | 33 页 | 1.88 MB | 2 年前3
Ceph分布式存储实战 (云计算与虚拟化技术丛书)h的广大研究者和爱好者做了一件很有意义的事情。相信本书一定能够成为Ceph发展的强力助推器! ——温涛,新华三集团(H3C公司)ONEStor产品研发负责人 Ceph因其先进的设计思想,良好的可靠性、可扩展性,成为存储领域的研究热点,被誉为“存储的未来”,得到广泛的部署。由Ceph中国社区组织编写的这本书是国内第一本系统介绍Ceph的书籍,全书从Ceph的历史、架构、原理到部署、运维、应用案例 后,这些技术的特点不再局限于单个设备的性能,而是具备“横向扩展”能力。我们暂且认为这是分布式存储本质的体现。 分布式存储解决了数据体量问题,对应用程序提供标准统一的访问接入,既能提升数据安全性和可靠性,又能提高存储整体容量和性能。可以预见,分布式存储是大规模存储的一个实现方向。分布式存储广泛地应用于航天、航空、石油、科研、政务、医疗、视频等高性能计 算、云计算和大数据处理领域。目前行业应用对分布 储和对象存储提供了统一的软件定义解决方案。Ceph旨在提供一个扩展性强大、性能优越且无单点故障的分布式存储系统。从一开始,Ceph就被设计为能在通用商业硬件上高度扩展。 由于其开放性、可扩展性和可靠性,Ceph成为了存储行业中的翘楚。这是云计算和软件定义基础设施的时代,我们需要一个完全软件定义的存储,更重要的是它要为云做好准备。无论运行的是公有云、私有云还是混合云,Ceph都非常合适。国内外有不0 码力 | - 页 | 13.97 MB | 1 年前3
清华大学 DeepSeek+DeepResearch 让科研像聊天一样简单内外学术文献,参考文献标注格式规范,引用的文献来自真实数据源,确保内容的准确性和可靠性|参考文献20篇以内,涵盖国内外学术文献,参考文献标注格式不规范,引用的文献来自真实数据源,确保内容的准确性和可靠性|参考文献50篇以内,只涵盖国内学术文献,参考文献标注格式较为规范,引用的文献来自真实数据源,确保内容的准确性和可靠性|生成内容引用了高质量的学术文献和行业报告,参考文献标注格式规范,支持直接点击标注查看参考来源,便于追溯| 风险的复杂性和多维性认识不够全面,导致对潜在风险的评价和预测存在偏差。此外,伦理风险的理解与实际操作之间存在脱节,研究者往往未能将伦理考量充分融入研究设计、数据收集和分析过程中,进而影响研究结果的可靠性和可信度。2. 风险治理与制度不足。在风险治理领域,现有研究对风险治理机制的探讨相对缺乏系统性。许多研究侧重于单一治理工具或策略,而忽视了风险治理的整体性和动态性。此外,现有的风险治理制度往往未能充 科应用难关,优化知识融合机制,革新决策支持系统。重点关注大型语言模型在各领域中的应用潜力与挑战,涵盖其可靠性提升、专业化应用、指令优化及跨模态理解等方面的研究进展。Asproni G(2024)讨论了大型语言模型的可观察性,指出这一特性的重要性在于它能有效监测和分析模型行为,从而提升模型的可靠性和性能 $ ^{[4]} $ 。Zhong Y 等(2024)表明,结合领域专业数据库和实时数据的大型语0 码力 | 85 页 | 8.31 MB | 1 年前3
Java 应用与开发 - Java 技术概述及开发环境是一种以对象为中心,以消息为驱动的面向对象的编程语言。 平台无关性 分布式 可靠性 多线程 网络编程 编译和解释并存 ## Java 技术的特点 平台无关性 分为源代码级(需重新编译源代码,如 C/C++) 和目标代码级 (Java) 平台无关。 ## Java 技术的特点 分布式 可靠性 多线程 网络编程 编译和解释并存 ## Java 技术的特点 可靠性 不支持直接操作指针,避免了对内存的非法访问;自 机制。安全性。 ## Java 技术的特点 面向对象 平台无关性 分布式 可靠性 多线程 C++ 没有内置的多线程机制,需调用操作系统的多线程功能来进行多线程设计;Java 提供了多线程支持。 网络编程 编译和解释并存 ## Java 技术的特点 面向对象 平台无关性 分布式 可靠性 多线程 网络编程 编译和解释并存 ## Java 技术的特点0 码力 | 33 页 | 1.17 MB | 2 年前3
共 353 条
- 1
- 2
- 3
- 4
- 5
- 6
- 36
相关搜索词
RustAPI可靠性模糊测试静态分析形式化验证Falcon Web FrameworkREST APIsASGI/WSGI性能可靠性RocketMQ分布式消息传递高可靠性低延迟openEuler内核创新云原生边缘计算嵌入式MaxQAMQP协议消息队列GolangZookeeperVMware ESX虚拟化管理程序vStorage VMFSVMsafe虚拟机云数据库 Redis 版内存+硬盘存储双机热备架构集群架构弹性扩展Ceph分布式存储RADOSCRUSH纠删码DeepSeekDeepResearch数据可视化文献综述学术研究Java虚拟机垃圾回收机制Java运行时环境编译和解释并存平台无关性













