开发Java Web项目中发现服务之间的调用存在超时情况,由于涉及的处理逻辑全部是异步,引入定时重试的机制,重试工具选择了JDK自带的Scheduled Thread Pool Executor。当A服务依赖B服务,B服务由于在业务高峰期处理能力降低,导致大量A服务...开发Java Web项目中发现服务之间的调用存在超时情况,由于涉及的处理逻辑全部是异步,引入定时重试的机制,重试工具选择了JDK自带的Scheduled Thread Pool Executor。当A服务依赖B服务,B服务由于在业务高峰期处理能力降低,导致大量A服务过来的请求超时,A加入了超时重试机制,间隔时间根据重试次数的多少来决定,次数越多,两次重试之间间隔的时间越多,此时的业务高峰也会给A带来大量请求,大量的超时会导致重试队列迅速堆积,直到内存溢出。该文从线程池工作机制、Scheduled Thread Pool Executor实例的创建,获取重试任务的过程以及提交任务的过程角度分析,并通过源代码的剖析和测试工具My Eclipse进行演示测试内存泄露的情况,得出避免内存泄露的解决方案。展开更多
1. Introduction Remotely operated vchicles (ROV) are advanced technical underwater operating equip-ment. They are whidely used in underwater engineering, underwater rescue and sea oil activities.General ROVs can work ...1. Introduction Remotely operated vchicles (ROV) are advanced technical underwater operating equip-ment. They are whidely used in underwater engineering, underwater rescue and sea oil activities.General ROVs can work in deep water. But the horizontal working distance is limited. Atmaximal working depth they can usually move around the mother ship inside a circle with a di-展开更多
天宝发布Trimble Field Inspector 2.1版。新版本兼容各种天宝掌上电脑,专为公用设施基础设施和智能电网资产自动化维护和巡查而设计。包含用于掌上电脑的Trimble Field Inspector for handheld软件和用于桌面电脑的Trimble Field Inspe...天宝发布Trimble Field Inspector 2.1版。新版本兼容各种天宝掌上电脑,专为公用设施基础设施和智能电网资产自动化维护和巡查而设计。包含用于掌上电脑的Trimble Field Inspector for handheld软件和用于桌面电脑的Trimble Field Inspector Desktop软件的解决方案具有可扩展性,并且易于部署。展开更多
Scalability is one of the most important quality attribute of softwareintensive systems,because it maintains an effective performance parallel to the large fluctuating and sometimes unpredictable workload.In order to ...Scalability is one of the most important quality attribute of softwareintensive systems,because it maintains an effective performance parallel to the large fluctuating and sometimes unpredictable workload.In order to achieve scalability,thread pool system(TPS)(which is also known as executor service)has been used extensively as a middleware service in software-intensive systems.TPS optimization is a challenging problem that determines the optimal size of thread pool dynamically on runtime.In case of distributed-TPS(DTPS),another issue is the load balancing b/w available set of TPSs running at backend servers.Existing DTPSs are overloaded either due to an inappropriate TPS optimization strategy at backend servers or improper load balancing scheme that cannot quickly recover an overload.Consequently,the performance of software-intensive system is suffered.Thus,in this paper,we propose a new DTPS that follows the collaborative round robin load balancing that has the effect of a double-edge sword.On the one hand,it effectively performs the load balancing(in case of overload situation)among available TPSs by a fast overload recovery procedure that decelerates the load on the overloaded TPSs up to their capacities and shifts the remaining load towards other gracefully running TPSs.And on the other hand,its robust load deceleration technique which is applied to an overloaded TPS sets an appropriate upper bound of thread pool size,because the pool size in each TPS is kept equal to the request rate on it,hence dynamically optimizes TPS.We evaluated the results of the proposed system against state of the art DTPSs by a clientserver based simulator and found that our system outperformed by sustaining smaller response times.展开更多
文摘开发Java Web项目中发现服务之间的调用存在超时情况,由于涉及的处理逻辑全部是异步,引入定时重试的机制,重试工具选择了JDK自带的Scheduled Thread Pool Executor。当A服务依赖B服务,B服务由于在业务高峰期处理能力降低,导致大量A服务过来的请求超时,A加入了超时重试机制,间隔时间根据重试次数的多少来决定,次数越多,两次重试之间间隔的时间越多,此时的业务高峰也会给A带来大量请求,大量的超时会导致重试队列迅速堆积,直到内存溢出。该文从线程池工作机制、Scheduled Thread Pool Executor实例的创建,获取重试任务的过程以及提交任务的过程角度分析,并通过源代码的剖析和测试工具My Eclipse进行演示测试内存泄露的情况,得出避免内存泄露的解决方案。
文摘1. Introduction Remotely operated vchicles (ROV) are advanced technical underwater operating equip-ment. They are whidely used in underwater engineering, underwater rescue and sea oil activities.General ROVs can work in deep water. But the horizontal working distance is limited. Atmaximal working depth they can usually move around the mother ship inside a circle with a di-
文摘天宝发布Trimble Field Inspector 2.1版。新版本兼容各种天宝掌上电脑,专为公用设施基础设施和智能电网资产自动化维护和巡查而设计。包含用于掌上电脑的Trimble Field Inspector for handheld软件和用于桌面电脑的Trimble Field Inspector Desktop软件的解决方案具有可扩展性,并且易于部署。
文摘Scalability is one of the most important quality attribute of softwareintensive systems,because it maintains an effective performance parallel to the large fluctuating and sometimes unpredictable workload.In order to achieve scalability,thread pool system(TPS)(which is also known as executor service)has been used extensively as a middleware service in software-intensive systems.TPS optimization is a challenging problem that determines the optimal size of thread pool dynamically on runtime.In case of distributed-TPS(DTPS),another issue is the load balancing b/w available set of TPSs running at backend servers.Existing DTPSs are overloaded either due to an inappropriate TPS optimization strategy at backend servers or improper load balancing scheme that cannot quickly recover an overload.Consequently,the performance of software-intensive system is suffered.Thus,in this paper,we propose a new DTPS that follows the collaborative round robin load balancing that has the effect of a double-edge sword.On the one hand,it effectively performs the load balancing(in case of overload situation)among available TPSs by a fast overload recovery procedure that decelerates the load on the overloaded TPSs up to their capacities and shifts the remaining load towards other gracefully running TPSs.And on the other hand,its robust load deceleration technique which is applied to an overloaded TPS sets an appropriate upper bound of thread pool size,because the pool size in each TPS is kept equal to the request rate on it,hence dynamically optimizes TPS.We evaluated the results of the proposed system against state of the art DTPSs by a clientserver based simulator and found that our system outperformed by sustaining smaller response times.