Skip to content

63 基于Spring Boot的单体架构

你好,我是周志明。

单体架构是Fenix's Bookstore服务端的起始版本,它与后面的基于微服务(Spring Cloud、Kubernetes)、服务网格(Istio)、无服务(Serverless)架构风格实现的其他版本,在业务功能上的表现是完全一致的。

所以,如果你不是针对性地带着解决某个具体问题、了解某项具体工具或技术的目的而来,而是有比较充裕的时间,希望了解软件架构的全貌与发展的话,我就推荐你从这个工程入手,来探索现代软件架构。因为单体架构的结构相对来说比较直观和易于理解,这对后面要接触的其他架构风格,也可以起到良好的铺垫作用。

运行程序

好,同样地,我们可以根据以下几种途径来运行程序,看看它的最终效果是怎么样的。

  • 通过Docker容器的方式运行:
$ docker run -d -p 8080:8080 --name bookstore icyfenix/bookstore:monolithic

然后在浏览器访问:http://localhost:8080,系统预置了一个用户(user:icyfenix,pw:123456),你也可以注册新用户来测试。

这里默认会使用HSQLDB的内存模式作为数据库,并在系统启动时自动初始化好了Schema,完全开箱即用。但这同时也意味着当程序运行结束时,所有的数据都不会被保留。而如果你希望使用HSQLDB的文件模式,或者其他非嵌入式的独立的数据库支持的话,也是很简单的。