一种在线课程报名的处理方法及系统与流程

文档序号:11154347阅读:459来源:国知局
一种在线课程报名的处理方法及系统与制造工艺

本发明实施例涉及计算机网络通信领域,尤其涉及一种在线课程报名的处理方法及系统。



背景技术:

随着互联网+教育时代的兴起以及数字化教育的高速发展,越来越多的用户通过在线学习平台报名进行网络课程学习,导致高并发场景越来越多,而报名与选课就是在线课程学习平台中比较典型的高并发场景。

目前在线课程报名基本上都是采用传统的三层软件设计架构,即用户界面表示层、业务逻辑层和数据访问层,其中,表示层为用户提供交互式的界面,业务逻辑层负责数据的处理与传递,数据访问层对数据进行保存、读取和更新。使用三层软件设计架构能使项目结构清楚明确,有利于各层逻辑的复用,但传统三层软件架构仍存在以下缺点:

传统三层软件构建必须通过业务逻辑层获取相应的数据,大大降低了数据的访问速度,甚至导致数据库没有响应,在高并发、大数据的情况下,这种缺陷更是会被放大化,导致工作量与代码量呈数量级增长,严重影响在线课程报名系统的稳定与安全。



技术实现要素:

有鉴于此,本发明实施例提供了一种在线课程报名的处理方法及系统,以实现高并发、大数据情况下在线课程报名系统的稳定与安全。

第一方面,本发明实施例提供了一种在线课程报名的处理方法,包括:

对课程处理界面进行静态化处理,并向用户进行显示;

接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理;

根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理。

进一步地,所述对课程处理界面进行静态化处理,并向用户进行显示包括:

将所述课程处理界面中的图片进行压缩,以形成静态化处理界面,并向用户进行显示。

进一步地,所述对课程处理界面进行静态化处理,并向用户进行显示之前,还包括至少一种:

按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示;

按照当前用户的处理状态,将所述课程处理界面中禁止用户权限的按钮置为无效,并向用户进行显示;

如果发起处理请求的当前用户数量超出课程操作人数上限,将所述课程处理界面中的按钮置为无效,并向用户进行显示。

进一步地,所述接收到用户通过所述课程处理界面反馈的处理请求之后,还包括:

根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选。

进一步地,所述接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理包括:

接收到用户通过所述课程处理界面反馈的处理请求时,查找与所述处理请求所携带版本号对应的服务器版本号,将所述处理请求发送至版本号对应的服务器进行处理;或

接收到用户通过所述课程处理界面反馈的处理请求时,按照处理请求的发起时间顺序将处理请求放入一个队列,按照所述队列中处理请求的顺序,将处理请求依次分发给至少两个服务器进行处理。

进一步地,所述根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理包括:

根据至少两个所述处理请求中的报名信息,在内存中进行查找;

如果所述内存中存在包括所述报名信息的待处理数据,则对相应的处理请求进行响应处理,直至全部处理请求的报名信息查找完毕;

如果所述内存中不存在包括所述报名信息的待处理数据时,则从数据库中将待处理数据读取至内存中进行响应处理。

另一方面,本发明实施例提供了一种在线课程报名的处理系统,包括:

界面静态化模块,用于对课程处理界面进行静态化处理,并向用户进行显示;

负载均衡模块,用于接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理;

请求响应模块,用于根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理。

进一步地,所述界面静态化模块具体用于:

将所述课程处理界面中的图片进行压缩,以形成静态化处理界面,并向用户进行显示。

进一步地,在上述系统的基础上,还包括下述模块中的至少一个:

时间控制按钮模块,用于对课程处理界面进行静态化处理,并向用户进行显示之前,按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示;

状态控制按钮模块,用于对课程处理界面进行静态化处理,并向用户进行显示之前,按照当前用户的处理状态,将所述课程处理界面中禁止用户权限的按钮置为无效,并向用户进行显示;

上限控制按钮模块,用于对课程处理界面进行静态化处理,并向用户进行显示之前,如果发起处理请求的当前用户数量超出课程操作人数上限,将所述课程处理界面中的按钮置为无效,并向用户进行显示。

进一步地,在上述系统的基础上,还包括:

请求筛选模块,用于接收到用户通过所述课程处理界面反馈的处理请求之后,根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选。

进一步地,所述负载均衡模块包括:

版本号控制单元,用于查找与所述处理请求所携带版本号对应的服务器版本号,将所述处理请求发送至版本号对应的服务器进行处理;或

队列控制单元,用于接收到用户通过所述课程处理界面反馈的处理请求时,按照处理请求的发起时间顺序将处理请求放入一个队列,按照所述队列中处理请求的顺序,将处理请求依次分发给至少两个服务器进行处理。

进一步地,所述请求响应模块具体用于:

根据至少两个所述处理请求中的报名信息,在内存中进行查找;

如果内存中存在包括所述报名信息的待处理数据,则对相应的处理请求进行响应处理,直至全部处理请求的报名信息查找完毕;

