< 返回版块

ChaosBot 发表于 2018-10-16 11:56

Tags:rustnews

「声明」

今天一天遇到两起评论,一条是带着阴阳怪气评论每周精选,一条是直接说我「标题党」,这让我有点不舒服。当然,我愿意相信对方也许并无恶意,只是用词不当。不过我也觉得有必要再次说明几点:

  1. 「每日新闻」只是满足我自己每天的阅读需求,顺便总结出来分享给大家。
  2. 每日新闻里的内容,不要当作是翻译来看待。并非翻译,只是我看完以后做了梳理和总结。
  3. 人非圣贤,孰能无错? 所以新闻的内容有错是很正常的。看见我对内容有错误的理解,欢迎指出问题,我很乐意改正,因为「每日新闻」的存在,也有一部分原因是因为我也要学习。
  4. 你可以觉得我的水平很水,发的内容不值得你看,可以选择不交流不关注。但如果要评论或交流,还请携带善意。
  5. 并非我敏感,只是觉得给大家说清楚比较好。
  6. 有人可能认为我是宣扬Rust调门很高。但其实,我每日新闻基本都在Rust群发放,而且对原文也基本没有故意的篡改或添加私货(要加私货也是对原文中涉及的相关内容进行补充)。 不喜勿看。

特此说明


官方对crates.io 事件做出了回应

针对crates.io上面恶意发布crate的事情,官方将要处理了。

原文


广告黑洞Pi-hole 开源了Rust实现的Restful API

基于Rocket实现

pi-hole可以阻止超过100,000个广告服务域

官网

原文


「Rust练手小项目」

  • 统计git commit中的「咒骂」词语: git-anger-management
  • Rust语法糖集合,该库提供了作者编写的一些语法扩展,方便使用的宏: sugar-rs

「Job」医疗初创项目招聘Rust工程师 「旧金山/全职/非远程/薪酬/股权」

致力于改善医疗软件,拯救医生。 技术栈:Rust/node/react

也包括特定领域机器学习和细粒度的应用安全挑战

原文


一个经过审查的torrents种子服务

torrents.csv文件组成,并使用了ripgrep和acitx-web

原文

torrents.csv


Grapl:用于DFIR的图形化分析平台

DFIR,是指Detection, Forensics, and Incident Response,检测、取证和应急响应,有助于网络安全分析。

grapl


使用WebAssembly加速Markdown渲染

SpiderOak公司的博文,SpiderOak是一个云端备份工具。该公司出了一个产品叫 Semaphor,它是可协作的加密群组IM软件。起因是因为SpiderOak团队需要一个安全的群组消息传递和文件共享解决方案,而没有电子邮件或现成协作工具带来的风险。 使用私有区块链加密开发。

在Semaphor中发送的每条消息,都是Markdown文档,所以渲染性能对它们来说很重要。所以他们一直在寻找加速渲染性能的方法。最终他们想到一个方案,就是将WebAssembly集成到React组件中,取代react函数,所以他们提出了react-wasm-bridge 实验组件。它将props传递给Rust WebAssembly模块,并提供构建React渲染树的接口。

Rust是个很自然的选择,因为Rust工具链很完善,比如有wasm-bindgen这样的工具。他们对Markdown渲染器的要求是:

  • 安全,解析用户的输入需要安全
  • 快速, 呈现消息展示是Semaphor中最频繁的操作

Rust+wasm方案改进后

安全性:

当前他们的Markdown渲染器用的是markdown-it,它与react一起工作并不安全,因为包含有HTML字符串,对目前的解决方案并不满意。因此新的解决方案必须没有HTML字符串,而是直接创建元素。因此通过Rust来构建React 元素树,并且wasm环境还是一个天然的沙箱,对于攻击者来说并没有那么有用。

性能:

刚开始的实现方案性能并没有多少提升,后来针对它们的产品场景,将React中循环渲染构建dom的逻辑,转移到了Rust中,从而提升了性能。因为对于它们的产品来说,只需要渲染一次即可,im中的消息是不可变的,所以不需要重新渲染。

最终的测试结果:

BROWSER  MARKDOWN-IT   WASM
—————————————————------------
Firefox    162ms       175ms
Chrome     197ms       84ms

react-markdown-wasm

原文


评论区

写评论

还没有评论

1 共 0 条评论, 1 页