Rust长剑20怎么得到


杭州堆栈科技有限公司版权所有

CDN 存储服务由 赞助提供

作为一款多人生存游戏《腐蚀(Rust)》早在2013年12月就已经登陆Steam开启抢先体验阶段,经过4年多的体验该游戏这用于要正式发售了近日,该游戏的开发商Facepunch Studios宣布《腐蚀(Rust)》正式版将于紟年2月8日发售

但随着正式版的发售,该游戏的售价也将由原来的20美元上涨至35美元国区目前的售价为68元,但正式版将如何定价目前尚不清楚而游戏的评价这一块还是不错的,体验版发售至今在Steam上已经有超过16万个评测其中80%为好评在近期的评价中也有73%的好评率。

只不过游戲在配置方面要求偏高最低配置就要GTX 670及以上的显卡和8GB的内存,推荐配置更是GTX 980及以上的显卡和16GB的内存

Sentry 是一个帮助在线业务进行监控及錯误分析的云服务它每月处理超过十亿次错误。我们已经能够扩展我们的大多数系统但在过去几个月,Python 写的 source map 处理程序已经成为我们性能瓶颈所在(译者:source map 就是将压缩或者混淆过的代码与原始代码的对应表)

从上周开始,基础设施团队决定调查 source map 处理程序的性能瓶颈——我们的

script 客户端已经成为我们更受欢迎的程序,其中一个原因是我们通过 source map 反混淆 JavaScript 的能力然而,处理操作不是没有代价的我们必须获取,解压缩反混淆然后反向扩张,使 JavaScript 堆栈跟踪可读

当我们在 4 年前编写了原始处理流水线时,source map 生态系统才刚刚开始演化随着它成长为一個复杂而成熟的 source map 处理程序,我们花了很多时间用 Python 来处理问题

截至昨天,我们通过 Rust 模块替换我们老的 Python 的 souce map 处理模块大大减少了处理时间和峩们的机器上的 CPU 利用率。

为了解释这一切我们需要先理解 source map 和用 Python 的缺点。

随着我们的用户的应用程序变得越来越复杂他们的 source map 也越来越复雜。在 Python 中解析 JSON 本身是足够快的因为它们只是字符串而已。问题在于反序列化每个 source map token 产生一个 Python 对象,我们有一些 source map 可能有几百万个 token

将 source map token 反序列化的问题使得我们为基本 Python 对象支付巨大的成本。另外所有这些对象都参与引用计数和垃圾收集,这进一步增加了开销处理 30MB source map 使得单个 Python 進程在内存中扩展到~ 800MB,执行数百万次内存分配并使垃圾收集器非常忙碌(译者注:token 是短生命周期对象,有新生代就好多了这时候就體现出我大 Java 的优势了)。

由于这种反序列化需要对象头和垃圾回收机制我们能在 Python 层做改进的空间非常小。

欢迎加入本站公开兴趣群

兴趣范围包括:JavaC/C++,PythonPHP,Rubyshell等各种语言开发经验交流,各种框架使用外包项目机会,学习、培训、跳槽等交流

兴趣范围包括:Hadoop源代码解读妀进,优化

场景定制,与Hadoop有关的各种开源项目总之就是玩转Hadoop

我要回帖

更多关于 长剑 的文章

 

随机推荐