如果所述内存中不存在包括所述报名信息的待处理数据时,则从数据库中将待处理数据读取至内存中进行响应处理。

本发明实施例通过对课程处理界面进行静态化处理,使用反向代理负载均衡技术将不同用户反馈的处理请求分发到至少两个服务器进行处理,同时根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理,解决了大并发情况下在线课程报名业务不流畅、稳定性差的问题,保证了高并发、大数据情况下在线课程报名系统的安全,大大提高了在线课程报名系统的稳定性,为学生在线学习提供良好的用户体验。

附图说明

图1是本发明实施例一提供的一种在线课程报名的处理方法的流程图;

图2是本发明实施例二提供的一种在线课程报名的处理方法的流程图;

图3是本发明实施例三提供的一种在线课程报名的处理方法的流程图;

图4是本发明实施例四提供的一种在线课程报名的处理系统的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的一种在线课程报名的处理方法的流程图,本实施例的技术方案可以应用在需要对用户的在线报名请求进行处理的场景,可以由本发明实施例所提供的在线课程报名系统来执行,该系统可以采用软件和/或硬件的方式来实现,该系统可以集成于能够对用户的在线报名请求进行处理的后台服务器或服务器集群内。该方法包括:

S110,对课程处理界面进行静态化处理,并向用户进行显示。

在处理报名请求前,通常服务器需提供课程处理的网站,将各种功能的课程处理界面通过浏览器或客户端显示给用户,从而接收用户在课程处理界面上进行操作而反馈的处理请求。其中,对课程处理界面进行静态化处理,例如可以是使用压缩算法对所述课程处理界面中的图片进行压缩,以形成静态化处理界面,增加用户对在线课程报名页面的访问速度,优选的,使用的压缩算法可以是js压缩算法。向用户进行显示是指将静态化处理过的课程处理界面通过显示设备呈现给进行在线课程报名的用户,优选地,显示设备可以是计算机、平板电脑或手机等。

S120,接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理。

其中,用户通过所述课程处理界面反馈处理请求可以通过用户点击交互界面中的报名按钮实现。反向代理负载均衡技术是指反向代理服务器接收用户通过课程处理界面反馈的处理请求,然后将所有的处理请求转发到至少两个应用服务器上进行处理,并将从应用服务器上得到的处理结果返回至交互界面请求连接的客户端,优选的,反向代理服务器可以是Nginx反向代理服务器,应用服务器可以是网站服务器。本实施例使用反向代理负载均衡技术,有效缓解了大并发情况下各个应用服务器的承载压力。

优选的,接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理可以通过乐观锁算法来实现,具体的,当服务器接收到用户通过所述课程处理界面反馈的处理请求时,查找服务器中是否存在与处理请求所携带版本号对应的服务器版本号,如果有,则将处理请求发送到对应的服务器进行处理。这种做法使用版本号对用户发出的处理请求进行控制,确保一个服务器针对一个用户每次只接收一个处理请求,保证了在线课程报名体统的安全性,对恶意IP同时发送多个处理请求的情况进行了限制。

优选的,接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理还可以通过队列实现,具体的,当服务器接收到用户通过所述课程处理界面反馈的处理请求时,按照处理请求的发起时间顺序将处理请求依次放入一个队列,按照队列中处理请求的顺序,将处理请求依次分发给至少两个服务器进行处理。这种方法实现了大并发情况下,服务器每次只接收一个处理请求,防止大量处理请求并发导致在线课程报名系统崩溃。

S130,根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理。

其中,优先调用内存数据进行响应处理是指首先在内存中查找是否存在包括相应报名信息的待处理数据,如果存在,则对相应的处理请求进行响应处理,直至查找到全部处理请求的报名信息;如果不存在,则从数据库中将待处理数据读取至内存中进行响应处理,优选地,数据库内存可以是Redis内存缓存服务器。这里使用数据库结合内存缓存的方式大大加快了处理数据库中包括报名信息待处理数据的速度,采用内存缓存的方式提高了了大并发情况下系统的稳定性与安全性。

本实施例的技术方案,针对大并发情况下在线课程报名业务不稳定、系统容易崩溃的问题,通过对课程处理界面进行静态化处理,使用反向代理负载均衡技术实现了对海量报名请求的拦截与筛选,保证了在线课程报名系统的安全性,同时在数据库对包括报名请求的待处理数据进行处理时,采用数据库结合内存缓存的方法,保证了处理海量数据时数据库的稳定性。

实施例二

图2是本发明实施例二提供的一种在线课程报名的处理方法的流程图,该方法以前述实施例为基础,增加了按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示这一步骤。

相应的,本实施例的方法包括:

S210,按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示。

S220,对课程处理界面进行静态化处理,并向用户进行显示。

S230,接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理。

S240,根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理。

