用于企业大型基于 Web 的系统的 Python/Django?

标签 python performance high-availability

我公司高度依赖Java和jsf;自从我被录用以来的所有项目都是使用它们实现的。但这些项目中的大多数都面临着与性能和可用性相关的问题。所以我终于考虑转向其他技术,我尝试在网上进行研究,我即将决定尝试使用 python。但在开始之前,我想听听您的回答,即 Python 可以解决我们面临的性能问题。

为了清楚起见,我们主要面临的性能问题与 glassfish 服务器和页面加载有关。我们目前正在使用冰面,并在那时尝试过木料。此外,我不能将 .net 用于某些与政策相关的问题。而 PHP 也因为在早期项目中遇到的一些安全漏洞而被排除在外。

因此,我希望阅读与性能和可用性相关的优缺点,以说服我的老板和客户使用 Python。

最佳答案

我怀疑您能否通过使用 Django 或基于 Python 的解决方案获得性能。我不知道 Glassfish 服务器,也不知道它如何扩展,但除非设计不当,否则我不明白为什么它会表现不佳。

从你对性能问题的解释来看,这似乎不是语言速度的问题,而是服务器配置和可用性的问题。

假设您的 Java 代码是合理优化的(即高效且速度可以接受),您将无法通过使用某些 Python 解决方案来解决问题。相反,您应该花一些时间研究缓存机制和/或代理解决方案。

根据您的服务器设置方式,额外的建议是让所有静态内容由专用服务器(如 Apache、nginx 或类似服务器)提供服务,只保留动态内容由您的 glassfish 服务器解释.

由于您的项目是用 Java 编写的,理论上您使用的语言可能比 Python 更快,我不明白为什么 Python 解决方案的性能会更好,除非您使用的框架有问题。

如果您想谈论原型(prototype)制作或更快的开发,那么这是一个不同的主题讨论 multiple times on stackoverflow .

关于用于企业大型基于 Web 的系统的 Python/Django?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6651406/

相关文章:

python - 如何从字典列表中删除重复项?

Python:AttributeError:无法腌制本地对象 'writeBuf.<locals>.write'

python - 如何检查有多少行以数字开头

php - TYPO3 6.2 突然变得非常慢(只有前端!)

kubernetes - Kubernetes 上的 Apache flink - 如果作业管理器崩溃,则恢复作业

javascript - 字符转义: from Python string literal to JSON and then to HTML

oracle - Oracle中使用临时表优化SQL

ruby-on-rails - 我的 Rails 应用程序中的 Postgres 性能问题

database - 高可用性授权服务的正确解决方案是什么?

具有应用程序网关后端的 Azure 流量管理器