The invention relates to a single process similar to the VxWorks embedded operating system in multi client access control single point optimization method, to monitor the set of descriptors by using select mechanism, once the descriptor ready select is returned; if the select does not return, the client descriptor is ready, then the initial value of the client timer time update not ready for the client descriptor, independent thread timer management will automatically update the corresponding timer, the timer has 0 for the client, the server will kick off the assembly line, at the same time from the select monitor set to kick out, release the use of system resources. The invention manages the thread by introducing an independent timer on the server side, and the server can kick off the offline in time for the client in the idle state so as to improve the utilization efficiency of the server and the network resource.
【技术实现步骤摘要】
一种多客户端访问单点控制优化实现方法
本专利技术涉及网络通信
,尤其涉及一种类似VxWorks单进程嵌入式操作系统中多客户端访问单点控制优化实现方法。
技术介绍
VxWorks是一种在数据网络中应用比较广泛的单进程嵌入式操作系统,通过socket提供的通信接口可以解决类似操作系统中客户端和服务器之间的网络通信问题,然而,这类操作系统不支持并发处理多进程任务。因此,将基于socket通信的多客户端-单服务器模型应用在单进程嵌入式操作系统中,服务器使用何种控制机制才能更好的响应多个客户端的读写以及异常情况是至关重要的。目前这类操作系统中常用的方案是:通过select机制对多客户端的访问控制进行管理。其基本实现原理如下:通过select对多个客户端进行监听,并为它们统一设置超时时间,如果其中某些客户端突然断开连接,服务器并不能检测到这些客户端已经下线,只有在所有客户端断开连接,select定时器超时后,才会将它们一起踢除下线,同时释放它们使用的网络资源,这种方式对客户端的管理存在很大的局限性。有些设计在此方案上进行优化,为每个客户端设置一个老化标记,通过select中的timeout参数设置超时对其进行老化管理,但还是不能满足客户对老化精确度的需求。
技术实现思路
本专利技术所要解决的技术问题是提供一种多客户端访问单点控制优化实现方法,通过在服务器端引入独立的定时器管理线程,对于处于空闲状态的客户端,服务器及时将其踢除下线,从而提高服务器和网络资源的利用效率。本专利技术解决上述技术问题的技术方案如下:一种多客户端访问单点控制优化实现方法,包括以下步骤:(1)服 ...
【技术保护点】
一种多客户端访问单点控制优化实现方法,其特征在于,包括以下步骤:(1)服务器和客户端分别创建socket套接字描述符,服务器将创建的socket套接字描述符加入select监听集合;(2)服务器创建一个独立的定时器管理线程,并在所述定时器管理线程中设定客户端定时器更新的时间粒度,所述定时器管理线程共享select监听集合中的所有套接字描述符;(3)通过select机制监听服务器的socket套接字描述符,如果有客户端发起连接,则与其建立连接并将与该客户端对应的连接套接字加入select监听集合,同时设定客户端定时器的初始值;(4)定时器管理线程根据设置的时间粒度依次对所有客户端定时器做定时更新,如果select监听到某客户端的连接套接字描述符就绪,则将该客户端定时器恢复到初始值,同时定时器管理线程中相应客户端的定时器则从初始值开始更新;对于未就绪的客户端描述符,则定时器管理线程根据时间更新粒度自动进行相应的定时器更新;对于定时器已经为0的客户端,则在定时器管理线程中将其踢除下线,并将其从监听集合中踢除,释放其使用的系统资源。
【技术特征摘要】
1.一种多客户端访问单点控制优化实现方法,其特征在于,包括以下步骤:(1)服务器和客户端分别创建socket套接字描述符,服务器将创建的socket套接字描述符加入select监听集合;(2)服务器创建一个独立的定时器管理线程,并在所述定时器管理线程中设定客户端定时器更新的时间粒度,所述定时器管理线程共享select监听集合中的所有套接字描述符;(3)通过select机制监听服务器的socket套接字描述符,如果有客户端发起连接,则与其建立连接并将与该客户端对应的连接套接字加入select监听集合,同时设定客户端定时器的初始值;(4)定时器管理线程根据设置的时间粒度依次对所有客户端定时器做定时更新,如果select监听到某客户端的连接套接字描述符就绪,则将该客户端定时器恢复到初始值,同时定时器管理线程中相应客户端的定时器则从初始值开...
【专利技术属性】
技术研发人员:张形形,杨鑫,蔡平,刘佳,
申请(专利权)人:深圳市风云实业有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。