一切对象都是资源,请用模式管理(I)
??? 作者:江南白衣,原文地址:http://blog.csdn.net/calvinxiu/archive/2007/05/25/1625454.aspx,版权所有,转载请保留原文链接。 ??? 写下标题,就想起冬冬那句"人生像个舞台,请良家妇女离开"??,什么时候开始,已写不出那样的文字。? ??? 在程序世界,内存,文件,网络连接,数据库会话,线程甚至一切的对象,都是资源。《Pattern-Oriented Software Architecture V3 --Patterns for Resource Management 》(POSA第三卷),讲的就是资源管理,外表轻薄(145页)而内里熟悉,很好读。
? ?? 全书把10个模式分成生命期分成三个部分:资源获取,资源生命周期,资源释放。 一、资源获取 资源获取,一是LookUp模式,二是Lazy/Eager/Partial 三种获取模式。 1.Lookup: ??? 大家熟悉的Corba的Naming Service,J2EE的JNDI,COM+的注册表,WebService的UDDI,还有最有现实感的DNS,所有这些,都是通过中介实例来发现和访问资源,屏蔽资源的物理位置(还可以进一步屏蔽资源的负载均衡和故障转移)。 ?????? 几个值得笔记的地方:
2.Lazy Acquisition: ??? Hibernate的Lazy Load已经深入人心,一种朴素的JIT思路。 ???? ?? 几个值得笔记的地方:
3.Eager Acquisition: ??? 财大气粗,内存多多的服务器,喜欢在启动时就将数据先装进内存里,使得运行时性能(Performance)与可预测(Predictability)兼得,不会忽然来一个时间不可控的数据库查询。
4.Partial Acquisition: ??? 中庸从来都是解决实际问题的不错方式,既然上面两种方式互有长短,那我们可以把资源获取分成多个阶段。
? 剩下还有6个模式,下篇继续。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |