The invention discloses a method and a device for establishing connection based on Optimization of working thread pressure, relating to the field of computer technology. The method includes: receiving the client connection requests; statistical multiple thread connection has been established according to the nature of the connection, pressure connection properties and obtaining a plurality of threads; according to the pressure of the state, to establish a connection with the client thread from multiple threads. By using this scheme, the thread pressure of the working thread can be optimized, and the results of balancing the pressure of multiple threads and improving the efficiency of the thread processing task can be achieved.
【技术实现步骤摘要】
基于工作线程压力优化的连接建立方法及装置
本专利技术涉及计算机
,具体涉及一种基于工作线程压力优化的连接建立方法及装置。
技术介绍
线程是被系统独立调度和分派的基本单位,在常用的编程框架支持的dispatch-worker模型中,由dispatch线程(派发线程)负责接收客户端的连接,然后由worker线程(工作线程)负责处理后续与客户端的连接。目前,dispatch-worker模型中常采用轮询的方式将dispatch线程接收到的连接发送至worker线程。在这种情况下,若某些命令执行的时间较长,则会造成某些worker工作线程压力不均的情况,影响整个模型的性能,增加了整体工作线程的压力,降低了其处理任务的效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于工作线程压力优化的连接建立方法及装置。根据本专利技术的一个方面,提供了基于工作线程压力优化的连接建立方法,包括:接收客户端的连接建立请求;统计多个工作线程已建立连接的连接性质,根据连接性质获取多个工作线程的压力状态;根据压力状态,从多个工作线程中选择一个工作线程建立与客户端的连接。根据本专利技术的另一方面,提供了基于工作线程压力优化的连接建立装置,包括:接收模块,适于接收客户端的连接建立请求;统计模块,适于统计多个工作线程已建立连接的连接性质,根据连接性质获取多个工作线程的压力状态;连接模块,适于根据压力状态,从多个工作线程中选择一个工作线程建立与客户端的连接。根据本专利技术的基于工作线程压力优化的连接建立方法及装置,通过接收客户端的连接建立请 ...
【技术保护点】
一种基于工作线程压力优化的连接建立方法,包括:接收客户端的连接建立请求;统计多个工作线程已建立连接的连接性质,根据连接性质获取多个工作线程的压力状态;根据压力状态,从多个工作线程中选择一个工作线程建立与客户端的连接。
【技术特征摘要】
1.一种基于工作线程压力优化的连接建立方法,包括:接收客户端的连接建立请求;统计多个工作线程已建立连接的连接性质,根据连接性质获取多个工作线程的压力状态;根据压力状态,从多个工作线程中选择一个工作线程建立与客户端的连接。2.根据权利要求1所述的方法,其中,在所述接收客户端的连接建立请求之后,所述方法还包括:根据所述连接建立请求,生成待建立连接的连接句柄。3.根据权利要求1或2所述的方法,其中,所述统计多个工作线程已建立连接的连接性质进一步包括:统计多个工作线程已建立连接包含长连接和/或短连接的数量。4.根据权利要求3所述的方法,其中,若多个工作线程已建立连接包含短连接的数量大于长连接的数量,则根据连接性质获取多个工作线程的压力状态进一步包括:获取每个工作线程的等待队列中的连接句柄个数;所述根据压力状态,从多个工作线程中选择一个工作线程建立与客户端的连接进一步包括:从多个工作线程中选择等待队列中的连接句柄个数最少的工作线程建立与客户端的连接。5.根据权利要求3所述的方法,其中,若多个工作线程已建立连接包含长连接的数量大于短连接的数量,则根据连接性质获取多个工作线程的压力状态进一步包括:获取每个工作线程在预定时间范围内的请求次数;所述根据压力状态,从多个工作线程中选择一个工作线程建立与客户端的连接进一步包...
【专利技术属性】
技术研发人员:陈宗志,
申请(专利权)人:北京奇虎科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。