已关闭。此问题为opinion-based。当前不接受答案。
**想要改进此问题吗?**请更新此问题,以便editing this post可以用事实和引文来回答。
21小时前关门了。
Improve this question
客户要求我提供一个基于TYPO 3的网站,参数如下:
- 少量内容(约50页)
- 极小变化频率
- 平均可用性约为95%/天
- 20%的页面受限,仅在登录后可用
- 无需花哨的Typo 3扩展或其他功能(仅Typo 3内核)
- 中等大小页面
- 仅包括有限的数字资产(图像等
我需要建立一个基础设施来服务于1000个并发用户,假设平均思考时间为30秒,这将导致每秒33个请求。
基础架构应该是什么样的?
我知道系统扩展是一项非常独立的任务,具体取决于系统的实现,并且需要测试,但我需要首先指出从哪里开始(单个服务器、将组件分离到不同的服务器...)。
你知道吗?
4条答案
按热度按时间ulydmbyx1#
更简单的解决方案是EXT:nc_staticfilecache,它将静态页面保存为HTML,然后Web服务器通过重写规则自动交付它们(Apache通过mod_rewrite),这对于静态内容非常有效,应该已经可以让您达到〉100req/s的速度。
更好的方法是使用Varnish Cache. Varnish是一个反向代理服务器,它将您的网站内容保存在内存中,并且可以在专用主机上运行。(发送正确的缓存标头!),它满足您的线速要求(几百万个请求/秒)。还有TYPO3扩展moc_varnish,其例如清除清漆缓存,当页面在TYPO3中更改时。还支持边缘侧包含,例如,仅从TYPO3检索用户特定的数据,并使用来自清漆缓存的页面的静态部分(除"* 欢迎用户Foo Bar *"之外的所有内容..;)).
如前所述:不要忘记为你的资产配置正确的缓存头(过期等)。这已经从你的网络服务器上移除了一些负载。
djmepvbi2#
这是很有可能的,已经做了这样的东西。你需要至少一个专用服务器与〉= 8GB的内存。
如果我们谈论基础设施,最小组合是:
在这种情况下,性能优化非常重要。
一些链接供进一步阅读:
ehxuflar3#
我会把它放在一个专用服务器上(或者很好地指定VPS),但是可以将所有静态资产保存在第三方CDN上,这样你就可以专注于动态的东西。我不知道Typo 3,但是看不出有什么理由你不能将你的数据库放在同一个服务器上,以达到这种使用水平--肯定有各种各样的缓存选项。或者可以考虑云服务器,所以如果你需要更多的魅力,只要添加更多的资源。
编辑:我不认为建立一个可扩展的架构是一个好主意,例如代理服务器和所有的东西。如果它是缓慢的,你发现你真的不能科普一台机器,在这一点上扩大。我的观点是,你可以用一个简单得多的架构给你预期的流量。
l0oc07j24#
我会考虑一个虚拟的sserver或ksm,以及一个好的mysql和php配置。当我有一个ksm,我会调整Linux和使用iptables流量整形。一个专用的根服务器会很好,但它的昂贵。然后我会考虑使用nginx或lighttpd网络服务器与eaccellerator和memcache。如果没有t help我会尝试使用优化标志编译php和mysql,或者尝试使用英特尔C编译器编译。ICC可以比gcc更好地优化C代码。如果服务器有很多内存,我会使用ramdisk。