重构现有的应用程序
•重构的地方
§每个REST服务都可能是微服务
每个SOAP Web服务或EJB都可能是一个微服务
- 尤其是无状态会话bean
- 重新设计面向资产界面的功能导向界面
- 使接口RESTful,如使用命令对象
§使用领域驱动设计来发现您的资产,这可能是微服务
•重构微服务代码的数据
§每个微服务管理自己的数据
§一组仅供一个模块使用的表格
§只在特定时间使用的一组表格,例如每日状态摘要
§重构表格,以便每个表格仅由一个模块使用
优化查询时间,而不是存储效率
重新包装现有的应用程序
•分割您的EAR文件
§划分功能线
§打包独立的WAR文件
§可能需要稍微更改代码
•分别部署每个WAR文件
§自己的Liberty for Java即时运行时
§它自己的Docker容器
•分别构建,部署和管理
§为每个管道使用独立的DevOps管道
WAR文件
§分别缩放并独立管理
重构微服务的数据
•主数据管理
§对广泛使用的数据实体形成一个统一的视图
§开发用于处理的微服务
•代码在您的SQL数据库中存储Blob
§将这些对象存储在No SQL数据库中
§键值存储,如Redis或数据缓存
•活动记录模式:与其他人无关的扁平物体
§与其他数据无关的数据岛
§使用文档模型数据库,例如Cloudant或Mongo
微服务的配置
使配置成为DevOps流程的一部分:
§将基础架构视为代码,软件定义的数据中心
§所有应用程序部署必须自动化
§从简单的脚本开始,从那里开始构建