假设,我想开发堆栈溢出网站。假设每天有100万次请求,我如何估算支持该网站所需的商品硬件数量。在这种情况下,是否有任何案例研究可以解释性能的改进?
我知道I/O瓶颈是大多数系统的主要瓶颈。提高I/O性能的可能选择是什么?我认识的人很少
发布于 2010-01-14 20:29:50
您可以通过多种方式提高I/O性能,这取决于您在存储设置中使用的是什么:
您可能想看看StackOverflow体系结构的“经验教训”部分。
发布于 2010-01-14 20:19:19
看看这个方便的工具:
http://www.sizinglounge.com/
还有戴尔的另一份指南:
graham?c=us&l=en&cs=555
如果您想要您自己的类似堆栈溢出的社区,您可以注册StackExchange。
您可以在这里阅读一些案例研究:
高可伸缩性- Rackspace现在如何使用MapReduce和Hadoop来查询兆字节的数据http://highscalability.com/how-rackspace-now-uses-mapreduce-and-hadoop-query-terabytes-data
http://www.gear6.com/gear6-downloads?fid=56&dlt=case-study&ls=Veoh-Case-Study
发布于 2010-01-14 20:46:04
每天有100万次请求,12次/秒。堆栈溢出足够小,您可以(使用有趣的规范化和压缩技巧)完全适合64 GByte戴尔PowerEdge 2970的内存。我不知道缓存和复制应该在哪里发挥作用。
如果您在考虑标准化时遇到了问题,那么可以使用256 is的PowerEdge R900。
如果您不喜欢单一的故障点,您可以连接其中的几个,只需将更新推送到套接字上(最好是在单独的网卡上)。即使是12K/秒的峰值负载也不应成为主存系统的问题。
避免I/O瓶颈的最好方法是不做I/O (尽可能多)。这意味着具有批写(丢失几秒数据没有问题)的类似prevayler的体系结构,基本上是一个日志文件,而且对于复制来说,也可以将它们写到套接字中。
https://stackoverflow.com/questions/2067262
复制相似问题