在框架上重写自定义PHP应用.纠结于Python (Django)和PHP (CodeIgniter)之间


Rewriting A Custom PHP App on a framework. Torn between Python (Django) and PHP (CodeIgniter)

我正在考虑在框架上重写我的自定义PHP应用程序…主要是为了稳定和更容易的增长。现在它是一个伪MVC设置,中间有很多hack。

我已经建立了数据库,应用程序也使用了很多AJAX。

我不关心所涉及的工作量,而是我移动东西的平台的坚固性。服务器配置无需担心。我还希望提高所有方面的性能。

我的朋友(一个Python爱好者)告诉我,Python渲染表格类型数据的速度比PHP快了近40%,速度绝对是其中的一个决定因素。

拿出的事实,将有更少的工作转移到一个基于PHP的框架,因为应用程序是PHP已经是最合适的?

我知道有很多PHP vs Python的故事。Python似乎是明显的赢家,但它与AJAX等标准web工具一起使用有多容易呢?

我只是想知道谁会使用哪个,为什么,而不是另一个。

根据语言基准测试游戏,Python并不完全领先。

当然,他们正在对非常具体的算法和数据结构进行基准测试。它们与你的申请有关吗?可能不会。同样需要注意的是,尽管Python有一个表格数据库,但这真的会给您的应用程序带来实质性的好处吗?可能不会。

优化程序并不意味着切换到一种据称更快的语言。它的意思是首先仔细分析应用程序并确定瓶颈发生在哪里。您可能会发现查询数据库实际上占用了大部分时间——这对于许多web应用程序来说并不罕见。其次,要解决瓶颈,您可以考虑缓存、重写查询或调整数据库设置。但是,如果不确定具体的问题,我们就不能开始提出修复方案。

说一个应用程序慢是不够具体的,仅仅迁移到另一种语言必然会带来同样的问题。我的建议是,如果您希望重构您的应用程序——通过使用框架或其他方式重新实现它——首先要考虑您所说的稳定性和易扩展性。优化是在应用程序重写和工作之后,以及在通过分析确定特定问题之后,才进行的。

至于哪一种语言能提供最好的商品,谁也不能说是绝对的赢家。这两种语言都是内存管理的(这是一个很好的特性,可以减少开发时间),是动态和弱类型的,支持OOP,有丰富的库,有大量的文档,以及许多其他相似之处。不要因为一种语言更好,或者人们说它是真正的开发人员使用的语言而试图使用它——PHP经常被赋予一段艰难的时期,但让我们说它是出于热爱。选择对你忠诚的语言,或者如果你允许冒险,选择让你兴奋的语言。

你喜欢哪种语言?这才是最重要的。两者都有坚实的框架和相似的性能。如果你想提高性能,编写更高效的代码将会产生更大的影响。

我个人喜欢蟒蛇。Django很棒,但你也可以考虑Flask或Pyramid/Pylons。Ajax在python中与在PHP中一样简单——它只是一个请求。服务器配置无疑是比较困难的——它不会比PHP更容易——但它并没有那么困难,而且您说过您不介意。如果你对这两种语言都很喜欢,不妨试试python。