参考:《面向模式的软件架构:分布式计算的模式语言》
语言的极限就是世界的极限。--- Ludwig Wittgenstein
关于分布式系统的模式一共有114个,分为13组问题域。
模式.jpg
1. 从混沌到结构
分布式的基础模式,从无到有。
属于这种的模式有:Domain Model、Layers、Model-View-Controller、Presentation-Abstraction-Control、Microkernel、Reflection、Pipes and Filters、Shared Repository 和 Domain Object。
2. 分布式基础设施
描述了中间件相关的模式,使用中间件来简化分布式系统中的应用开发。
属于这种的模式有:Messaging、Message Channel、Message Endpoint、Message Transtator、Message Router、Broker、Client Proxy、Requestor、Invoker、Client Request Handler、Server Request Handler 和 Publisher-Subscriber。
3. 事件分离和分发
即事件驱动的内核。不管多么复杂的通信模型,比如请求-相应、异步消息或发布/订阅传播机制,分布式计算的核心都仍然是处理和相应网络中接收到的时间。
属于这种的模式有:Reactor、Proactor、Acceptor-Connector 和 Asynchronous Completion Token。
4. 接口划分
接口是一个组件的“名片”,应当清楚的反应组件的职责和使用协议,让客户端避免由于组件实现的变动和升级而受到影响,客户端还可以用它来了解组件的功能和协议。
关于组件以及接口的概念,可以参考:组件、接口、类、对象之间的关系
属于这种的模式有:Explicit Interface、Extension Interface、Introspective Interface、Dynamic invacation、Proxy、Business Delegate、Facade、Combined Method、Iterator、Enumeration Method 和 Batch Method。
5. 组件划分
组件是基本实现单元,它为客户端提供定义清晰的服务。虽然客户端通常不关系组建的内部设计,但是组件的划分会严重影响其对外部可见的质量特性,如性能、可伸缩性、灵活性、可用性以及容错性。
属于这种的模式有:Encapsulated Implementation、Whole-Part、Composite、Master-Slave、Half-Object plus Protocol 和 Replicated Component Group。
6. 应用控制
TODO: 图书馆不让结束了,先到这里吧
网友评论