Linux高机能处事器处理赏罚框架
·假设这样一种环境:变乱线程刚把某SOCKET因产生EPOLLIN变乱放入了吸取行列,然则随即客户端非常断开了,变乱线程又由于EPOLLERR事 件删除了hash表中的这一项。假设吸取行列很长,产生非常的SOCKET还在行列中,比及吸取线程处理赏罚到这个SOCKET的时辰,并不能通过 SOCKET句柄索引到hash表中的工具。 ·索引不到的环境也甜头理赏罚,难点就在于,这个SOCKET句柄当即被另一个客户端行使了,接入线程为这个SCOKET成立了hash表中的某个工具。此时,句柄沟通的两个SOCKET,着实已经是差异的两个客户端了。极度环境下,这种环境是也许产生的。 ·办理的步伐是,行使socket fd + sequence为hash表的键,sequence由接入线程在每次accept()后将一个整型值累加而获得。这样,就算SOCKET句柄被重用,也不会产生题目了。 12、监控,必要思量: ·框架中最轻易出题目的是事变线程:事变线程的处理赏罚速率太慢,就会使得各个行列暴涨,最终导致处事器瓦解。因此必必要限定每个行列应承的最大巨细,且必要监督每个事变线程的处理赏罚时刻,高出这个时刻就应该回收某个步伐竣事掉事变线程。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |