基于微服务架构的病原微生物数据分析平台设计与应用
2021-06-22徐建国田川
电子元器件与信息技术 2021年3期
徐建国,田川
(山东科技大学 计算机科学与工程学院,山东 青岛 266590)
0 引言
在Java Web开发中,中小型企业一般选择传统的MVC架构,这种单体应用架构开发方式在一个项目中包含了所有的业务逻辑[1]。在项目开发初期这种开发方式有利于项目功能的水平扩展,并具备一定的业务承载能力。首先,随着业务的扩大,系统的代码量会越来越大,耦合度会越来越高,系统变的难以维护、扩展。其次,随着服务量的不断增长,MVC架构的应用在一台机器一个进程里完成所有功能的运行模式无法满足高并发访问的需求[2-4]。
随着云计算平台的日益普及,云计算平台支持高性能的SaaS(Software-as-a-Service,软件即服务)应用,而微服务架构作为软件开发架构的演进方向之一,已成为一种SaaS应用在云平台的可行落地方案[5]。微服务的基本思想是将传统的单体应用按业务功能拆分为一系列可被独立设计、开发、部署、运维的软件服务单元,服务间彼此配合、相互协作以实现最终价值[6-7]。
现有的病原微生物数据分析平台采用了传统的MVC架构,随着用户与数据量的增多,单体架构已经远远无法满足现有的需求。本文将提出一套方案,将系统重构为微服务架构,本文后续章节组织如下,第1章节介绍了前后端分离解耦方案;第2章节介绍了数据库切分方案;第3章节介绍了平台功能服务化;第4章节介绍了系统重构后的软件架构;第5章节对工作进行了总结。
1 前后端分离
前后端分离是目前互联网项目开发的业界标准,通过nginx+tomcat进行前后端解耦,为之后的平台功能服务化打下坚实的基础[8-9]。……
登录APP查看全文
