2011年Web脚本语言和动态重新加载

vir*_*yes 5 php ruby python groovy reloading

这一直困扰着我一段时间.

在已部署的PHP Web应用程序中,可以上载更改的php脚本,并使Web服务器获取更新的文件,而无需重新启动.

问题?Ruby,Groovy和Python等在语言表达能力,简洁性,权力,......你的理由 - 这里都比PHP"更好".

目前,我真的很喜欢Groovy(通过Grails),但实际情况是JVM在生产动态重新加载应用程序代码方面做得不好(根本没有).基本上,Permgen内存不足错误是虚拟保证,这意味着应用程序在任何时候都会崩溃 - 不好.

Ruby框架似乎从我所读到的内容中解决了一些问题:Passenger可以选择在下一个请求中动态重新加载轮询目录中的已更改文件(从而防止连接用户断开连接,会话丢失等).

独立Python我根本不确定; 它可能像PHP一样允许在没有重新启动Web服务器的情况下动态重新加载python脚本.

就我们的网络工作而言,总是客户最终希望对已部署的应用程序进行更改,无论规范的详细程度和计划如何.告诉客户,"当然,我们将在明天凌晨4点实施[简单]更改[以免对连接用户造成严重破坏]",不会过得太好.

截至2011年,我们处于动态重新加载和脚本语言方面?我们是否永远注定要被归为PHP的便利,或非PHP的乐趣并被迫重启已部署的应用程序?

顺便说一句,尽管它们具有可重新加载性,但我完全不喜欢JSP,GSP和Ruby,Python模板等价物.这是一个蛋糕,吃它太螺纹,我们可以改变应用程序的任何方面,而不必重新启动.

ʇsә*_*ɹoɈ 4

您尚未指定 Web 服务器。如果您使用 Apache,mod_wsgi 是运行 Python Web 应用程序的最佳选择,并且它具有不需要重新启动服务器的重新加载机制。