我正在研究一个需要每秒更新页面的Web应用程序。 你可以想象一个网站的股票数据必须实时更新。
为了实时更新,我使用了jQuery插件Ajax。 我的数据库是MySQL与innoDB表,应用程序本身是用PHP编写的。
浏览器中的Ajax脚本每秒运行一次,这只是一个阅读。 要用其他值更新数据库,有一个每分钟执行一次的cronjob,它执行一个每秒运行一次的php脚本。 这个脚本可以读取和写入。
更多的用户读取和写入。 有很多事情要做。
现在我对这种大型应用程序来说还是比较新的,有些术语让我感到困惑,而且我不知道我的设置是否错误。
我现在的设置是这样的:
我有一个专用的服务器,运行centos和plesk平行面板。 服务器运行Apache,与PHP和MySQL数据库。
现在这里是让我困惑的东西的列表。 我已阅读了这些条款,但我不明白他们真正做什么以及如何从中受益。
1)首先是lighttpd和ngingx。 他们是像Apache这样的http服务器,还是他们其他的东西。 如果他们是http服务器,他们是否很容易从apache切换到。
2)什么是FastCGI和CGI。 他们喜欢PHP,还是他们其他的东西? 是否有使用PHP的好处,并且它们很容易切换到。
3)我想知道的最后一件事是关于静态内容交付。 如果我想从另一个域提供我的静态内容,我需要一个单独的服务器,或者我可以只configurationPLESK。
对不起,所有noob问题的家伙,但我真的很感激这些话题的一些帮助。
正确的是,这些HTTP守护进程与Apache完成相同的工作,但通常是针对不同types的内容服务。 我不太了解他们(我自己是Apache / IIS的人),所以我不知道为什么你会select一个。 我确信在serverfault上有很多关于你为什么会这样做的问题。
欲了解更多信息,请尝试在这里或这里或这里或这里或这里 。
CGI = Common Gateway Interface(通用网关接口),它最常用于在90年代(或任何预处理器)执行Perl和C脚本。 如果我错了,请纠正我。 PHP也作为一个CGI模块出现,它只是一个将PHP引擎暴露给HTTP守护进程的(老式的,慢速的)方式。
FastCGI = CGI的现代实现,显然是相当不错的。 这是IIS和Apache模块的ISAPI插件的替代scheme。
绝对没有理由build立第二台服务器来提供静态内容。 如果您正在提供图片,通常会有一个很好的做法,即让第二个子网域为您的图片提供服务,因为这意味着Cookie等无用的信息不会随IMG请求一起发送。 这个的有用性实际上取决于您的预期stream量水平。 你应该可以在Plesk中configuration它。