第七天-《企业应用架构模式》-分布策略

221 阅读2分钟

1. 分布对象的诱惑:

中间件的对象分布对上层透明崔然非常有用,但跨进程、跨机器(还有网络)调用,影响性能!

2. 远程接口和本地接口:

  1)远程访问的对象需要使用粗粒度接口,而本地访问的对象需要使用细粒度接口(优化性能时,本地接扣可以提供粗粒度对象)

  2)基于1),就不能把在单进程中设计的类原封不动地搬到分布模型环境中

  3)分布对象设计第一定律:不要分布使用对象!

  4)怎样有效利用多处理器资源:使用集群系统(在每个处理器上都部署所有对象,每个处理器上的对象都只需要用到本地调用 -> 运行更快,还可以使用细粒度接口设计对象模型)

3. 必须使用分布的情况

  1)传统客户机/服务器架构

  2)应用软件与数据库

  3)web服务器和应用服务器(指的是web service么? 没搞懂!)

  4)不同厂商的软件包

4. 关于分布边界

  1)远程外观:进程内使用细粒度对象,分布边界上放置粗粒度对象

  2)数据传输对象:一般只引用其他数据传输对象和一些如字符串等原始类型对象

  3)代理:用延迟加载来传递对象

5. 分布接口

  1)如果两个系统使用相同的平台构建,使用系统自己的远程调用机制高效得多!(web service虽跨平台,但传输数据来回转换增加不少开销)

  2)使用http协议和远程面向对象API(没弄明白怎么玩)

  3)异步、基于消息的处理方式