摘要: 背景 以阿里云为代表的云计算平台的出现,给IT系统的运维带来了巨大的便利,我们的项目在14年创立之处就在使用阿里云的ECS。2016年度,我们借助单台ECS实例和精心设计的软件系统,跑出了接近1个亿的销售额,但随着业务规模的快速扩展和IT系统的演进,运维架构也做出了较大的调整。
以阿里云为代表的云计算平台的出现,给IT系统的运维带来了巨大的便利,我们的项目在14年创立之处就在使用阿里云的ECS。2016年度,我们借助单台ECS实例和精心设计的软件系统,跑出了接近1个亿的销售额,但随着业务规模的快速扩展和IT系统的演进,运维架构也做出了较大的调整。
业务分拆的方法有很多,微服务架构是其中一种不错的思路之一。但分拆的原则,是先分拆一般但数据量较大的业务模块,其次才会对核心业务模块分拆。
懒猪行S2B系统中的一个比较典型的例子,是消息盒子。最初的设计思路是将其与主体系统耦合在一起,并且把数据与业务数据一起放到MySQL中。但后续评估数据量时,发现消息盒子产生的巨大数据量,占用业务系统的数据库IO开销,对业务稳定性存在潜在的威胁。于是我们决定将其分拆到单台独立的ECS实例中运行,数据库改用Redis,与主业务系统之间通过API接口交互数据。
作为一个面向B端商家的跨境旅游项目,要优先保障国内分销商家的访问,同时也要保障境外地接社和游客的访问。
在早期的方案中,我们将服务器放在香港,同时对大陆和境外访问。但随着业务的增长,大陆与香港之前的公网状况已经不允许我们这么做,于是我们把数据迁回大陆,在香港和大陆之间架设专线,然后通过香港的Nginx反向代理把境内服务器转发出去,这样同时满足了境内和境外的访问要求。
作者信息:刘远程,杭州懒猪行Co-founder兼CTO。知名信息安全企业产品经理出身,曾多次创业并担任技术总监和CTO,具有丰富的互联网产品设计、开发和团队管理经验。
用云栖社区APP,舒服~
来源: https://yq.aliyun.com/articles/208223