一种基于服务器负载情况为课堂分配服务器的方法技术

技术编号:20365414 阅读:65 留言:0更新日期:2019-02-16 17:40
本发明专利技术公开了一种基于服务器负载情况为课堂分配服务器的方法。本发明专利技术方法用到的组成部分是:客户端,用于向课堂分配器请求登录课堂;课堂分配服务器,用于接收客户端的请求,并分配课堂服务器;课堂服务器,用于处理客户端的课堂数据。本发明专利技术在同一个课堂在一定时间内需要重复创建课堂,重复分配课堂服务器且课堂需要使用前一次的课堂数据时,能有效将课堂分配在课堂数据存在的服务器上,以达到课堂重复创建时,能使用历史课堂数据,同时兼顾了课堂服务器负载情况,不至于让某一个课堂服务器负载过重,以及课堂数据能有效备份在另一个课堂服务器内,达到某个课堂服务器出现异常时,能及时寻找另一台课堂服务器继续上课,提高了服务的可用时间。

【技术实现步骤摘要】
一种基于服务器负载情况为课堂分配服务器的方法
本专利技术属于计算机分布式领域,涉及一种基于服务器负载情况为课堂分配服务器的方法。
技术介绍
随着在线教育的不断发展,同时上课的课堂数量不断增多,一台服务器已经远远不能满足同时开启越来越多的在线课堂的需求,需要越来越多的课堂服务器来支持同时开启更多的在线课堂,而越来越多的服务器需要由一个课堂分配器来统一分配课堂服务器。一般课堂内的课件文档等数据在上一节课与下一节课之间会存在一定关联,比如下一节课可能会用到上一节课的课件文档,而课件文档存在课堂服务器的本地磁盘内,这种情况即要求同一个课在2个不同的时间内需要分配在同一个服务器上。
技术实现思路
本专利技术主要目的是针对上述出现的问题,提供一种基于服务器负载情况为课堂分配服务器的方法。本专利技术解决其技术问题所采用的技术方案包括如下具体步骤:步骤(1)、启动课堂分配器,接受课堂服务器的连接;步骤(2)、课堂服务器启动,并向课堂分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接,课堂服务器告知课堂分配器本课堂服务器最大支持的课堂数量,课堂分配器为各个课堂服务器分配一个备份课堂数据的课堂服务器,如A、B、C三个课堂服务器,课堂服务器A与课堂服务器B相互备份课堂数据,课堂服务器A备份课堂服务器C的课堂数据;步骤(3)、课堂服务器每隔时间T通知课堂分配器本课堂服务器当前CPU、内存使用情况、存在的课堂数量、各课堂人数和所有课堂人数的总和;步骤(4)、课堂分配器接收到各课堂服务器通知的各课堂信息时,课堂分配器按课堂服务器分开保存各课堂服务器中的当前课堂信息,记为课堂服务器课堂信息列表SC,以及课堂分配器按课堂号保存所有课堂服务器中的课堂信息,记为课堂信息列表CI。课堂服务器课堂信息列表SC中的课堂,如果在对应的课堂服务器通知的课堂信息中存在,则将课堂信息列表CI中将本课堂标记为未结束并清除结束时间;如果不存在,则在课堂分配器中的课堂信息列表CI将本课堂标记已结束并记录结束时间,将课堂从课堂服务器的课堂信息列表SC中删除;步骤(5)、课堂分配器启动独立的线程每隔时间T检测课堂信息列表CI中各课堂结束时间,如果当前时间与课堂结束时间超过N小时,则将课堂信息从课堂信息列表CI中删除,认为课堂下次启动时可以不再分配在记录的课堂服务器中;步骤(6)、课堂分配器接收到客户端登录请求时,按以下规则为课堂分配课堂服务器:①如果客户端登录的课堂在课堂信息列表CI中,且课堂并未结束,则无需分配课堂服务器;②如果客户端登录的课堂在课堂信息列表CI中,课堂已结束,则判断课堂服务器中的课堂数量是否已达到上限,如果没有到上限,则将课堂分配在课堂记录的课堂服务器中;③如果客户端登录的课堂在课堂信息列表CI中,课堂已结束,则判断课堂服务器中的课堂数量是否已达到上限,如果达到上限,则判断当前课堂服务器的备份课堂服务器课堂数量是否达到上限,如果没有达到上限,则将课堂分配在记录的课堂服务器对应的备份课堂服务器④如果客户端登录的课堂在课堂信息列表CI中,课堂已结束,则判断课堂服务器中的课堂数量是否已达到上限,如果达到上限,则判断当前课堂服务器的备份课堂服务器课堂数量是否达到上限,如果达到上限,则按第⑤条重新分配课堂服务器;⑤如果客户端登录的课堂不在课堂信息列表CI中,即为新课堂,或课堂记录的课堂服务器与课堂备份服务器负载均已满,则课堂分配器按以下公式计算各课堂服务器的权值:Weight=SCClientTotal+SCMeetNum*N+(SCMeetNum/SCMaxMeetNum)*M其中,SCClientTotal为课堂服务器当前总人数,SCMeetNum为课堂服务器当前课堂数,SCMaxMeetNum为当前课堂服务器支持的最大课堂数量,N、M为定值,用于调节权值比重。对课堂服务器集CS中的课堂服务器按权值从小到大排序,从课堂服务器集CS中选取权值最小的课堂服务器作为新课堂的课堂服务器;步骤(7)、客户端登录课堂服务器,课堂服务器创建课堂,检测磁盘上是否存在历史课堂数据,如果存在,则将课堂数据载入课堂。课堂服务器每分钟将课堂数据保存在磁盘上。本专利技术有益效果如下:本专利技术在同一个课堂在一定时间内需要重复创建课堂,重复分配课堂服务器且课堂需要使用前一次的课堂数据时,能有效将课堂分配在课堂数据存在的服务器上,以达到课堂重复创建时,能使用历史课堂数据,同时兼顾了课堂服务器负载情况,不至于让某一个课堂服务器负载过重,以及课堂数据能有效备份在另一个课堂服务器内,达到某个课堂服务器出现异常时,能及时寻找另一台课堂服务器继续上课,提高了服务的可用时间。具体实施方式下面对本专利技术作进一步的说明。一种基于服务器负载情况为课堂分配服务器的方法,主要的组成部分是:客户端,用于向课堂分配器请求登录课堂;课堂分配服务器,用于接收客户端的请求,并分配课堂服务器;课堂服务器,用于处理客户端的课堂数据。本专利技术方法的具体步骤是:步骤(1)、启动课堂分配器,接受课堂服务器的连接;步骤(2)、各课堂服务器启动,并向课堂分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接,课堂服务器告知课堂分配器本课堂服务器最大支持的课堂数量,课堂分配器为各课堂服务器分配一个备份课堂数据的课堂服务器,如A、B、C三个课堂服务器,课堂服务器A与课堂服务器B相互备份课堂数据,课堂服务器A备份课堂服务器C的课堂数据;步骤(3)、课堂服务器每秒通知课堂分配器本课堂服务器当前CPU、内存使用情况、存在的课堂数量、各课堂人数和所有课堂人数的总和;步骤(4)、课堂分配器接收到各课堂服务器通知的各课堂信息时,课堂分配器按课堂服务器分开保存各课堂服务器中的当前课堂信息,记为课堂服务器课堂信息列表SC,以及课堂分配器按课堂号保存所有课堂服务器中的课堂信息,记为课堂信息列表CI。课堂服务器课堂信息列表SC中的课堂,如果在对应的课堂服务器通知的课堂信息中存在,则将课堂信息列表CI中将本课堂标记为未结束并清除结束时间;如果不存在的话,则在课堂分配服务器中的课堂信息列表CI将本课堂标记已结束并记录结束时间,将课堂从课堂服务器课堂信息列表SC中删除;步骤(5)、课堂分配服务器启动独立的线程每秒检测课堂信息列表CI中各课堂结束时间,如果当前时间与课堂结束时间超过6小时,则将课堂信息从课堂信息列表CI中删除,认为课堂下次启动时可以不再分配在记录的课堂服务器中;步骤(6)、课堂分配器接收到客户端登录请求时,按以下规则进行课堂分配:①如果客户端登录的课堂在课堂信息列表CI中,且课堂并未结束,则无需分配课堂服务器;②如果客户端登录的课堂在课堂信息列表CI中,课堂已结束,则判断课堂服务器中的课堂数量是否已达到上限,如果没有到上限,则将课堂分配在记录的服务器中;③如果客户端登录的课堂在课堂信息列表CI中,课堂已结束,则判断课堂服务器中的课堂数量是否已达到上限,如果达到上限,则判断当前课堂服务器的备份课堂服务器课堂数量是否达到上限,如果没有达到上限,则将课堂分配在记录的课堂服务器对应的备份课堂服务器④如果客户端登录的课堂在课堂信息列表CI中,课堂已结束,则判断课堂服务器中的课堂数量是否已达到上限,如果达到上限,则判断当前课堂服务器的备份本文档来自技高网...

