表示层
表示层将会是一个使用React框架的网络前端。它会被部署成一套JavaScript和静态HTML文件。React框架相当新潮。你所在的企业可能不会使用React,但也可能会用例如Angular的其他框架来替代。不管怎样,从部署和构建方面来看,大多数的JavaScript框架都很类似。
业务层
业务层是一个使用Java平台上的Clojure语言实现的后端。Java平台在大型企业中非常流行,较小的企业可能倾向于使用其他基于Ruby或者Python的平台。我们的例子基于Clojure,有点儿合二为一的感觉。
数据层
在我们的例子里,数据库是用PostgreSQL来实现的。PostgreSQL是一个关系型数据库管理系统。它确实不像MySQL那么流行,大型企业可能喜欢用Oracle数据库。而PostgreSQL,在任何情况下都是一个健壮性很强的系统,这就是企业选择它的原因。
从一个DevOps的观点来看,这个三层风格起码在表面上看起来像那么回事。应该可以为这三层中的每一层单独地部署变更,这会让小变比较容易地部署上服务器。