应用程序及数据库的热部署方法及装置的制造方法_3

文档序号:9523998阅读:来源:国知局
已在实施例一中详细说明,在此不再赘述。
[0052]步骤202:第一数据库在前端应用程序将用户访问请求转发给第二后端应用程序处理之后,进行数据库表结构的删除和/或修改操作。
[0053]本发明实施例中,当第一后端应用程序以及第二后端应用程序共用第一数据库时,对数据的不同升级操作选择不同的时机执行,这样能够保证数据库能够正常提供服务。
[0054]实施例三
[0055]如图3所示,为本发明实施例中热部署应用程序,需要对数据库升级时,数据库的热部署流程示意图,该方法适用于第一后端应用程序以及第二后端应用程序各有一数据库的情况,具体的,该方法包括以下步骤:
[0056]步骤301:第三数据库在第一后端应用程序接收并处理前端应用程序转发的用户访问请求时,对与第一后端应用程序连接的第二数据库进行热备份;其中,所述应用程序包括前端应用程序和第一后端应用程序两部分,其中,前端应用程序为升级时不需要重启的部分应用程序;第一后端应用程序为升级时需要重启的部分应用程序;第二后端应用程序为第一后端应用程序的备份,并用于升级后接替第一后端应用程序接收并处理前端应用程序转发的后续接收到的用户访问请求以及第一前端应用程序未处理完的用户访问请求;其中,第三数据库与第二后端应用程序连接。
[0057]步骤302:第三数据库在升级完成后,并在第二后端应用程序接收并处理前端应用程序转发的后续接收到的用户访问请求以及第一前端应用程序未处理完的用户访问请求时,将对用户访问请求的处理结果同步至第四数据库,以使第四数据库对第三数据库进行热备份,并将第三数据库视为第二数据库,第四数据库视为第三数据库。
[0058]例如,继续实施例一中的前端应用程序B、第一后端应用程序C以及第二后端应用程序D的例子:开始阶段,前端应用程序接收用户访问请求,并将该请求转发给第一后端应用程序C处理,第一后端应用程序C与第二数据库连接,通过第二数据库提供服务;升级应用程序时,在第一后端应用程序C与第二数据库提供服务时,升级第二后端应用程序D以及第三数据库,升级成功后,设置第四数据库用于与第三数据库进行数据同步。其中,在一个实施例中,为避免数据混乱和应用程序的正常运行,第二数据库将数据单向同步到第三数据库,而不允许反向同步数据,第三数据库将数据单向同步到第四数据库,而不允许反向同步数据。然后,前端应用程序B将用户请求转发给第二后端应用程序D,由第二后端应用程序D以及第三数据库提供服务,并且第三数据库将数据同步给第四数据库。
[0059]将第三数据库视为第二数据库,第四数据库视为第三数据库,以便于下次进行升级,例如,继续前面的例子,下次升级时,开始由第二数据库(即原来的第三数据库)提供服务,由第三数据库(即原来的第四数据库)对第二数据库进行热备份,并部署新的第四数据库对第三数据库进行热备份,然后,对第三数据库进行升级,升级完成后,则将由第三数据库接替第二数据库提供服务。
[0060]本发明实施例,通过设立独立的数据库,可以便于实现热部署应用程序时,独立升级数据库。
[0061]实施例四
[0062]基于相同的发明构思,本发明实施例还提供一种应用程序的热部署装置,如图4所示,所述装置包括:
[0063]请求接收模块401,用于前端应用程序接收用户访问请求,并将用户访问请求转发给第一后端应用程序处理;其中,所述应用程序包括前端应用程序和第一后端应用程序两部分,其中,前端应用程序为升级时不需要重启的部分应用程序;第一后端应用程序为升级时需要重启的部分应用程序;
[0064]转发模块402,用于当接收到作为第一后端应用程序的备份的第二后端应用程序已升级完成的指令时,将后续接收到的用户访问请求以及第一后端应用程序未处理完的用户访问请求转发给第二后端应用程序处理,并将第二后端应用程序视为第一后端应用程序。
[0065]其中,在一个实施例中,所述装置还包括:
[0066]前端升级模块,用于所述转发模块将将后续接收到的用户访问请求以及第一后端应用程序未处理完的用户访问请求转发给第二后端应用程序处理之后,升级前端应用程序。
[0067]其中,在一个实施例中,所述第一后端应用程序以及所述第二后端应用程序共用第一数据库;或,
[0068]所述第一后端应用程序使用第二数据库,所述第二后端应用程序使用第三数据库;且,当所述第一后端应用程序处理用户请求时,所述第三数据库为所述第二数据库的热备份数据库。
[0069]本发明实施例提供的应用程序的热部署装置,通过将应用程序划分为前端应用程序和第一后端应用程序,在升级时,可以直接对前端应用程序升级,而第一后端应用程序在升级时具有备份,即第二后端应用程序,升级时,升级第二后端应用程序,并同时由第一后端应用程序处理用户访问请求。第二后端应用程序升级成功后,则由前端应用程序将用户访问请求转发给第二后端应用程序处理。则可以实现无需暂停服务便实现对应用的升级,从而实现对应用程序的热部署。
[0070]实施例五
[0071]基于相同的发明构思,本发明实施例还提供一种应用程序的数据库的热部署装置,如图5所示,该装置包括:
[0072]新增表模块501,用于第一数据库在第二后端应用程序升级前,执行新增表结构的升级;其中,所述应用程序包括前端应用程序和第一后端应用程序两部分,其中,前端应用程序为升级时不需要重启的部分应用程序;第一后端应用程序为升级时需要重启的部分应用程序;第二后端应用程序为第一后端应用程序的备份,并用于升级后接替第一后端应用程序接收并处理前端应用程序转发的后续接收到的用户访问请求以及第一前端应用程序未处理完的用户访问请求;
[0073]更新表模块502,用于第一数据库在前端应用程序将用户访问请求转发给第二后端应用程序处理之后,进行数据库表结构的删除和/或修改操作。
[0074]本发明实施例中,当第一后端应用程序以及第二后端应用程序共用第一数据库时,对数据的不同升级操作选择不同的时机执行,这样能够保证数据库能够正常提供服务。
[0075]实施例六
[0076]基于相同的发明构思,本发明实施例还提供一种应用程序的数据库的热部署装置,如图6所示,该装置包括:
[0077]热备份模块601,用于第三数据库在第一后端应用程序接收并处理前端应用程序转发的用户访问请求时,对与第一后端应用程序连接的第二数据库进行热备份;其中,所述应用程序包括前端应用程序和第一后端应用程序两部分,其中,前端应用程序为升级时不需要重启的部分应用程序;第一后端应用程序为升级时需要重启的部分应用程序;第二后端应用程序为第一后端应用程序的备份,并用于升级后接替第一后端应用程序接收并处理前端应用程序转发的后续接收到的用户访问请求以及第一前端应用程序未处理完的用户访问请求;其中,第三数据库与第二后端应用程序连接;
[0078]请求处理模块602,用于第三数据库在升级完成后,并在第二后端应用程序接收并处理前端应用程序转发的后续接收到的用户访问请求以及第一前端应用程序未处理完的用户访问请求时,将对用户访问请求的处理结果同步至第四数据库,以使第四数据库对第三数据库进行热备份,并将第三数据库视为第二数据库,第四数据库视为第三数据库。
[0079]本发明实施例,通过设立独立的数据库,可以便于实现热部署应用程序时,独立升级数据库。
[0080]关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0081]本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0082]本发明是参照根据本发明实施例的方法、装置(装置)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1