所以我正在尝试用 python 进行更多的 Web 开发,我选择了 cherrypy,它由带 fastcgi 的 lighttpd 托管。但我的问题是一个非常基本的问题:为什么每次更改我的应用程序代码或底层库的代码时都需要重新启动 lighttpd(或 apache)?
我意识到这个问题源于对 fastcgi 模型的基本错误(即糟糕的)理解,所以我愿意接受这里的任何教育,但我习惯于只更改 PHP 文件并显示它,而不是让反弹网络服务器。
任何解释/有用的 mock 表示赞赏。
最佳答案
这是因为性能。对于开发,自动重新加载很有帮助。但是对于生产,您不想自动重新加载。这实际上是 PHP 中的一个相当大的瓶颈。每次访问 PHP 网页时,服务器都必须从头开始解析和加载每个页面。使用 Python,脚本在第一次访问后已经加载并运行。
如前所述,CherryPy 有一个自动重新加载设置。我建议使用 CherryPy 内置服务器进行开发并使用 lighttpd 进行生产。这可能会为您节省一些时间。 tutorial向您展示如何执行此操作。
关于python - fastcgi、cherrypy 和 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1947344/