生命不息,挖坑不止 =。= to be an infrastructure engineer
谁是真人老师?
真人老师,Github hawkingrei, Bilibili 中间件工作,负责 Bilibili 分布式文件系统和周边的开发、维护。
原名王维真,高中时期就无比热爱计算机,很早就喜欢在 CSDN 上摘抄一些知识挂在 blogbus。正是求学时期建立的意识与习惯培养出了一个喜欢研究与读书的他。
不太凑巧的是大学并没有读上自己喜欢的计算机专业(而是药学),在大四的时候毅然决然放弃所学专业,自学成为一名工程师。从一开始的前端工程师到现在的后端工程师,愈加痴迷于代码。同时为了不断提升自己,常常与 blog 做朋友,从阅读各类 Paper 中收获知识,从工作中总结经验,那里记录着自己的学习过程以及各种新奇技术。还有,就是他造的各式各样的轮子。
「基础不牢,地动山摇」,这或许就是他想成为一名 infrastructure engineer 的重要性了。
真人老师与 Rust
最初真人老师是写 Go 语言的,曾在 Go Hack 2017 黑客马拉松比赛上,真人老师和另外两位同学一起做了一个项目 Play TiDB in Minecraft!,真人老师还给它起了一个帅气的名字 Killy,据说是一部硬科幻的男主的名字,还挺帅。项目当时获得了二等奖和赛事专项奖。
直到后来遇到 Rust, 怎么遇到的?大概是 rust niupi 吧!不开玩笑,可能是从 servo 用 rust 写开始的,公司需要就继续写了。看看他贡献的项目之一:tikv ,还自己开了一个 learning-rust 。
真人老师要讲什么?
主题演讲:Rust at Bilibili (with WaySLOG)
Bilibili 是一个在线视频弹幕网站,喜欢尝试新技术,Rust 也是被推崇的语言之一。
这次 talk 将重点介绍 Rust 的三个组件:
- 缓存代理组件
- 图像处理组件
- 编译远程缓存组件
同时也会和大家分享一下在使用 Rust 过程中遇到的问题和处理方法。
Workshop 主题:跟真人老师学 Rust ffi
如何编写 Rust ffi ----从入门到精通,使你可以 bindgen 任何 c/c++ 库,同时可以对 c/c++ 进行一定的包装。
- 了解 bindgen,build.rs,初步实现 libwebp ffi
- 实现 libwebp wrapper,实现 png 转 libwebp
- 实现库内绑定 libwebp 版本,引用 libwebp 库无需 libwebp 库
面向人群:有一定的 Rust 基础比较好,当然无基础也可参与,c/c++ 知识不是必须。
实验将在 Linux/Mac 平台运行,用 Windows 的同学需提前安装虚拟机。
更多关于真人老师:
GitHub:https://github.com/hawkingrei
Twitter:https://twitter.com/suohawking
Blog:https://www.hawkingrei.com/blog/