为什么Ruby会变慢?
因为如果您在Ruby和其他语言之间运行典型的基准测试,则Ruby会失败。
我发现Ruby并不慢,但话又说回来,我只是用它来制作简单的CRUD应用和公司博客。在我发现Ruby变慢之前,我需要做什么样的项目?还是这种缓慢会影响所有编程语言?
在编写实时数字信号处理应用程序或任何类型的实时控制系统时,Ruby可能无法很好地为您服务。Ruby(使用当今的VM)可能会在资源受限的计算机(例如智能手机)上窒息。
记住,Web应用程序上的许多处理实际上是由用C语言开发的软件完成的。例如Apache,Thin,Nginx,SQLite,MySQL,PostgreSQL,许多解析库,RMagick,TCP / IP等都是Ruby使用的C程序。 。Ruby提供胶水和业务逻辑。
如果您想应对这种“缓慢”,作为Ruby程序员,您有哪些选择?
切换到更快的语言。但这要付出代价。这可能是值得的。但是对于大多数Web应用程序而言,语言选择不是一个相关因素,因为使用足够快速的语言开发的成本更高,因此没有足够的流量来证明其合理性。
哪个版本的Ruby最适合速度快,流量大的Stack Overflow等应用?
其他人已经回答了这个问题-JRuby,IronRuby,REE将使您的应用程序的Ruby部分在可以负担VM的平台上更快地运行。而且,由于通常不是Ruby会导致速度慢,而是计算机系统架构和应用程序架构,因此您可以执行数据库复制,多个应用程序服务器,带有反向代理的负载平衡,HTTP缓存,内存缓存,Ajax,客户端缓存等工作。这些东西都不是Ruby。
最后,我在Ruby 2.0上找不到太多新闻-我认为距那时还差很多年?
大多数人都在等待Ruby 1.9.1。我本人正在等待JRuby上的Ruby 1.9.1上的Rails 3.1。
最后,请记住,许多开发人员选择Ruby是因为与其他语言相比,它使编程更加令人愉悦,并且因为Ruby with Rails使熟练的Web开发人员能够非常快速地开发应用程序。