具体的,按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示是指对报名按钮进行时间限定,只允许用户在规定时间内进行报名,而对于规定时间外报名的用户,将课程处理界面中的按钮置为无效,并在交互界面上向用户进行显示,优选的,将按钮置为无效的方式可以是将按钮置灰,无效处理时间的范围可以采用客户端与服务器的同步时间范围。

本实施例增加了按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示这一步骤,依据无效处理时间范围对课程处理界面中的按钮进行控制,规定了用户提交处理请求的时间,限制了用户提交处理请求的频率,在交互界面层面上解决了大并发情况容易导致系统不稳定的问题。

可选的,增加的步骤还可以是按照当前用户的处理状态,将所述课程处理界面中禁止用户权限的按钮置为无效,并向用户进行显示。具体地,如果当前用户还未在课程处理界面上发出过报名请求,将课程处理界面中禁止用户权限的按钮置为无效,允许还未报名的用户进行报名,保证在线课程报名系统对未报名用户开放。如果当前用户的处理状态是已经发起过多次报名,则禁止其报名权限,将相应的按钮置为无效。

可选的,增加的步骤还可以是如果发起处理请求的当前用户数量超出课程操作人数上限,将所述课程处理界面中的按钮置为无效,并向用户进行显示。具体的,如果发起处理请求的用户数量超出了课程设置的报名人数上限,则将按钮置为无效,此时不再接收任何用户发出的处理请求,保证在线课程报名系统稳定运行。

可选的,增加的步骤可以是上述三个步骤中的至少一个。

实施例三

图3是本发明实施例三提供的一种在线课程报名的处理方法的流程图,该方法以前述实施例为基础,增加了根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选这一步骤。

相应的,本实施例的方法包括:

S310,对课程处理界面进行静态化处理,并向用户进行显示。

S320,接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理。

S330,根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理。

S340,根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选。

具体的,根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选是指当服务器接收到用户发出的处理请求时,判断是否还有报名余额,如果有,则使用反向代理负载均衡技术,将报名请求分发到不同服务器进行处理;如果已经没有报名余额,则拒绝接收该报名请求。

本实施例增加了根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选这一步骤,通过用户请求数量门限值限定了服务器接收报名处理请求的上限,解决了大并发情况下大量处理请求并行发生容易导致系统崩溃的问题,提高了在线课程报名系统的稳定性与安全性。

实施例四

图4为本发明实施例四提供的一种在线课程报名处理系统的结构示意图,该系统包括:界面静态化模块410,用于对课程处理界面进行静态化处理,并向用户进行显示;负载均衡模块420,用于接收到用户通过所述课程处理界面反馈的处理请求时,使用反向代理负载均衡技术,将不同用户的处理请求分发到至少两个服务器进行处理;请求响应模块430,用于根据当前获取的至少两个处理请求,优先调用内存数据进行响应处理。

优选的,所述界面静态化模块410具体可以用于将所述课程处理界面中的图片进行压缩,以形成静态化处理界面,并向用户进行显示。

优选的,在上述系统的基础上,还包括下述模块中的至少一个:

时间控制按钮模块,用于对课程处理界面进行静态化处理,并向用户进行显示之前,按照课程的无效处理时间范围,将所述课程处理界面中的按钮置为无效,并向用户进行显示;

状态控制按钮模块,用于对课程处理界面进行静态化处理,并向用户进行显示之前,按照当前用户的处理状态,将所述课程处理界面中禁止用户权限的按钮置为无效,并向用户进行显示;

上限控制按钮模块,用于对课程处理界面进行静态化处理,并向用户进行显示之前,如果发起处理请求的当前用户数量超出课程操作人数上限,将所述课程处理界面中的按钮置为无效,并向用户进行显示。

优选的,在上述系统的基础上,还包括:

请求筛选模块,用于负载均衡模块之后,根据用户处理请求数量门限值,对每个用户发送的处理请求进行筛选。

优选的,所述负载均衡模块420包括:

版本号控制单元,用于查找与所述处理请求所携带版本号对应的服务器版本号,将所述处理请求发送至版本号对应的服务器进行处理;或

队列控制单元,用于接收到用户通过所述课程处理界面反馈的处理请求时,按照处理请求的发起时间顺序将处理请求放入一个队列,按照所述队列中处理请求的顺序,将处理请求依次分发给至少两个服务器进行处理。

优选的,所述请求响应模块430可以用于根据至少两个所述处理请求中的报名信息,在内存中进行查找。如果内存中存在包括所述报名信息的待处理数据,则对相应的处理请求进行响应处理,直至全部处理请求的报名信息查找完毕;如果不存在,则从数据库中将待处理数据读取至内存中进行响应处理。

通过本发明实施例四提供的一种在线课程报名的处理系统,解决了大并发情况下在线课程报名系统容易崩溃的问题,提高了在线课程报名业务的稳定性和流畅性,为用户的在线学习提供了良好的用户体验。

本发明实施例提供的在线课程报名的处理系统可执行人发明任意实施例所提供的在线课程报名的处理方法,具备执行方法相应的功能模块和有益效果。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1