400-600-9585
QQ咨询 联系我们
官方微信扫一扫

【峰会分享】宋庆磊:应用互联网技术构建企业信息化架构

2018/07/06百胜软件

本文根据宋庆磊在“2018百胜软件技术峰会”中演讲内容分享整理。
企业信息架构演变
随着社会的发展,单一应用已经无法满足企业发展需要,企业信息化应用呈现出集成化、移动化、智能化的趋势,服务式的应用架构以及分布式服务框架势在必行,用户亟需一个治理确保架构有条不紊地演进。
 
先来说说最开始的单一应用架构。有些企业的内部,包括OA、CRM都是单一应用。单一应用是伴随着业务需求成长起来的,将单一业务部门所需功能都部署在一起,以减少部署节点和成本。这种应用适用于使用量不大的情况,缺点是整个应用负载能力相对有限,应用臃肿,维护成本相对比较大。
随着访问量的逐渐增大,单一应用通过增加机器性能带来的性能提升空间越来越小,通过应用拆成互不相干的几个应用,以提升效率。于是垂直应用架构由此诞生,但依旧没有解决应用臃肿的问题,业务逻辑处理和界面交互的代码还是在一起。
 
当垂直应用越来越多,应用之间交互不可避免,此时出现了将核心业务抽取出来作为独立的可以复用的服务,使前端应用能更快速的响应多变的市场需求。服务式应用架构由此出现,架构变得更加清晰,利于升级和维护,稳定性高。
 
再就是分布式服务架构的出现。当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。分布式服务架构是开放式、标准化的框架,满足接口调用的服务都可以接入服务框架(RPC)监控服务调用情况,可进一步对服务层再分层,根据业务需求和对服务运行情况对服务进行编排和梳理,以及服务治理。
 
百胜软件企业中台在时代的发展下应用而生,能确保服务式应用架构及分布式服务框架的有效运行,助力企业信息化发展与升级。百胜软件的中台技术架构可以分为四层:资源层、公共服务层、应用层、用户访问层。聚焦于公共服务层来看,有开源的核心技术层;有订单、库存、营销等业务封装起来的核心业务层;在此之上,还有一些服务,形成了行业层服务,针对鞋服、珠宝、日化等行业。这样的分层体系相对来说比较清晰,具备较强的专业度,同时能够聚焦不同行业。

 
百胜软件中台技术能力
基于这样的中台架构,百胜软件中台有如下的关键技术能力。
 
分布式服务管理。通过分布式服务管理,统一RPC调用框架,SOA化,满足业务的快速变化需求,从技术提升上开发人员开发效率,保障开发质量。
 
服务监控管理。可以对服务进行有效的监控,这样很容易发现哪些服务是存在并发压力的,哪些服务会容易产生故障等等。更深入地,可以把服务监控到在哪个时间段,针对哪个物理区域的服务器。还可以针对服务服务器,监控它的整体资源的情况。
 
异步解耦。电商在双“11”等活动期间,在大量的活动面前,会出现订单一下子爆发崩溃的情况。通过基于MQ的消息机制,把同步的机制解耦变成异步机制,保障在电商营销活动以及门店大促时,当流量洪流突然来袭时,可以缓冲订单洪峰,避免崩溃。
 
数据缓存。很多网站还有其他方式,订单处理都要去访问数据库库存这张表,进行频繁的访问并交互,数据库的压力显而易见。如果再遇上活动期间订单量的急剧增加,数据库的压力将传导到上,导致卡顿,变得特别慢或者崩溃。而数据缓存技术可以通过缓存减少数据库读写压力,通过内存计算提高计算效率。
 
数据库水平拆分。单表的业务容量到千万级或者更高的时候,就需要对表进行拆分。现在有一些工具能帮我们进行这样的水平拆分,当然具体如何拆分,还要跟我们的业务规则结合。
 
技术开放共享。我们希望百胜的中台技术未来是能给我们的合作伙伴开放共享的,希望跟我们的合作伙伴一起去推动这个体系,不断优化完善。
 
持续集成与发布。互联网之所以发展迅速,主要在于其工作方法的不同,能把从后端、开发等整个过程的效率做到极致,不出错、少出错,比人工的效率更高。在这个过程中,就要解决持续集成与发布的问题,大概包含编译打包、代码检测、自动化测试、部署/安装四块内容,实现无人工干扰,真正给企业解决问题。
 
DevOps支持。关于DevOps,百胜软件已经把里面包含的市场工具、脚本等都准备好了。而百胜软件中台能把这套能力也下沉给客户,让企业获得更好的发展。
 
自动化测试。百胜软件比较多的都拥有自动化构建能力,不仅仅是百胜软件中台。去年,百胜软件自动化测试团队开始建立起来,百胜自动化测试框架已经成熟并且在百胜软件各线广泛使用,到目前为百胜所有web都建立了自动化测试脚本,自动化测试每天都在运行保证质量。