我有一个基于Joomla 1.5.10的Intranet系统。在此应用程序中,我们有超过80%的自定义扩展。以下是配置:
Apache version : Apache/2.2.22 (Win32) mod_ssl/2.2.22 OpenSSL/0.9.8 PHP version : 5.3.13 MySQL version : mysqlnd 5.1.11
它有3个专用的Appliocation Server,其配置为:
Windows Server 2008 Standard Edition Service Pack 2 Compiler: MSVC9 (Visual C++ 2008) Architecture: x86
同样,它有专用的DB服务器,其配置为:
8x Intel(R) Xeon(R) CPU X5460 @3.16GHz, 8.0GB RAM, Windows Server 2008 Standard Edition Service Pack 2.
以下是我系统中的MySQL设置:
Sl.# Parameter Value 1 Key Buffer 547M 2 Sort Buffer Size 256K 3 Query cache limit 4M 4 Cache size 350M 5 Long query time 5 6 Interactive timeout 300 7 Max Connection 800 8 Thread cache size 36
我们在服务器上配置了WAMPSERVER(32 BITS& PHP 5.3)2.2E,然后在其他专用服务器上安装MySQL5.1。因此,我们没有使用WAMP提供的MySQL。 当数据库连接线程数超过100时,我的系统变得太慢或崩溃。我们可以看到的登录用户数仅为3000-5000。多个查询开始登录慢查询日志,大量查询处于睡眠状态。那些正常运行的查询也开始登录慢查询日志并花费大量时间执行。 我无法找到系统中的瓶颈。有没有Joomla或MySQL创造瓶颈。升级是否有助于避免瓶颈并提高系统性能?如果是的话,我们应该升级什么 - Joomla或MySQL以及升级系统的策略是什么。 1.5.10中是否存在通过升级解决的已知性能/可伸缩性问题?
我的总体目标是提高系统性能。
提前致谢。
答案 0 :(得分:2)
首先,正如我的评论中提到的,将CMS升级到至少Joomla 1.5.26将有所帮助。你正在运行PHP 5.3,只有Joomla 1.5.15+与这个PHP版本完全兼容。看到你正在使用1.5.10,那里会有一些问题。
Apache不是问题。有些站点运行Joomla,有成千上万的用户并且运行Aache没有任何问题,所以不用担心这个。
从Joomla 1.6开始,优化开始了。减少和排序数据库表,无休止的错误修复以及安全问题。该框架也有所改进,更不用说它支持PDO,mysqli(比mysql更安全)和postgre。升级到Joomla 3.2(最新版本)当然是一个巨大的进步。您必须使所有自定义扩展与新的Joomla版本兼容,并与最新的编码标准保持同步。尽管这是一个很大的进步,当然需要一些时间,但这完全是值得的。 Joomla 1.5现在已经很长时间没有得到支持,事情正在向前发展。
你的服务器规格很好,你正在运行一个不错的PHP和Apache版本,你的MySQL版本可以升级,但它仍然不错。总的来说,这不是与服务器相关的问题。
我认为它很可能是您的自定义扩展程序的编码方式。因此,我的最终建议只是备份您的网站并开始将其迁移到Joomla 3.2的所有扩展程序。
答案 1 :(得分:0)
您可以更改网络服务器。 Apache非常臃肿。 Lighttpd可以帮助解决问题。它运行起来也更简单。 cms升级很可能会破坏某些东西。