用"池"来提升对象的复用

对象池化是目前常用的一种系统优化的技术。通俗的说也就是一个对象不用多次的被实例化,来消耗性能,可以把这些常用的类放入一个池中,当需要的时候在去池里去拿去,不用的时候 在放入池中。可以叫做对象池。他可以是一个数组或者一个其他的集合。

咱们平常接触的池中比较多的应该是:数据库连接池、线程池了。我想大家都知道创建一个对象和销毁一个对象都是一个很费时的工作。还有数据库的建立连接和销毁连接这些相对而言都是重量级的操作,所以来说,避免这些操作,对于改善系统的性能也有积极意义。也就是说,有效的使用者两种技术,可以有效的改善系统在高并发下的性能。任何对性能敏感的系统,都需要考虑合理的配置这连个组件。较常见的数据库连接池有c3p0、dbcp、bonecp。

 

在jdk中,new这个操作的使用效率是想当高的,不需要担心频繁的的new 操作对系统有性能的影响。但是new操作时所调用的类构造函数可能是非常费时的,对于这些对象,可以考虑池化。

但是呢,不是池化都很好,任何东西都有一个平衡点,只有对那些重量级对象使用对象池技术才能提高系统的性能,对轻量级的对象使用对象池技术,可能会起到反面的效果,从而影响性能。

 

以上说的有些不是很清楚,希望大家指点。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值