位于加拿大的食品分销商Epicure正在为访问流量烦恼。这家公司旗下的两个网站在每月最后几天都将遭遇访问的峰值,IT系统往往不堪重负而导致网站无法正常访问。Epicure曾经采用过第三方托管的方式来解决问题,但并未见好转。Epicure的业务模型非常倚重这两个网站,其中一个主要销售食品和餐具厨具,另外一个网站主要面向销售Epicure产品的独立“顾问”。
Epicure的高级架构师RussellBorn为了让网站能够在月末保持稳定的运行,他在去年进行了一系列的研究,并最终选择了SIOSTechnology(赛欧思)的产品,包括DataKeeper 数据复制软件与SANLess集群工具。SIOS的解决方案能够让用户避免不必要的停机时间,同时能够利用本地存储来搭建一个Windows或Linux服务器集群,无需再额外部署一个存储区域网络(SAN)。
“在此之前,我认为SAN会是一个必需品,”Born说:“SIOS还支持基于SAN的集群,但如果选择这个方式,Epicure势必会遇到一些困难。因为SAN的成本比较高,而且搭建过程比较耗费精力。最重要的是它有单点故障的问题,整个e统必须依靠它来运转。避免单点故障可以部署多个SAN,但这对于Epicure来说成本太高了。”
故障转移与灾难恢复
Epicure改造网站架构的想法不单单是为了稳定运行,它还采用了SQL Server数据库来处理订单并进行跟踪。在Born接触SIOS解决方案之前不久,Epicure的数据中心还经历了故障停电,这次停电持续了数小时。“整个网站没有进行冗余设计,也没有外部的故障转移机制,这让我们很被动。”Born说。
Epicure耸鹆肆教ǚ务器,每台服务器用来支撑一个网站,而且资源使用率达到了极限,这也是月末峰值问题的罪魁祸首。除了SIOS之外,Epicure还使用了AWS的云服务。如今Epicure的架构包含了运行在数据中心内部的Web服务器,一个基于云的故障转移系统,SIOS软件负责在两个系统之间进行数说母粗啤S氪送时,Epicure还将SQL Server 2008升级到了SQL Server 2012,把Windows 2008升级到了Windows 2012。
SIOS公司的首席运营官Jerry Melnick表示,Epicure非常关注灾难保护与恢复,这是他们选择架构改造的一个初衷。这两个网站承载了Epicure的全部业务,用户通过网站下订单。如果真出现了重大故障,可能会需要很长时间才能恢复。
确保高可用的一个常见方式就是进行异地备份,如果主数据中心宕了,可以快速转移到另一个备用数据中心。但Melnick认为这样做的方式是比较昂贵的,他p议Epicure考虑云服务商来进行灾难恢复,比如AWS。
降低软件成本
Born介绍,将两台服务器集中到一台主服务器,对于Epicure来说还有一点好处就是节省了软件许可的成本,因为DataKeeper是以服务器数量来收取许可证费用的。
在采用SIOS之前,Epicure还是用了SQL Server企业版数据库,因为只有企业版才自带高可用性选项。而在使用了SIOS之后,Epicure将SQL Server改为了标准版,在确保高可用性的前提下,这能节省很大一笔费用。
根据Born介绍,Epicure在使用SIOS软件的时候并没有出现问题,只需要打一个电话就可以获得SIOS的全部技术支持。“我们整个的迁移过程是非常无缝平滑的,”Born说:“我对SIOS软件非常满意,它对我们整体的架构以及SQL Server猛嘲镏很大。”