003--微服务开始
2020-07-05 本文已影响0人
糖纸疯了
1、写作背景
在此记录,以备遗忘,本课学习基于:http://www.qfdmy.com,感谢原创作者分享!
2、核心操作
2.1、微服务展望
2.2、全局异常处理
2.3、分层领域模型
2.4、分层架构模型
3、操作记录
3.1、微服务展望
3.1.1、微服务部署方式
后续基本使用jar包进行打包,依托于SpringBoot能力
如果服务是持久层,对因硬盘磁盘的要求高一些,IO/吞吐量要求高一些
如果服务是业务层,对CPU要求高一些
==>通过分层架构可以对服务器的配置有更好的了解
3.1.2、三种网络设置
1)桥接模式
2)NAT模式
3)主机模式
桥接模式:可以理解成类似桥梁一样,可以直接直接进行外部挂载,路由器不感知,以为是真实的设备进行IP分配
桥接模式主机模式:和主机共享同一个IP地址
主机模式NAT模式:是宿主机内部的虚拟IP,如果109设备要访问虚拟网络,可以使用端口进行映射【访问宿主机8080端口映射到虚拟机的8080】
NAT模式
3.2、全局异常处理
1)全局系统异常
- HTTP 状态码:500 内部服务器异常
- API 网关层捕获并抛出->JSON
2)全局业务异常
- 自定义异常
- DAO
- Service
- Manager
- Controller[一定是成功的]
3.3、分层领域模型
《阿里巴巴Java开发规范》关于领域模型的部分介绍如下:
DO(Data Object):此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。
DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
BO(Business Object):业务对象,由 Service 层输出的封装业务逻辑的对象。
AO(ApplicationObject):应用对象,在Web层与Service层之间抽象的复用对象模型, 极为贴近展示层,复用度不高。
VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象。
Query:数据查询对象,各层接收上层的查询请求。注意超过 2 个参数的查询封装,禁止使用 Map 类来传输。
- 分层领域模型转换
开发时转换工具参考:https://blog.csdn.net/w605283073/article/details/89715188