CN117119034A - 一种应用线程池的多终端无线通信方法 - Google Patents
一种应用线程池的多终端无线通信方法 Download PDFInfo
- Publication number
- CN117119034A CN117119034A CN202310965505.0A CN202310965505A CN117119034A CN 117119034 A CN117119034 A CN 117119034A CN 202310965505 A CN202310965505 A CN 202310965505A CN 117119034 A CN117119034 A CN 117119034A
- Authority
- CN
- China
- Prior art keywords
- data
- thread
- classified
- module
- connection request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000004891 communication Methods 0.000 title claims abstract description 26
- 230000002159 abnormal effect Effects 0.000 claims abstract description 50
- 238000012545 processing Methods 0.000 claims abstract description 47
- 238000011897 real-time detection Methods 0.000 claims abstract description 27
- 230000001105 regulatory effect Effects 0.000 claims abstract description 13
- 238000012544 monitoring process Methods 0.000 claims description 19
- 125000003275 alpha amino acid group Chemical group 0.000 claims description 9
- 150000001875 compounds Chemical class 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000001276 controlling effect Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 230000005856 abnormality Effects 0.000 claims description 5
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000013461 design Methods 0.000 abstract description 4
- 238000012360 testing method Methods 0.000 description 7
- 230000007547 defect Effects 0.000 description 2
- 230000008030 elimination Effects 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种面向多终端无线通信的Socket线程池设计方法,涉及无线通信技术网络技术领域,解决问题是面向多终端无线通信的Socket线程池设计,方法包括:初始化socket;客户端与服务器连接;确定线程数;匹配线程,检测并处理问题线程;接收结束。采用动态调整模型通过任务分类,并根据动态阈值分时刻检测连接请求数的方式,实现线程数目的灵活调控,采用改进型DBSCAN算法通过先得到已分类数据组再计算已分类数据簇的方法,提高数据分类的准确率,采用实时检测模型通过拟合概率分布的方法检测异常数据,实现一种工作线程数目可灵活调控,动态管理异常线程的面向多终端无线通信的Socket线程池设计方法。
Description
技术领域
本发明涉及无线通信技术网络技术领域,且更确切地涉及一种应用线程池的多终端无线通信方法。
背景技术
高速网络环境的不断升级,5G网络的普及将有效提高网络的速度和稳定性,这也将为Socket线程池技术的应用提供更加良好的网络环境和条件,同时随着移动设备的普及程度不断提高和云计算和大数据的兴起,越来越多的人开始使用智能手机、平板电脑等无线设备来进行通信和数据交互,多终端无线通信的Socket线程池技术也被更加广泛地应用于各种场景,如物联网、智能家居等,多终端无线通信的Socket线程池技术在未来有着非常广泛的应用和发展前景。
在常规的Socket线程池技术中处理大量并发连接时,容易带来一系列问题,如资源的浪费、线程阻塞等。常规的Socket线程池技术,一方面,线程池在启动时需要创建很多线程,并且线程数难以动态调整,这需要花费一定的时间和***资源,另一方面,线程池在存在异常数据介入和线程工作状态异常的情况时无法自动检测,容易出现线程死锁的情况,从而导致***崩溃。为了解决这些问题,Socket线程池在不断发展完善,需要一种应用线程池的多终端无线通信方法。
发明内容
针对上述技术的不足,本发明公开一种应用线程池的多终端无线通信方法,采用动态调整模型根据***负载参数和连接请求数多角度综合确认动态阈值,通过任务分类,并根据动态阈值分时刻检测连接请求数的方式,增强线程数目调控的灵活性,采用改进型DBSCAN算法通过自适应半径计算邻域的方法,提高清除噪点的准确率,通过对数据簇进行网格化,并将高密度单元网格中周围数据密度最高的数据点作为待分类数据组中心的方法,提高数据分类的效率,通过先得到已分类数据组再计算已分类数据簇的方法,提高数据分类的准确率,采用实时检测模型通过对已分类数据赋权值的方式计算已分类数据簇的概率分布,提高已分类数据簇概率分布计算的准确度,实现一种工作线程数目可灵活调控,动态管理异常线程,高效率实时检测异常数据介入和线程工作状态异常的情况的面向多终端无线通信的Socket线程池设计方法。
为了实现上述技术效果,本发明采用以下技术方案:
一种应用线程池的多终端无线通信方法,其中包括以下步骤:
步骤一、初始化socket,通过初始化模块在主线程中初始化socket和监听端口,以便客户端连接服务器;
步骤二、客户端发起连接请求,与服务器建立Socket连接;
步骤三、实时调整线程池工作的线程数;
线程调整模块用于根据实时的连接请求数和***负载情况来自动调整线程数,适应并发访问的客户端数;
所述线程调整模块包括信息采集子模块和动态调整模型,所述信息采集子模块用于实时采集***负载参数和连接请求数,***负载参数包括***CPU利用率、内存使用量、硬盘使用量和网络带宽使用量,所述动态调整模型用于根据所述信息采集子模块采集的实时数据,对线程数进行自调节,所述信息采集子模块的输出端连接动态调整模型的输入端;
步骤四、匹配空余线程处理请求,通过分发模块同时处理多个客户端请求,为客户端请求分配空余线程处理,并将处理结果发送至客户端;
步骤五、检测线程是否处于正常工作状态和连接请求内是否含有异常信息,并结合检测结果对线程进行重创和关闭操作;
异常管理模块用于实时检测线程是否出现阻塞或异常情况,并处理问题线程;
所述异常管理模块包括反馈子模块、监测子模块和处理子模块,所述反馈子模块用于在线程中周期性发送数据包,检测线程的运行状态,所述监测子模块采用改进型DBSCAN算法和实时检测模型判断连接请求是否为异常信息,并通过线程的状态来确定线程是否处于工作状态,所述处理子模块用于根据异常信息判断是否需要重新创建线程或直接将该线程关闭退出,所述反馈子模块和监测子模块连接处理子模块的输入端;
步骤六、接收结束,关闭服务器;
闭合模块用于停止新的客户端连接请求,再等待所有已经连接的客户端请求处理完成后,关闭线程池和socket。
作为本发明进一步的技术方案,所述动态调整模型包括参数***和调控***,所述参数***用于确定调整线程数的动态阈值,所述调控***用于根据动态阈值增加或减少线程数,所述参数***的输出端连接调控***的输入端。
作为本发明进一步的技术方案,所述参数***通过根据***负载参数和连接请求数多角度综合确认动态阈值的方式,提高动态阈值的适应性,所述参数***的输入表达式为:
(1)
式(1)中,为t时刻的连接请求数,/>为t时刻的CPU利用率,/>为t时刻的硬盘使用量,/>为t时刻的网络带宽使用量,动态阈值的表达式为:
(2)
所述参数***输出动态阈值至所述调控***。
作为本发明进一步的技术方案,所述调控***采用任务分类,并分时刻检测连接请求数的方式,增强了线程数目调控的灵活性,线程数目调控所述调控***的工作方式为:
步骤1、确定任务类型,任务分类为CPU密集型任务和IO密集型任务;
步骤2、确认最小和最大线程数,最小线程数为连接请求数,最大线程数按照任务类型进行计算,按照CPU密集型任务与IO密集型任务的比例对总CPU数进行分配,得到A组CPU核心数和B组CPU核心数,A组CPU核心数为处理CPU密集型任务的CPU核心数,B组CPU核心数为处理IO密集型任务的CPU核心数,CPU密集型任务最大线程数为A组CPU核心数加二,IO密集型任务的最大线程数为B组CPU核心数的两倍;
步骤3、确认t时刻线程数,t时刻内的连接请求数小于动态阈值时,线程数为最小线程数, t时刻内的连接请求数大于动态阈值时,线程数调整为最大线程数;
步骤4、确认t+1时刻线程数,线程数调整为最大线程数后,监测t+1时刻的连接请求数,t+1时刻的连接请求数大于动态阈值时,线程数继续保持为最大线程数,t+1时刻的连接请求数小于动态阈值时,线程数转换为最小线程数。
作为本发明进一步的技术方案,所述监测子模块包括分类样本库、历史聚类模型和实时检测模型,所述分类样本库用于存储已分类标注的请求任务样本数据组,所述历史聚类模型采用改进型DBSCAN算法对历史请求任务进行分类,形成已分类数据簇,所述实时检测模型将实时输入的连接请求数据的概率分布与已分类数据簇中数据的概率分布进行对比,检测实时输入的连接请求数据是否为异常数据,所述分类样本库的输出端连接历史聚类模型的输入端,所述历史聚类模型的输出端连接实时检测模型的输入端。
作为本发明进一步的技术方案,所述改进型DBSCAN算法通过自适应半径计算邻域的方法,提高清除噪点的准确率,通过对数据簇进行网格化,并将高密度单元网格中周围数据密度最高的数据点作为待分类数据组中心的方法,提高数据分类的效率,通过先得到已分类数据组再计算已分类数据簇的方法,提高数据分类的准确率,所述改进型DBSCAN算法的工作方式为:
S1、确认数据簇,将所有历史请求任务的集合看作数据集,将一个历史请求任务看作一个数据点,选择任意数据点为中心数据点,根据半径确认邻域,邻域内数据点数目小于最小点数,则将此邻域内的数据点记为噪点,邻域内数据点数目大于最小点数,则将此邻域记为一个数据簇,邻域半径的表达式为:
(3)
式(3)中,R为邻域半径,N为数据集中的数据点总数目,为中心数据点与最近的十个数据点之间的距离,i为距中心数据点最近的十个数据点的标号;
S2、对数据簇进行网格化,将单元网格按次序进行标号,然后将所有的数据对象进行映射使其一一对应的分配至网格中,数据簇被划分的网格数为:
(4)
式(4)中,X为网格数数目,D为加速器,为分辨率参数,/>为数据点的最大值,为数据点的最小值,c为数据簇的维度值,n为数据点的标号;
S3、通过密度阈值将单元网格分类为高密度单元网格和低密度单元网格,单元网格内的密度阈值公式为:
(5)
式(5)中,为密度阈值,/>为单元网格中的数据数目,j为单元网格的标号;
S4、确认待分类数据组,将高密度单元网格中周围数据密度最高的数据点作为待分类数据组的中心,将待分类数据组中心周围的数据按照欧式距离为半径归类为待分类数据组;
S5、对待分类数据组进行归类,将请求任务样本数据并入待分类数据组中,计算任务样本数据组与待分类数据组的距离小于距离阈值时,将待分类数据组的数据归类至任务样本数据组的类别中,待分类数据组转换为已分类数据组,距离阈值公式为:
(6)
式(6)中,为待分类数据组的聚类中心点位置,/>为任务样本数据组的中心点位置,/>为待分类数据组个数,j为已分类数据组中数据的标号,/>为任务样本数据组中心点的标号,r为待分类数据组的半径,v为任务样本数据组的半径,U为距离阈值;
S6、重复S5,直至历遍数据簇内所有的待分类数据组;
S7、重复S2-S6,直至历遍数据集内所有的数据簇;
S8、确认已分类数据簇,将数据集内的已分类数据组看作一个数据点通过DBSCAN算法再次聚类,得到已分类数据簇。
作为本发明进一步的技术方案,所述实时检测模型通过对已分类数据赋权值的方式计算已分类数据簇的概率分布,提高已分类数据簇概率分布计算的准确度,所述实时检测模型的工作方式为:
1)对已分类数据赋权值,计算所述历史聚类模型中已分类数据簇的数据均值和方差,通过均值和方差计算已分类数据簇的数据赋权值,权值公式为:
(7)
式(7)中,为已分类数据簇中数据的权值,/>为已分类数据簇的均值,/>为已分类数据簇的方差,/>为已分类数据簇的标号,w为已分类数据簇中的数据数目;
2)确认已分类数据簇中数据的概率分布,据特征值方差的差值,计算数据特征值的概率分布,概率公式为:
(8)
3)检验实时输入的连接请求数据是否异常,将实时输入的连接请求数据与已分类数据簇的概率分布相拟合,对实时输入连接请求数据进行概率分布偏离检测,将偏离概率分布的实时输入连接请求数据标记为异常数据。
作为本发明进一步的技术方案,所述异常管理模块的工作方式为:
C1、对历史请求任务进行分类,通过所述历史聚类模型采用改进型DBSCAN算法对所有历史请求任务根据分类样本库进行分类;
C2、对实时输入的连接请求进行检测,通过所述实时检测模型采用概率分布相拟合的方法,实时检测输入的连接请求数据是否为异常数据;
C3、中断含有异常数据的连接请求,通过所述处理子模块中断处理异常的连接请求的线程,并请求客户端再次发送正常的连接请求;
C4、检测线程是否正常工作,通过反馈子模块向正在工作的线程中每隔两秒发送一个数据包,等待两秒后所述反馈子模块未收到正在工作的线程发出的数据回应包,则所述处理子模块停止此线程的工作进程,重新构建一个线程进行处理请求任务。
本发明有益的积极效果在于:
区别于常规的Socket线程池设计方法,针对上述技术的不足,本发明公开一种应用线程池的多终端无线通信方法,采用动态调整模型根据***负载参数和连接请求数多角度综合确认动态阈值,通过任务分类,并根据动态阈值分时刻检测连接请求数的方式,增强线程数目调控的灵活性,采用改进型DBSCAN算法通过自适应半径计算邻域的方法,提高清除噪点的准确率,通过对数据簇进行网格化,并将高密度单元网格中周围数据密度最高的数据点作为待分类数据组中心的方法,提高数据分类的效率,通过先得到已分类数据组再计算已分类数据簇的方法,提高数据分类的准确率,采用实时检测模型通过对已分类数据赋权值的方式计算已分类数据簇的概率分布,提高已分类数据簇概率分布计算的准确度,实现一种工作线程数目可灵活调控,动态管理异常线程,高效率实时检测异常数据介入和线程工作状态异常的情况的面向多终端无线通信的Socket线程池设计方法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图,其中:
图1本发明实施例提供的一种应用线程池的多终端无线通信方法流程图;
图2本发明一种应用线程池的多终端无线通信方法的模块结构图;
图3本发明调控***工作方法的流程图;
图4本发明改进型DBSCAN算法工作方法的流程图;
图5本发明实时检测模型工作方法的流程图;
图6本发明异常管理模块工作方法的流程图。
具体实施方式
下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本文一部分实施例,而不是全部的实施例。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
如图1-图6所示,一种应用线程池的多终端无线通信方法,包括以下步骤:
步骤一、初始化socket,通过初始化模块在主线程中初始化socket和监听端口,以便客户端连接服务器;
步骤二、客户端发起连接请求,与服务器建立Socket连接;
步骤三、实时调整线程池工作的线程数;
线程调整模块用于根据实时的连接请求数和***负载情况来自动调整线程数,适应并发访问的客户端数;
所述线程调整模块包括信息采集子模块和动态调整模型,所述信息采集子模块用于实时采集***负载参数和连接请求数,***负载参数包括***CPU利用率、内存使用量、硬盘使用量和网络带宽使用量,所述动态调整模型用于根据所述信息采集子模块采集的实时数据,对线程数进行自调节,所述信息采集子模块的输出端连接动态调整模型的输入端;
步骤四、匹配空余线程处理请求,通过分发模块同时处理多个客户端请求,为客户端请求分配空余线程处理,并将处理结果发送至客户端;
步骤五、检测线程是否处于正常工作状态和连接请求内是否含有异常信息,并结合检测结果对线程进行重创和关闭操作;
异常管理模块用于实时检测线程是否出现阻塞或异常情况,并处理问题线程;
所述异常管理模块包括反馈子模块、监测子模块和处理子模块,所述反馈子模块用于在线程中周期性发送数据包,检测线程的运行状态,所述监测子模块采用改进型DBSCAN算法和实时检测模型判断连接请求是否为异常信息,并通过线程的状态来确定线程是否处于工作状态,所述处理子模块用于根据异常信息判断是否需要重新创建线程或直接将该线程关闭退出,所述反馈子模块和监测子模块连接处理子模块的输入端;
步骤六、接收结束,关闭服务器;
闭合模块用于停止新的客户端连接请求,再等待所有已经连接的客户端请求处理完成后,关闭线程池和socket。
在具体实施例中,所述动态调整模型包括参数***和调控***,所述参数***用于确定调整线程数的动态阈值,所述调控***用于根据动态阈值增加或减少线程数,所述参数***的输出端连接调控***的输入端。
在具体实施例中,所述参数***通过根据***负载参数和连接请求数多角度综合确认动态阈值的方式,提高动态阈值的适应性,所述参数***的输入表达式为:
(1)
式(1)中,为t时刻的连接请求数,/>为t时刻的CPU利用率,/>为t时刻的硬盘使用量,/>为t时刻的网络带宽使用量,动态阈值的表达式为:
(2)
所述参数***输出动态阈值至所述调控***。
在具体实施例中,所述调控***采用任务分类,并分时刻检测连接请求数的方式,增强了线程数目调控的灵活性,线程数目调控所述调控***的工作方式为:
步骤1、确定任务类型,任务分类为CPU密集型任务和IO密集型任务;
步骤2、确认最小和最大线程数,最小线程数为连接请求数,最大线程数按照任务类型进行计算,按照CPU密集型任务与IO密集型任务的比例对总CPU数进行分配,得到A组CPU核心数和B组CPU核心数,A组CPU核心数为处理CPU密集型任务的CPU核心数,B组CPU核心数为处理IO密集型任务的CPU核心数,CPU密集型任务最大线程数为A组CPU核心数加二,IO密集型任务的最大线程数为B组CPU核心数的两倍;
步骤3、确认t时刻线程数,t时刻内的连接请求数小于动态阈值时,线程数为最小线程数, t时刻内的连接请求数大于动态阈值时,线程数调整为最大线程数;
步骤4、确认t+1时刻线程数,线程数调整为最大线程数后,监测t+1时刻的连接请求数,t+1时刻的连接请求数大于动态阈值时,线程数继续保持为最大线程数,t+1时刻的连接请求数小于动态阈值时,线程数转换为最小线程数。
在具体实施例中,所述监测子模块包括分类样本库、历史聚类模型和实时检测模型,所述分类样本库用于存储已分类标注的请求任务样本数据组,所述历史聚类模型采用改进型DBSCAN算法对历史请求任务进行分类,形成已分类数据簇,所述实时检测模型将实时输入的连接请求数据的概率分布与已分类数据簇中数据的概率分布进行对比,检测实时输入的连接请求数据是否为异常数据,所述分类样本库的输出端连接历史聚类模型的输入端,所述历史聚类模型的输出端连接实时检测模型的输入端。
在具体实施例中,所述改进型DBSCAN算法通过自适应半径计算邻域的方法,提高清除噪点的准确率,通过对数据簇进行网格化,并将高密度单元网格中周围数据密度最高的数据点作为待分类数据组中心的方法,提高数据分类的效率,通过先得到已分类数据组再计算已分类数据簇的方法,提高数据分类的准确率,所述改进型DBSCAN算法的工作方式为:
S1、确认数据簇,将所有历史请求任务的集合看作数据集,将一个历史请求任务看作一个数据点,选择任意数据点为中心数据点,根据半径确认邻域,邻域内数据点数目小于最小点数,则将此邻域内的数据点记为噪点,邻域内数据点数目大于最小点数,则将此邻域记为一个数据簇,邻域半径的表达式为:
(3)
式(3)中,R为邻域半径,N为数据集中的数据点总数目,为中心数据点与最近的十个数据点之间的距离,i为距中心数据点最近的十个数据点的标号;
S2、对数据簇进行网格化,将单元网格按次序进行标号,然后将所有的数据对象进行映射使其一一对应的分配至网格中,数据簇被划分的网格数为:
(4)
式(4)中,X为网格数数目,D为加速器,为分辨率参数,/>为数据点的最大值,为数据点的最小值,c为数据簇的维度值,n为数据点的标号;
S3、通过密度阈值将单元网格分类为高密度单元网格和低密度单元网格,单元网格内的密度阈值公式为:
(5)
式(5)中,为密度阈值,/>为单元网格中的数据数目,j为单元网格的标号;
S4、确认待分类数据组,将高密度单元网格中周围数据密度最高的数据点作为待分类数据组的中心,将待分类数据组中心周围的数据按照欧式距离为半径归类为待分类数据组;
S5、对待分类数据组进行归类,将请求任务样本数据并入待分类数据组中,计算任务样本数据组与待分类数据组的距离小于距离阈值时,将待分类数据组的数据归类至任务样本数据组的类别中,待分类数据组转换为已分类数据组,距离阈值公式为:
(6)
式(6)中,为待分类数据组的聚类中心点位置,/>为任务样本数据组的中心点位置,/>为待分类数据组个数,j为已分类数据组中数据的标号,/>为任务样本数据组中心点的标号,r为待分类数据组的半径,v为任务样本数据组的半径,U为距离阈值;
S6、重复S5,直至历遍数据簇内所有的待分类数据组;
S7、重复S2-S6,直至历遍数据集内所有的数据簇;
S8、确认已分类数据簇,将数据集内的已分类数据组看作一个数据点通过DBSCAN算法再次聚类,得到已分类数据簇。
在具体实施例中,所述实时检测模型通过对已分类数据赋权值的方式计算已分类数据簇的概率分布,提高已分类数据簇概率分布计算的准确度,所述实时检测模型的工作方式为:
1)对已分类数据赋权值,计算所述历史聚类模型中已分类数据簇的数据均值和方差,通过均值和方差计算已分类数据簇的数据赋权值,权值公式为:
(7)
式(7)中,为已分类数据簇中数据的权值,/>为已分类数据簇的均值,/>为已分类数据簇的方差,/>为已分类数据簇的标号,w为已分类数据簇中的数据数目;
2)确认已分类数据簇中数据的概率分布,据特征值方差的差值,计算数据特征值的概率分布,概率公式为:
(8)
3)检验实时输入的连接请求数据是否异常,将实时输入的连接请求数据与已分类数据簇的概率分布相拟合,对实时输入连接请求数据进行概率分布偏离检测,将偏离概率分布的实时输入连接请求数据标记为异常数据。
在具体实施例中,所述异常管理模块的工作方式为:
C1、对历史请求任务进行分类,通过所述历史聚类模型采用改进型DBSCAN算法对所有历史请求任务根据分类样本库进行分类;
C2、对实时输入的连接请求进行检测,通过所述实时检测模型采用概率分布相拟合的方法,实时检测输入的连接请求数据是否为异常数据;
C3、中断含有异常数据的连接请求,通过所述处理子模块中断处理异常的连接请求的线程,并请求客户端再次发送正常的连接请求;
C4、检测线程是否正常工作,通过反馈子模块向正在工作的线程中每隔两秒发送一个数据包,等待两秒后所述反馈子模块未收到正在工作的线程发出的数据回应包,则所述处理子模块停止此线程的工作进程,重新构建一个线程进行处理请求任务。
通过上述实施例中,基于所述异常管理模块的连接请求任务处理时间表如表1所示:
表1连接请求任务处理时间表
根据连接请求任务数和异常数据数目不同,设置四个测试组,采用三种方法分别对四组连接请求任务进行处理,方法A为通过传统的DBSCAN算法实时对请求任务进行分类,并根据异常数据库判断异常请求任务信息的方法,方法B为通过传统的DBSCAN算法对历史请求任务进行分类,并根据所述实时检测模型检测实时输入的连接请求数据是否为异常数据的方法,方法C为本发明中所述异常管理模块的方法,如表1所示,在第一组测试组中方法A、方法B和方法C的处理耗时基本相同,在第二、三和四组测试组中方法A的处理耗时明显大于方法B的处理耗时,说明实时检测模型的方法比根据异常数据库判断异常请求任务信息的方法判断异常数据的效率高,在第三组和第四组测试组中方法B的处理耗时明显大于方法C,说明改进型的DBSCAN算法的数据分类效率大于传统的DBSCAN算法,综上所述本发明的方法处理请求任务的效率高、耗时少。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些具体实施方式仅是举例说明,本领域的技术人员在不脱离本发明的原理和实质的情况下,可以对上述方法和***的细节进行各种省略、替换和改变。例如,合并上述方法步骤,从而按照实质相同的方法执行实质相同的功能以实现实质相同的结果则属于本发明的范围。因此,本发明的范围仅由所附权利要求书限定。
Claims (8)
1.一种应用线程池的多终端无线通信方法,其特征在于:包括如下步骤:
步骤一、初始化socket,通过初始化模块在主线程中初始化socket和监听端口,以便客户端连接服务器;
步骤二、客户端发起连接请求,与服务器建立Socket连接;
步骤三、实时调整线程池工作的线程数;
线程调整模块用于根据实时的连接请求数和***负载情况来自动调整线程数,适应并发访问的客户端数;
所述线程调整模块包括信息采集子模块和动态调整模型,所述信息采集子模块用于实时采集***负载参数和连接请求数,***负载参数包括***CPU利用率、内存使用量、硬盘使用量和网络带宽使用量,所述动态调整模型用于根据所述信息采集子模块采集的实时数据,对线程数进行自调节,所述信息采集子模块的输出端连接动态调整模型的输入端;
步骤四、匹配空余线程处理请求,通过分发模块同时处理多个客户端请求,为客户端请求分配空余线程处理,并将处理结果发送至客户端;
步骤五、检测线程是否处于正常工作状态和连接请求内是否含有异常信息,并结合检测结果对线程进行重创和关闭操作;异常管理模
块用于实时检测线程是否出现阻塞或异常情况,并处理问题线程;
所述异常管理模块包括反馈子模块、监测子模块和处理子模块,所述反馈子模块用于在线程中周期性发送数据包,检测线程的运行状态,所述监测子模块采用改进型DBSCAN算法和实时检测模型判断连接请求是否为异常信息,并通过线程的状态来确定线程是否处于工作状态,所述处理子模块用于根据异常信息判断是否需要重新创建线程或直接将该线程关闭退出,所述反馈子模块和监测子模块连接处理子模块的输入端;
步骤六、接收结束,关闭服务器;
闭合模块用于停止新的客户端连接请求,再等待所有已经连接的客户端请求处理完成后,关闭线程池和socket。
2.根据权利要求1所述的一种应用线程池的多终端无线通信方法,其特征在于:所述动态调整模型包括参数***和调控***,所述参数***用于确定调整线程数的动态阈值,所述调控***用于根据动态阈值增加或减少线程数,所述参数***的输出端连接调控***的输入端。
3.根据权利要求2所述的一种应用线程池的多终端无线通信方法,其特征在于:所述参数***通过根据***负载参数和连接请求数多角度综合确认动态阈值的方式,提高动态阈值的适应性,所述参数***的输入表达式为:
(1)
式(1)中,为t时刻的连接请求数,/>为t时刻的CPU利用率,/>为t时刻的硬盘使用量,为t时刻的网络带宽使用量,动态阈值的表达式为:
(2)
所述参数***输出动态阈值至所述调控***。
4.根据权利要求2所述的一种应用线程池的多终端无线通信方法,其特征在于:所述调控***采用任务分类,并分时刻检测连接请求数的方式,增强了线程数目调控的灵活性,线程数目调控所述调控***的工作方式为:
步骤1、确定任务类型,任务分类为CPU密集型任务和IO密集型任务;
步骤2、确认最小和最大线程数,最小线程数为连接请求数,最大线程数按照任务类型进行计算,按照CPU密集型任务与IO密集型任务的比例对总CPU数进行分配,得到A组CPU核心数和B组CPU核心数,A组CPU核心数为处理CPU密集型任务的CPU核心数,B组CPU核心数为处理IO密集型任务的CPU核心数,CPU密集型任务最大线程数为A组CPU核心数加二,IO密集型任务的最大线程数为B组CPU核心数的两倍;
步骤3、确认t时刻线程数,t时刻内的连接请求数小于动态阈值时,线程数为最小线程数, t时刻内的连接请求数大于动态阈值时,线程数调整为最大线程数;
步骤4、确认t+1时刻线程数,线程数调整为最大线程数后,监测t+1时刻的连接请求数,t+1时刻的连接请求数大于动态阈值时,线程数继续保持为最大线程数,t+1时刻的连接请求数小于动态阈值时,线程数转换为最小线程数。
5.根据权利要求4所述的一种应用线程池的多终端无线通信方法,其特征在于:所述监测子模块包括分类样本库、历史聚类模型和实时检测模型,所述分类样本库用于存储已分类标注的请求任务样本数据组,所述历史聚类模型采用改进型DBSCAN算法对历史请求任务进行分类,形成已分类数据簇,所述实时检测模型将实时输入的连接请求数据的概率分布与已分类数据簇中数据的概率分布进行对比,检测实时输入的连接请求数据是否为异常数据,所述分类样本库的输出端连接历史聚类模型的输入端,所述历史聚类模型的输出端连接实时检测模型的输入端。
6.根据权利要求5所述的一种应用线程池的多终端无线通信方法,其特征在于:所述改进型DBSCAN算法通过自适应半径计算邻域的方法,提高清除噪点的准确率,通过对数据簇进行网格化,并将高密度单元网格中周围数据密度最高的数据点作为待分类数据组中心的方法,提高数据分类的效率,通过先得到已分类数据组再计算已分类数据簇的方法,提高数据分类的准确率,所述改进型DBSCAN算法的工作方式为:
S1、确认数据簇,将所有历史请求任务的集合看作数据集,将一个历史请求任务看作一个数据点,选择任意数据点为中心数据点,根据半径确认邻域,邻域内数据点数目小于最小点数,则将此邻域内的数据点记为噪点,邻域内数据点数目大于最小点数,则将此邻域记为一个数据簇,邻域半径的表达式为:
(3)
式(3)中,R为邻域半径,N为数据集中的数据点总数目,为中心数据点与最近的十个数据点之间的距离,i为距中心数据点最近的十个数据点的标号;
S2、对数据簇进行网格化,将单元网格按次序进行标号,然后将所有的数据对象进行映射使其一一对应的分配至网格中,数据簇被划分的网格数为:
(4)
式(4)中,X为网格数数目,D为加速器,为分辨率参数,/>为数据点的最大值,/>为数据点的最小值,c为数据簇的维度值,n为数据点的标号;
S3、通过密度阈值将单元网格分类为高密度单元网格和低密度单元网格,单元网格内的密度阈值公式为:
(5)
式(5)中,为密度阈值,/>为单元网格中的数据数目,j为单元网格的标号;
S4、确认待分类数据组,将高密度单元网格中周围数据密度最高的数据点作为待分类数据组的中心,将待分类数据组中心周围的数据按照欧式距离为半径归类为待分类数据组;
S5、对待分类数据组进行归类,将请求任务样本数据并入待分类数据组中,计算任务样本数据组与待分类数据组的距离小于距离阈值时,将待分类数据组的数据归类至任务样本数据组的类别中,待分类数据组转换为已分类数据组,距离阈值公式为:
(6)
式(6)中,为待分类数据组的聚类中心点位置,/>为任务样本数据组的中心点位置,/>为待分类数据组个数,j为已分类数据组中数据的标号,/>为任务样本数据组中心点的标号,r为待分类数据组的半径,v为任务样本数据组的半径,U为距离阈值;
S6、重复S5,直至历遍数据簇内所有的待分类数据组;
S7、重复S2-S6,直至历遍数据集内所有的数据簇;
S8、确认已分类数据簇,将数据集内的已分类数据组看作一个数据点通过DBSCAN算法再次聚类,得到已分类数据簇。
7.根据权利要求5或6所述的一种应用线程池的多终端无线通信方法,其特征在于:所述实时检测模型通过对已分类数据赋权值的方式计算已分类数据簇的概率分布,提高已分类数据簇概率分布计算的准确度,所述实时检测模型的工作方式为:
1)对已分类数据赋权值,计算所述历史聚类模型中已分类数据簇的数据均值和方差,通过均值和方差计算已分类数据簇的数据赋权值,权值公式为:
(7)
式(7)中,为已分类数据簇中数据的权值,/>为已分类数据簇的均值,/>为已分类数据簇的方差,/>为已分类数据簇的标号,w为已分类数据簇中的数据数目;
2)确认已分类数据簇中数据的概率分布,据特征值方差的差值,计算数据特征值的概率分布,概率公式为:
(8)
3)检验实时输入的连接请求数据是否异常,将实时输入的连接请求数据与已分类数据簇的概率分布相拟合,对实时输入连接请求数据进行概率分布偏离检测,将偏离概率分布的实时输入连接请求数据标记为异常数据。
8.根据权利要求1所述的一种应用线程池的多终端无线通信方法,其特征在于:所述异常管理模块的工作方式为:其中所述监测子模块包括分类样本库、历史聚类模型和实时检测模型;
C1、对历史请求任务进行分类,通过所述历史聚类模型采用改进型DBSCAN算法对所有历史请求任务根据分类样本库进行分类;
C2、对实时输入的连接请求进行检测,通过所述实时检测模型采用概率分布相拟合的方法,实时检测输入的连接请求数据是否为异常数据;
C3、中断含有异常数据的连接请求,通过所述处理子模块中断处理异常的连接请求的线程,并请求客户端再次发送正常的连接请求;
C4、检测线程是否正常工作,通过反馈子模块向正在工作的线程中每隔两秒发送一个数据包,等待两秒后所述反馈子模块未收到正在工作的线程发出的数据回应包,则所述处理子模块停止此线程的工作进程,重新构建一个线程进行处理请求任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310965505.0A CN117119034A (zh) | 2023-08-02 | 2023-08-02 | 一种应用线程池的多终端无线通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310965505.0A CN117119034A (zh) | 2023-08-02 | 2023-08-02 | 一种应用线程池的多终端无线通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117119034A true CN117119034A (zh) | 2023-11-24 |
Family
ID=88806596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310965505.0A Withdrawn CN117119034A (zh) | 2023-08-02 | 2023-08-02 | 一种应用线程池的多终端无线通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117119034A (zh) |
-
2023
- 2023-08-02 CN CN202310965505.0A patent/CN117119034A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110852387B (zh) | 一种能源互联网超实时状态研判算法 | |
CN116320831B (zh) | 基于边缘计算的园区智能安防*** | |
CN111709582B (zh) | 一种无人机边缘计算资源动态优化方法、***及存储介质 | |
CN113961264B (zh) | 一种面向视频监控云边协同的智能卸载算法与*** | |
US11736363B2 (en) | Techniques for analyzing a network and increasing network availability | |
CN112612553B (zh) | 一种基于容器技术的边缘计算任务卸载方法 | |
CN108270805A (zh) | 用于数据处理的资源分配方法及装置 | |
CN113723773A (zh) | 一种基于大数据分析的电能决策*** | |
CN114327811A (zh) | 一种任务调度方法、装置、设备及可读存储介质 | |
CN113111115A (zh) | 一种数据信息管理***及其方法 | |
CN113934545A (zh) | 一种视频数据调度方法、***、电子设备及可读介质 | |
CN114285855A (zh) | 一种基于智能边缘物联的云边协同方法 | |
CN112214303A (zh) | Kubernetes集群自动缩放*** | |
CN117119034A (zh) | 一种应用线程池的多终端无线通信方法 | |
CN117539619A (zh) | 基于云边融合的算力调度方法、***、设备和存储介质 | |
CN116991070A (zh) | 基于物联网的多设备终端的综合性能智能管理方法及*** | |
CN116647507A (zh) | 基于负载自适应的物联网数据处理方法及*** | |
CN106127396A (zh) | 一种智能电网中云调度任务的方法 | |
CN114301911B (zh) | 一种基于边边协同的任务管理方法和*** | |
CN113794646B (zh) | 能源行业的监控数据传输***及方法 | |
CN109376509A (zh) | 一种kvm任务自动派发***以及自动派发方法 | |
CN106888237B (zh) | 一种数据调度方法及*** | |
CN115495231A (zh) | 一种高并发任务复杂场景下的动态资源调度方法及*** | |
CN112738225A (zh) | 基于人工智能的边缘计算方法 | |
CN117056085B (zh) | 一种负载均衡方法、装置和安全防护*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20231124 |
|
WW01 | Invention patent application withdrawn after publication |