【Rust日报】 2019-04-04

2024-06-23 01:38
文章标签 04 rust 2019 日报

本文主要是介绍【Rust日报】 2019-04-04,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

成功故事:Rust在企业领域的应用

#zalando

本文描述了zalando公司从Scala转向Rust的成功故事。

缘起:

2016年该文作者作为Scala开发者加入了Zalando公司。半年后,他们打算开始做一个新的应用,与此同时,团队内商量该使用什么新技术,Rust就在这时被提及,同时他们也用Rust快速实现了原型,但是最后这个新应用被取消了。但Rust却成为了该团队的一门候选语言。

碰壁:

不久之后,Zalando的主要服务(Scala Web)出现了一些问题。在高负载情况下,应用程序出现了大量的内存占用,有时也会耗尽内存。所以他们起了一个念头:用Rust重写整个服务会怎么样?经过几天的实验,重写了该服务,测试以后发现比之前的scala程序有更好的延迟,内存和CPU也占用更少。而且可以处理更多的负载。这时,他们的领导友情提醒,Rust并不是团队的「官方」技术,如果要将此Rust程序正式上线到生产环境,可能会出现严重的风险。最后经过Zalando技术团队内部协商,Rust最终被决定为「评估」状态,所以这件事就又就此作罢了。

破竹:

事情在2017年中期实施新的服务产生了转机。他们准备实现一个简单的流服务,就是执行一些RESTful调用再将数据写入redis。领导再次对他们表示了关切:是否可以真的上生产环境?新人来了以后如何接手Rust?于是他们在接下来的几周内,重点分析了应用程序中可能出现的问题,并找出了如何使用Rust来避免这些问题,核心原因是Rust的安全性和生产力,而且使用Rust可以有效地利用资源。他们有计划使用k8s来运行pods节省成本。就这样和领导「推杯换盏」持续说服花了半年时间,接近年底的时候他们都不知道到底Rust能不能上生产。

在2017年年底的时候,为了应对需求变化而对团队进行了重组。作者本来是6人团队,减少到4人。然后领导说:你们这是一个Rust团队。这真的是出乎了作者的意料。事情就这么落地了。他们从一个简单的CRUD项目开始逐步将旧的系统替换为Rust实现的新系统。最后,他们实现了最初的目标,将Rust引入了团队成为了「官方技术」。

(也许这个故事可以给你一些启示,帮助你在公司内推广Rust)

Read More


PingCAP Talent Plan 第二期火热来袭,线上课程全面开放!

Read More

另外,我给准备参与此人才计划的选择阅读《Rust编程之道》的读者,提供一些提高学习效率的建议。

  1. 先看第一章,对Rust有整体了解,重点是了解Rust社区、Rust语言架构和Rust编译过程
  2. 使用检索式阅读,把Rust By example过一遍,把Rust语法先通览一遍。
  3. 然后再看《Rust编程之道》第二章,重点理解「一切皆表达式」的概念,借此把语法再次梳理一遍
  4. 攻克所有权,同样检索式阅读看三四五章。
  5. 可以结合其他的学习资料,进行主题式阅读(针对一个主题,比较式阅读学习)

下图为检视阅读方法:

img


「系列文章」Rust中实现DSL的挑战

#DSL

  • Part I
  • Part II

「系列文章」理解Futrue Part I

#future #async

Read More


使用Tensorflow Rust进行人脸识别

#tensorflow #dl

本文将引导你基于一些现有模型来使用rust和tensorflow完成面部识别。 使用的是名为mtcnn的预训练模型进行人脸识别。

  • Read More
  • mtcnn

zexe: 基于零知识证明的去中心化私有计算库

#Zeroknowledge

zexe


themis 0.11.1发布

#crypto

Themis 是一个高级加密服务库。它提供了复杂的加密方式用于各种基础架构平台,新版本增加了对Rust的全力支持。

  • themis
  • Rust-Howto

tract: 适用于TF和ONNX的小型推理引擎

#ONNX #TensorFlow #deeplearn

对语音处理等实时应用也提供半实验性支持。

tract


使用Rust编写你的第一个CLI应用

#cli

文章介绍了如何使用Rust构建一个简化的cat命令

Read More


trassh: 一个简单的SSH蜜罐

#sshtrapit

类似于Endlessh,它会打开一个套接字并伪装成一个 SSH 服务器,非常缓慢地发送一个无休止的随机 SSH banner,使 SSH 客户端一次锁定数小时甚至数天。目的是将真正的 SSH 服务器放在另一个端口上,而在虚假的服务器上卡住入侵者,防止其影响到真正的服务器。

tarssh


Inko: Rust实现的面向对象语言

#lang

号称安全无痛地处理并发,主要是支持类Erlang轻量级进程来处理并发。

inko-lang.org


Rust和性能测试指南

#benchmarking

这篇文章主要关注在Rust中如何创建令人满意的基准测试

Read More


日报订阅地址:

  • Telgram Channel
  • 阿里云语雀订阅
  • Stemmit
  • Rust.cc论坛
  • GitHub

这篇关于【Rust日报】 2019-04-04的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085971

相关文章

一份LLM资源清单围观技术大佬的日常;手把手教你在美国搭建「百万卡」AI数据中心;为啥大模型做不好简单的数学计算? | ShowMeAI日报

👀日报&周刊合集 | 🎡ShowMeAI官网 | 🧡 点赞关注评论拜托啦! 1. 为啥大模型做不好简单的数学计算?从大模型高考数学成绩不及格说起 司南评测体系 OpenCompass 选取 7 个大模型 (6 个开源模型+ GPT-4o),组织参与了 2024 年高考「新课标I卷」的语文、数学、英语考试,然后由经验丰富的判卷老师评判得分。 结果如上图所

Rust:Future、async 异步代码机制示例与分析

0. 异步、并发、并行、进程、协程概念梳理 Rust 的异步机制不是多线程或多进程,而是基于协程(或称为轻量级线程、微线程)的模型,这些协程可以在单个线程内并发执行。这种模型允许在单个线程中通过非阻塞的方式处理多个任务,从而实现高效的并发。 关于“并发”和“并行”的区别,这是两个经常被提及但含义不同的概念: 并发(Concurrency):指的是同时处理多个任务的能力,这些任务可能在同一时

【设计模式-04】原型模式

【设计模式-04】原型模式 1. 概述2. 结构3. 实现4. 案例5. 使用场景6. 优缺点6.1 原型模式的优点6.2 原型模式的缺点 7. 实现深克隆(深拷贝) 1. 概述 原型模式: 用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象。 2. 结构 原型模式包含如下角色: 抽象原型类:规定了具体原型对象必须实现的 clone() 方法。

C++ 教程 - 04 类的使用

文章目录 类的定义类定义案例构造函数 类的定义 C++ 在 C 语言的基础上增加面向对象编程,类是用于指定对象的形式,是一种用户自定义的数据类型,封装了数据和函数。类可以被看作是一种模板,可以用来创建具有相同属性和行为的多个对象。 class 关键字定义类,相当于在结构体中加入方法; 花括号内定义成员变量、成员方法,并且分块表示,每块使用public/private/prote

04 TensorFlow 2.0:高阶OP之meshgrid

谁诀别相思成疾莫问天涯 也莫问归期 怎奈何无人了解 情断之时 冷暖自知                                                                                                                                 《莫问归期》 内容覆盖: stackmeshgrid im

我的2019年工作总结及对未来1年的计划和期许

最近一直在忙,不过今天手上的2个项目目前都在修改bug中了。等修改好了,估计明天又同时进行复测了。 刚刚公司群里发布了2019年度工作总结和考核评优工作的通知,和去年一样,每个人需要提交一份个人总结PPT。然后我看了我去年的写的总结和期望,不足和成就。有了些感触,也忙里偷闲整理了半天今年的工作内容。这里具体的项目名称就不透露了。 整体来说: 1、独立测试3个项目/产品的测试工作。 2、客户

Github 2024-06-23开源项目日报 Top10

根据Github Trendings的统计,今日(2024-06-23统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量TypeScript项目3C++项目2JavaScript项目2非开发语言项目2Jupyter Notebook项目1Python项目1Vue项目1Java项目1HTML项目1 从零开始构建你喜爱的技术 创建周期:2156 天Star数量

Telegram 桌面端 Visual Studio 2019 编译 tdesktop 指南

编译该项目起初耗时 1 天半(1 个通宵 + 2 个白天),结果还失败了。 然后时隔 3 个月,又尝试重新编译,耗时 1 个白天,编译成功。 坑还是有(fei)点(chang)多的。 不多说了,进入正题。   1、准备环境 由于此开源项目较大,编译容易出错,一些第三方软件可能与您已安装的版本相冲突。 所以强烈建议在虚拟机中编译该项目,并保存多个时间点快照。 环境要求:16G 或以上

[第五空间2019 决赛]PWN5

参考文章: 格式化字符串漏洞原理及其利用(附带pwn例题讲解)_格式化字符串攻击教程-CSDN博客 格式化字符串漏洞原理详解_静态编译 格式化'字符串漏洞-CSDN博客 BUU pwn [第五空间2019 决赛]PWN5 //格式化字符串漏洞 - Nemuzuki - 博客园 (cnblogs.com) 栈溢出保护(cannary) 数据溢出保护(NX) 运行一下看看

More Effective C++ 条款04:非必要不提供默认构造函数

所谓默认构造函数,就是不给任何变量,就可以给调用(无参或参数为默认值)。 基本准则:凡可以“合理地从无到有生成对象”的类,都应该包含默认构造函数,而“必须有某些外来信息才能生成对象”的类,则不必拥有默认构造函数。 但如果类缺乏一个默认构造函数,当你使用这个类时便会有某些限制。 考虑下面这个针对公司仪器而设计的class,在其中,仪器识别码是一定得有的一个构造参数: class Equipm