我们有一个用PHP开发的MySQL网站,当流量增加时有时会遇到问题.我们几乎以各种方式优化了网站以处理更多请求,但在高峰时段仍然面临问题.
我的一位朋友建议使用HBase/MongoDB作为后端重建网站以提高性能.他还建议,如果我们重建它,我们可以轻松转向云服务.但我们需要学习整个事物并重新开发它.
这样做更好吗?
首先要做的是分析您的Web应用程序以确定瓶颈是什么.
如果它肯定是对数据库的查询,那么用mongodb替换mysql 可能是一个好主意,但文档数据库的工作方式与关系数据库不同,并且您可能无法移植某些类型的功能.如果你决定尝试mongo,早期和经常原型,因为没有服务员,你会更快.
如果可伸缩性确实对您来说是一个问题,那么为什么不直接进入基于云的Web架构,如谷歌应用引擎.这是基于java或python和文档数据库(bigtable),但从一开始就迫使您进入可扩展的"云"架构.
另一种选择是简单地引入(或优化)缓存(使用内存缓存) - 这将对您的应用程序产生较少的体系结构影响,因此需要花费更少的精力.