最近刚开始接触了多模块开发部署,见到了两种模块的划分方式,
- 一种是将三层架构的每层单独写成一个模块,也就是dao层,service层,web层再加util等
- 另一种是按照系统的功能模块将项目分为诸如管理员模块、用户模块等
想问一下,一般的模块都是怎么划分的,感觉好像第一种用的更多一点,但是又觉得第二种好像也不错
- 普通、贫穷,项目规格小,用第一种;
- 客户量大、有钱,项目庞大,用第二种。
第二种的里面也是第一种,第二种就叫做,微服务,可以演变成分布式。基本相当于分几个模块就部署几个项目【个别作为公用model包就不用单独部署】。
用微服务的话,几十几百项目一台电脑跑不起来的,需要很多服务器,量力而行。
对于很多项目来说,你说的两种模块划分,属于父子关系。
首先根据业务,比如管理员、用户、支付、物流等进行划分,然后再在每个业务中进行功能的划分,每个模块下都会包含dao、service、entity等