所以我注意到,各种应用服务器的文档(比如Unicorn,Puma for Ruby,Warp for Haskell等等)总是提到类似于“它被优化为应用服务器”的内容。通常,在描述在应用服务器前的反向代理中使用HTTP服务器(如Ngnix)的标准设置时,都会提到这一点。
所以我的问题是: web应用程序服务器的编程到底是什么让它在处理由code v/s HTTP服务器生成的数据时更有性能?有没有什么特别的工程权衡?或者更多的情况是,HTTP服务器针对从磁盘提供文件进行了优化,因此他们只是试图说明HTTP服务器没有针对应用程序代码进行优化?
我有一个运行在MySQL上的CentOS服务器,它包含一个大的(>12 DB )DB。由于性能原因,我被建议转到InnoDB,因为我们正在经历锁定,依赖于DB的应用程序在服务器繁忙时变得没有响应能力。
我一直在阅读,并且可以看到,将表更改为InnoDB的ALTER命令可能要花费很长时间,并在此过程中敲击服务器。据我所见,所需的唯一更改是使用以下命令:
ALTER TABLE t ENGINE=InnoDB
我已经在一个测试服务器上运行了这个程序,它似乎完成得很好,在需要转换的最大的表上花费了大约26分钟。
由于从未在生产系统上运行此操作,我有兴趣知道以下几点:
建议对MySQL配置进
我对服务器管理是新手,之前我使用共享托管,并考虑使用VPS,并为我的网站获取更多信息。副总裁规格:
RAM: 12GB
CPU: 4 Core Intel E5
SSD: 300GB
Server: Apache
OS: Ubuntu 16.04
PHP: 7.0 FCGI
Stack: Virtualmin
Script: Wordpress
Number of website: 1(Going to host 5 more websites if server can withstand with it)
Cache plugin: W3 Total Cache
我在VPS上安装了memc