平台上线后,随着使用时间的增长,会产生大量的业务数据,当这些数据积累到一定数量级时,由于服务器的承载能力有限,势必会影响系统的整体运行效率,出现界面打开迟钝、查询统计速度缓慢等,最终影响业务开展,低效的系统运行成为限制业务开展的瓶颈。根据业务及管理要求,检测数据必需在系统内长期留存备查,所以不能靠删除数据来解决系统运行速度日趋缓慢的问题,购置新服务器不仅价格昂贵而且无法从根本上解决问题。
为解决这些问题,平台采用了微服务架构。在微服务架构下原有的单个系统,被拆分成多个可独立设计、开发、运行和运维的小应用,这些小应用通过服务完成交互和集成,每个小应用从前端Web UI到逻辑层、控制层、数据库的访问都是独立的一套。
微服务架构优势:
-
提升系统响应速率。微服务架构下,把单个服务通过Docker容器分割成多个独立服务,每个小应用单独链接自己的数据库,单独启用自身服务,各个服务之间通过限流、负载均衡、熔断、降级、重试等机制能有效保证系统的响应速率。
-
提升系统稳定性:可把整个系统部署于多个虚拟服务器/私有云中,通过负载均衡、重试机制满足系统稳定性需求,同时系统采用JAVA开发,JAVA最大的好处就是跨平台,可把系统部署与Windows、Linux、Unix等不同操作系统服务器中,可保证服务器7*24小时不间断文档运行;提供灵活、高效的备份和恢复策略,确保系统安全性。
-
便于升级扩展。系统各个功能模块彻底松耦合,增加新的功能模块或部分功能模块升级,不会影响整个系统的运行。
-
便于维护。微服务架构下,技术选型是去中心化的,为在采用单体式编码方式下很难实现的功能提供了模块化的解决方案,由此,单个服务很容易开发、理解和维护。
-
高可用性,有机器故障,不影响系统正常运行。