位于加拿大的食品分销商Epicure正在为访问流量烦恼。这家公司旗下的两个网站在每月最后几天都将遭遇访问的峰值,IT系统往往不堪重负而导致网站无法正常访问。Epicure曾经采用过第三方托管的方式来解决问题,但并未见好转。Epicure的业务模型非常倚重这两个网站,其中一个主要销售食品和餐具厨具,另外一个网站主要面向销售Epicure产品的独立“顾问”。
Epicure的高级架构师RussellBorn为了让网站能够在月末保持稳定的运行,他在去年进行了一系列的研究,并最终选择了SIOSTechnology(赛欧思)的产品,包括DataKeeper 数据复制软件与SANLess集群工具。SIOS的解决方案能够让用户避免不必要的停机时间,同时能够利用本地存储来搭建一个Windows或Linux服务器集群,无需再额外部署一个存储区域网络(SAN)。
“在此之前,我认为SAN会是一个必需品,”Born说:“SIOS还支持基于SAN的集群,但如果选择这个方式,Epicure势必会遇到一些困难。因为SAN的成本比较高,而且搭建过程比较耗费精力。最重要的是它有单点故障的问题,整个系统必须依靠它来运转。避免单点故障可以部署多个SAN,但这对于Epicure来说成本太高了。”
故障转移与灾难恢复
Epicure改造网站架构的想法不单单是为了稳定运行,它还采用了SQL Server数据库来处理订单并进行跟踪。在Born接触SIOS解决方案之前不久,Epicure的数据中心还经历了故障停电,这次停电持续了数小时。“整个网站没有进行冗余设计,也没有外部的故障转移机制,这让我们很被动。”Born说。
Epicure部署了两台服务器,每台服务器用来支撑一个网站,而且资源使用率达到了极限,这也是月末峰值问题的罪魁祸首。除了SIOS之外,Epicure还使用了AWS的云服务。如今Epicure的架构包含了运行在数据中心内部的Web服务器,一个基于云的故障转移系统,SIOS软件负责在两个系统之间进行数据的复制。与此同时,Epicure还将SQL Server 2008升级到了SQL Server 2012,把Windows 2008升级到了Windows 2012。
SIOS公司的首席运营官Jerry Melnick表示,Epicure非常关注灾难保护与恢复,这是他们选择架构改造的一个初衷。这两个网站承载了Epicure的全部业务,用户通过网站下订单。如果真出现了重大故障,可能会需要很长时间才能恢复。
确保高可用的一个常见方式就是进行异地备份,如果主数据中心宕了,可以快速转移到另一个备用数据中心。但Melnick认为这样做的方式是比较昂贵的,他建议Epicure考虑云服务商来进行灾难恢复,比如AWS。
降低软件成本
Born介绍,将两台服务器集中到一台主服务器,对于Epicure来说还有一点好处就是节省了软件许可的成本,因为DataKeeper是以服务器数量来收取许可证费用的。
在采用SIOS之前,Epicure还是用了SQL Server企业版数据库,因为只有企业版才自带高可用性选项。而在使用了SIOS之后,Epicure将SQL Server改为了标准版,在确保高可用性的前提下,这能节省很大一笔费用。
根据Born介绍,Epicure在使用SIOS软件的时候并没有出现问题,只需要打一个电话就可以获得SIOS的全部技术支持。“我们整个的迁移过程是非常无缝平滑的,”Born说:“我对SIOS软件非常满意,它对我们整体的架构以及SQL Server系统帮助很大。”
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
翻译
相关推荐
-
案例:eBay利用MongoDB优化搜索
eBay使用MongoDB来执行众多涉及大量数据的任务。这些项目包括搜索建议,云管理、元数据存储和商品的分类等。
-
新浪微博对HBase在线业务稳定性保障的一些思考
自2012年微博平台在本厂率先使用HBase做在线业务以来,HBase目前已在本厂广泛使用,最大的集群单集群就有三四千亿条记录。
-
如何在一台服务器上安装两个PXC集群节点
我认为在单个物理服务器上运行2个或多个Percona XtraDB Cluster(PXC)节点这样没有什么意义,除了教育和测试目的,但在这种情况下这样做仍然是有用的。
-
SQL Server硬件选择不能犯的几个错误
建立全新的SQL Server系统可能比较棘手。SQL Server是真正注重利用硬件的产品,它的性能跟你如何配置服务器有很大的关系,尤其是如何配置你服务器的存储子系统。