【技术保护点】
1.一种基于服务器负载情况为课堂分配服务器的方法,其特征在于包括如下步骤:步骤(1)、启动课堂分配器,接受课堂服务器的连接;步骤(2)、课堂服务器启动,并向课堂分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接,课堂服务器告知课堂分配器本课堂服务器最大支持的课堂数量,课堂分配器为各个课堂服务器仅分配一个备份课堂数据的课堂服务器;步骤(3)、课堂服务器每隔时间T通知课堂分配器本课堂服务器当前CPU、内存使用情况、存在的课堂数量、各课堂人数和所有课堂人数的总和;步骤(4)、课堂分配器接收到各课堂服务器通知的各课堂信息时,课堂分配器按课堂服务器分开保存各课堂服务器中的当前课堂信息,记为课堂服务器课堂信息列表SC,以及课堂分配器按课堂号保存所有课堂服务器中的课堂信息,记为课堂信息列表CI;课堂服务器课堂信息列表SC中的课堂,如果在对应的课堂服务器通知的课堂信息中存在,则将课堂信息列表CI中将本课堂标记为未结束并清除结束时间;如果不存在,则在课堂分配器中的课堂信息列表CI将本课堂标记已结束并记录结束时间,将课堂从课堂服务器的课堂信息列表SC中删除;步骤(5)、课堂分配器启动独立的线程每隔时间T检测课堂信息列表CI中各课堂结束时间,如果当前时间与课堂结束时间超过N小时,则将课堂信息从课堂信息列表CI中删除,认为课堂下次启动时可以不再分配在记录的课堂服务器中;步骤(6)、课堂分配器接收到客户端登录请求时,按规则为课堂分配课堂服务器;步骤(7)、客户端登录课堂服务器,课堂服务器创建课堂,检测磁盘上是否存在历史课堂数据,如果存在,则将课堂数据载入课堂;课堂服务器每分钟将课堂数据保存在磁盘上。...

