技术交流:和韩永东大哥聊天 之 OSGI
OSGI
- 面向“组件”编程的一种延伸。
- 面向接口编程在“组件”层次的应用。
- 管理“组件”的生命周期(加载、启动、停止、卸载)。
- 实施OSGI的真正意义是合理的管理组件之间的依赖关系,甚至"强迫你做出合理的依赖"。
ESB
- 实现了基于”消息“的应用层组织模式。
- 支持消息的”路由配置“,可以”编排“指定的消息经过哪些”组件“。
- 可以实现类似”应用事件“的功能,但是其支持其它更多功能。
IOC
- 管理”组件“中服务的注册、获取及其生命周期管理,有些容器提供更多扩展。
DDD
- 是应对复杂性而生的中模式。
- 其分上下文、分层、分区、分聚合,都是应对复杂性的更细粒度的模式。
- 这种分割,最终要落实到”组件“层面,就用OSGI进行管理。
- 应用程序的最终装配,就用IOC进行管理。
- 应用层多了一种组织模式(ESB)。
- 总的来说:OSGI、ESB、IOC在技术层面为DDD提供了支持。