Real world Rust
- Why and how we use Rust in TiKVReal world Rust Why and how we use Rust in TiKV 黄东旭 PingCAP 关于我 ● 黄东旭 Dongxu_Huang ● Open source hacker / Infrastructure Engineer ● MSRA / Netease / Wandoujia / PingCAP ● CTO of PingCAP ● Codis system programming language ○ Maintain by Mozilla ● Stable: 1.13 ○ Stable enough for production use ● Alternative to C/C++ Why Rust? ● Safe ○ Thread safety guarantee ○ Segfaults free ● Blazingly fn main() { let a = vec![1,2,3]; do_vec(a); println!("{}", a) } 内存安全 error[E0382]: use of moved value: `a` --> src/main.rs:6:20 | 5 | do_vec(a); | - value moved here0 码力 | 29 页 | 506.53 KB | 1 年前3
唐刚 - Use Rust to Develop the Decentralized Open Data Application - RustChinaConf2023第三届中国 Rust 开发者大会 Use Rust to Develop the Decentralized Open Data Application Mike Tang daogangtang@gmail.com @daogangtang 2023-06-08 ➔ 裁员 ➔ 互联网格局定型 ➔ 平台倒闭,数据丢失 这是一个什么时代? 互联网的终局 创业 -> 种子 com/eightfish-org/eightfish EightFish intends to develop the Data-kind Decentralized Application. You can use the traditional Web development coding style to develop a ODA. How to develop Open Data Application https://github.com/eightfish-org/gutp A Case: GUTP MeBlog is a blog platform for users with the features of open-data and ownership. https://github.com/miketang84/meblog A Case: Meblog Connected to GUTP All0 码力 | 30 页 | 2.53 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2021.2)• JSON Data • YAML Data • Network diagram (nwdiag) • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 符号的数学公式 • Entity Relationship diagram 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用-> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml 除外)。 关键词 end 用来结束分组。 注意,分组可以嵌套使用。 @startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure0 码力 | 381 页 | 4.05 MB | 1 年前3
PlantUML 1.2021.1 语言参考指引同时还支持以下非 UML 图: • JSON Data • Network diagram (nwdiag) • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 符号的数学公式 • Entity Relationship diagram 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用-> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml 除外)。 关键词 end 用来结束分组。 注意,分组可以嵌套使用。 @startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure0 码力 | 376 页 | 4.00 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2023.11)• JSON Data • YAML Data • Network diagram (nwdiag) • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 符号的数学公式 • Entity Relationship diagram 通过简单直观的语言来定义这些示意图。 1 序列图 1 序列图 使用 PlantUML 创建序列图非常简单。这种易用性主要归功于其语法的用户友好性,既直观又易记。 • 直观的语法: 首先,用户非常欣赏 PlantUML 所采用的简单直观的语法。这种经过深思熟虑的设计意味着,即使是图 表创建新手也能轻松快速地掌握基础知识。 • Bob : something else {end} Bob -> Alice : finish {start} <-> {end} : some time @enduml You can use the -P command-line option to specify the pragma: java -jar plantuml.jar -Pteoz=true [Ref. issue-582]0 码力 | 539 页 | 7.74 MB | 1 年前3
PlantUML 1.2021.3 语言参考指引• JSON Data • YAML Data • Network diagram (nwdiag) • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 符号的数学公式 • Entity Relationship diagram 通过简单直观的语言来定义这些示意图。 1 时序图 1 时序图 1.1 简单示例 你可以用-> 来绘制参与者之间传递的消息,而不必显式地声明参与者。 你也可以使用 --> 绘制一个虚线箭头。 另外,你还能用 <- 和 <--,这不影响绘图,但可以提高可读性。注意:仅适用于时序图,对于其它示意 图,规则是不同的。 @startuml @startuml :User: --> (Use) "Main Admin" as Admin "Use the application" as (Use) Admin --> (Admin the application) @enduml 2.3.2 用户头像 @startuml skinparam actorStyle awesome :User: --> (Use) "Main Admin" as0 码力 | 398 页 | 4.22 MB | 1 年前3
PlantUML 1.2020.22 语言参考指引同时还支持以下非 UML 图: • JSON Data • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 除外)。 关键词 end 用来结束分组。 注意,分组可以嵌套使用。 @startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure 19 Text wrapping To break long messages, you can manually add in your text. Another option is to use maxMessageSize setting: @startuml skinparam maxMessageSize 50 participant a participant b a -> b0 码力 | 295 页 | 3.08 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2020.23)同时还支持以下非 UML 图: • JSON Data • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 除外)。 关键词 end 用来结束分组。 注意,分组可以嵌套使用。 @startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure 20 Text wrapping To break long messages, you can manually add in your text. Another option is to use maxMessageSize setting: @startuml skinparam maxMessageSize 50 participant a participant b a -> b0 码力 | 307 页 | 3.17 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.6)• 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 除外)。 关键词 end 用来结束分组。 注意,分组可以嵌套使用。 @startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure 还可以使用这些分隔符:-- .. == __。并且还可以在分隔符中间放置标题。 @startuml usecase UC1 as "You can use several lines to define your usecase. You can also use separators. -- Several separators are possible. == And you can add titles:0 码力 | 174 页 | 1.98 MB | 1 年前3
使用 PlantUML 绘制 UML - PlantUML 语言参考指引(Version 1.2019.4)• 定时图 同时还支持以下非 UML 图: • 线框图形界面 • 架构图 • 规范和描述语言 (SDL) • Ditaa diagram • 甘特图 • MindMap diagram • Work Breakdown Structure diagram • 以 AsciiMath 或 JLaTeXMath 符号的数学公式 通过简单直观的语言来定义这些示意图。 1 时序图 1 除外)。 关键词 end 用来结束分组。 注意,分组可以嵌套使用。 @startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure 还可以使用这些分隔符:-- .. == __。并且还可以在分隔符中间放置标题。 @startuml usecase UC1 as "You can use several lines to define your usecase. You can also use separators. -- Several separators are possible. == And you can add titles:0 码力 | 165 页 | 1.89 MB | 1 年前3
共 661 条
- 1
- 2
- 3
- 4
- 5
- 6
- 67













