上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.1.1 单体架构
我是在2008年的时候开始学习Java的,那时候主要学习Spring、Struts、Hibernate、MySQL等技术。当时学完以后,开发了一个商城系统作为毕业项目,如图1-1所示。
图1-1 商城系统架构图
整个系统的架构非常简单,使用Spring+Struts+Hibernate构建一个基础工程、MySQL数据库作为持久化存储,在这个工程中创建不同的Service实现商城中不同的业务场景,如账户、库存、商品等。最后把项目构建成一个war包部署在Tomcat容器上即可使用,这应该是很多学习Java开发的同学都有过的经历。
通常来说,如果一个war包或者jar包里面包含一个应用的所有功能,则我们称这种架构为单体架构。
很多传统互联网公司或者创业型公司早期基本都会采用这样的架构,因为这样的架构足够简单,能够快速开发和上线。而且对于项目初期用户量不大的情况,这样的架构足以支撑业务的正常运行。