转自环球旅讯

最近出了两起大的互联网安全事件,一是支付宝5月27日光纤被挖断,二是携程5月28日宕机。支付宝花了两小时把流量切换到其他机房与节点,而携程的用户硬生生的等了12小时。都是互联网公司,为啥两家的恢复速度却天壤之别?因为这是技术、架构与运维的全面考验与较量。这两次事件使得网站技术安全架构的重要性被充分体现出来了,只是我们平时没太重视。

在酒店信息化管理领域,PMS的技术架构同样也未被高度重视。对于动辄几百、几千个门店的连锁酒店,PMS的稳定与安全,会影响到每天几百万、几千万的营业额,影响到每天几万人、几十万人的预订、入住体验,影响到几千万会员的忠诚度。所以大中型连锁酒店不得不高度重视PMS的技术、架构与运维。

目前有很多大型连锁酒店自行开发系统,比如铂涛、易佰、维也纳、都市118、富驿时尚、城市便捷,各家养着几十人的开发团队,上百台服务器,花钱更多不说,IT部门比采用第三方软件更忙了,而且感觉更累了,很多方面还不太被认可。术业有专攻,酒店毕竟不是干互联网、干IT的,导致格局、架构、开放性考虑不周全,安全稳定性也不太满意。

笔者从事银行、电信等大型高并发、高可用系统架构以及互联网SAAS、中间件等系统开发、管理、架构十五年,尤其是有成功开发、部署与运维1万多个酒店用户使用的云PMSSAAS+PAAS平台经验,现抛砖引玉,分享经验,希望对酒店行业的各位同仁有所帮助。

那么,大中型集团连锁选择的PMS应该是什么架构,以及具备哪些特点呢?

一、灵活开放的架构,首选SAAS+PAAS,一定要基于SAAS+PAAS架构。

SaaS是Software-as-a-Service(软件即服务)的简称,随着互联网技术的发展和应用软件的成熟,在21世纪开始兴起的一种完全创新的软件应用模式。它与“on-demandsoftware”(按需软件),theapplicationservice provider(ASP,应用服务提供商),hosted software(托管软件)所具有相似的含义。它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器上,客户可以根据自己实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的服务多少和时间长短向厂商支付费用,并通过互联网获得厂商提供的服务。用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件。

ASP模式是SAAS之前流行的模式,相当于厂商购买服务器、开发应用,并单独给某个酒店品牌部署一套应用。看起来ASP也是基于Internet的,但是他可能就是一套给小连锁酒店或单体酒店用的web系统,其实该厂商用的技术要求低,安全性、高可用性、可伸缩性等方面的考虑比SAAS差得远。

对于真正的SAASPMS来说,支持100个门店是道坎,支持100个连锁品牌又是一道坎,支持10000个门店是一道更高的坎。

PAAS让SAASPMS系统变为灵活的、可插拔的,可以轻松接入其他系统,比如HR、CRM、OA等系统,让酒店的前台、销售、财务、店长在PMS系统中无需升级、一个账号密码、不知不觉中享受到HR、OA等各种系统的功能与服务。一套SAAS支持PAAS,对于SAAS厂商可以免去大量的定制的烦恼、把独立的模块交给更擅长的厂商;对于有开发实力的酒店,可以自行定义,扩展功能;对于第三方系统开发商,如HR、OA开发商,可以调用SAAS厂商的API接口,开发出新的整合应用,比如获取销售发展会员数据,计算销售员业绩,自动修正HR系统里的工资,并在PMS的某个页面里显示每个销售人员的绩效工资、全部工资、交税额、实发功能等等。

二、必须能保障高安全性。

再多的功能、再好的用户体验,对于PMS来说,安全是基础,客人数据泄露了是天大的事,不仅仅客人投诉,品牌也受损。像前几次某上市连锁酒店的数据泄露,是酒店与客人的一大灾难。对于上市的连锁酒店,股票会连续几天往下跌,市值下降几个亿都是有可能的,可见安全性多么的重要。

数据中心化,如果每个门店有数据库或系统,极为不安全,酒店的经营数据和会员数据可能被黑客或竞争对手在门店非法获取;要设置分级授权,在操作界面上不能随意查到或导出所有会员,不能随意用客人的积分、储值。

选择WindowsorLinux?全世界80%的网站用的Linux/Unix服务器,BAT、京东、电信、银行无一不是几乎全部用的Linux/Unix服务器。Linux/Unix比Windows当服务器操作系统安全性高一个等级。

开源软件,全世界70%的网站用的LAMP架构。LAMP架构是指Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。后来由于J2EE(JAVA)的良好机制,为搭建具有高可用性、高可伸缩性、支持异构环境、分布式的大型网站提供了另一重要选择。大量巨头网站,比如淘宝、京东就是用J2EE(JAVA)搭建的。

不用盗版,使用盗版会经常收到律师函,如果被公开,对声誉和品牌影响非常大,上市公司影响就更大。其实大量开源软件已经完全足够搭建整个集团连锁酒店使用的各种系统(包括PMS、CRS、网站、微信应用、APP、OA、HR)所需要的运行环境和开发需要的组件。

三、必须具备高可用性和高可扩展性

要做到99.9%的高可用性,也就是一年只有8个小时用不了。像5月底携程宕机12小时,大大拉低了携程网的高可用性。

SAAS系统发展进化的一般规律是,刚从C/S架构的系统改为SAAS,前半年在做功能开发、完善,高可用性最多只能达到95%,每周系统至少会宕一次;第二个半年在不断的接入种子用户,当种子用户达到200个不同品牌时,产品有很大的适应面和通用性,每两周-四周系统都会宕一次,高可用性可达到98-99%;第三、四个半年随着用户数呈指数式攀升后,系统性能和瓶颈不断暴露,不断优化,每两月系统都会宕一次,高可用性可达到99.9%。宕机后的恢复速度在每个阶段也很不一样,刚开始的半年、一年会要几个小时-一天,随着架构的完善、运维团队对各种问题诊断的熟悉和对各种部署组成部分调优的熟悉、运维制度的完善,可缩短到几分钟。

总之,没有两年时间,没有一万用户,一个SAASPMS系统不可能成熟起来。

为了达到99.9%的高可用性,必须:

1)新版本上线前要做严谨的功能测试、性能测试,并有自动化的单元测试和功能测试保证之前的稳定功能不被破坏;

2)把握上线版本的品质、时机和灰度上线;

3)路由服务器、应用服务器、缓存服务器、消息中间件服务器和数据库服务器应该分离部署,并做负载均衡,自动健康检查,防止单点故障;

4)做异地容灾。当一个机房节点的服务器、网络设备出问题或者光纤被挖断时,自动或经数据校验后切换到另外的机房节点,就像支付宝一样干得漂亮;

5)高可扩展性可以保障酒店在增加门店时不用慌张、节假日和促销的突发流量不用紧张,因为几分钟可购买、开通十台服务器,1小时可准备好环境并上线搞定海量流量。

四、强运维能力也很关键

大中型连锁酒店PMS系统的运维必须具有严格的运维制度,7*24实时监控与健康检查,提前发现与防范,灾难故障防范并演习,数据库崩溃、攻击、域名问题等突发情况应对能力。

从本文介绍的架构知识来看,PMS的门槛还是有的,尤其是云计算PMS,不是十余人的技术团队,不是一两年的打造,就可以做起来的。

互联网是平的,互联网技术、移动互联网技术发展神速,瞬息万变,要做到良好的、有竞争力的架构还是比较难的。