【技术特征摘要】
1.一种基于服务器负载情况为课堂分配服务器的方法,其特征在于包括如下步骤:步骤(1)、启动课堂分配器,接受课堂服务器的连接;步骤(2)、课堂服务器启动,并向课堂分配器建立基于SOCKET(套接字)的TCP(传输控制协议)连接,课堂服务器告知课堂分配器本课堂服务器最大支持的课堂数量,课堂分配器为各个课堂服务器仅分配一个备份课堂数据的课堂服务器;步骤(3)、课堂服务器每隔时间T通知课堂分配器本课堂服务器当前CPU、内存使用情况、存在的课堂数量、各课堂人数和所有课堂人数的总和;步骤(4)、课堂分配器接收到各课堂服务器通知的各课堂信息时,课堂分配器按课堂服务器分开保存各课堂服务器中的当前课堂信息,记为课堂服务器课堂信息列表SC,以及课堂分配器按课堂号保存所有课堂服务器中的课堂信息,记为课堂信息列表CI;课堂服务器课堂信息列表SC中的课堂,如果在对应的课堂服务器通知的课堂信息中存在,则将课堂信息列表CI中将本课堂标记为未结束并清除结束时间;如果不存在,则在课堂分配器中的课堂信息列表CI将本课堂标记已结束并记录结束时间,将课堂从课堂服务器的课堂信息列表SC中删除;步骤(5)、课堂分配器启动独立的线程每隔时间T检测课堂信息列表CI中各课堂结束时间,如果当前时间与课堂结束时间超过N小时,则将课堂信息从课堂信息列表CI中删除,认为课堂下次启动时可以不再分配在记录的课堂服务器中;步骤(6)、课堂分配器接收到客户端登录请求时,按规则为课堂分配课堂服务器;步骤(7)、客户端登录课堂服务器,课堂服务器创建课堂,检测磁盘上是否存在历史课堂数据,如果存在,则将课堂数据载入课堂;课堂服务器每分钟将课堂数据...

【专利技术属性】
技术研发人员:陈武平
申请(专利权)人:浙江万朋教育科技股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1