CN116866260A - 一种基于cdn的应用同城双活方法及系统 - Google Patents

一种基于cdn的应用同城双活方法及系统 Download PDF

Info

Publication number
CN116866260A
CN116866260A CN202310789291.6A CN202310789291A CN116866260A CN 116866260 A CN116866260 A CN 116866260A CN 202310789291 A CN202310789291 A CN 202310789291A CN 116866260 A CN116866260 A CN 116866260A
Authority
CN
China
Prior art keywords
routing table
cdn
user partition
local
cache
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.)
Pending
Application number
CN202310789291.6A
Other languages
English (en)
Inventor
姜涛
孙炎森
徐晓剑
滕其武
张战锋
赵琨
李兴
荆梦雨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Citic Bank Corp Ltd
Original Assignee
China Citic Bank Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Citic Bank Corp Ltd filed Critical China Citic Bank Corp Ltd
Priority to CN202310789291.6A priority Critical patent/CN116866260A/zh
Publication of CN116866260A publication Critical patent/CN116866260A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于CDN的应用同城双活方法及系统,包括客户端判断本地是否缓存有用户分区;若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;访问内容分发网络CDN,获取路由表缓存至本地;基于所述路由表发起业务请求。可以做到精准、快速的流量分配,无需通过全局的交易路由系统,减少了实施的难度。解决了直接通过交易系统提供路由表管理,在海量客户端定时轮询的情况下,对交易系统带来很大的流量冲击,且当交易系统涉及故障问题,客户端轮询还需要考虑机房故障切换的问题。

Description

一种基于CDN的应用同城双活方法及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于CDN的应用同城双活方法及系统。
背景技术
近年来,随着互联网技术的发展,用户通过网络下载的内容也越来越多。为了提高数据量较大的资源示例性的大型软件、游戏或者视频文件的下载速度。可以使用内容分发网络(Content DeliveryNetwork,CDN)服务,通过在网络各处放置边缘服务器,并将内容即用户需要的资源分发至最接近用户的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近从边缘服务器获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
同城双活是一种提升应用高可用的非常重要的手段,目前,现有技术中采用智能DNS按照地区、运营商等因素进行双机房流量分类和故障处理。对流量调度有精准要求的,需要增加一个全局的交易路由系统或是直接通过交易系统提供路由表管理。而上述方法无法做到精准、快速的流量分配,如果需要精准调度需要全局的交易路由系统,大大增加了实施的难度。若直接通过交易系统提供路由表管理,在海量客户端定时轮询的情况下,对交易系统带来很大的流量冲击;且交易系统涉及故障问题,客户端轮询还需要考虑机房故障切换。
发明内容
为了解决上述背景技术中提到的至少一个,本发明提出一种基于CDN的应用同城双活方法及系统,通过引入内容分发网络CDN,做到精准、快速的流量分配,无需通过全局的交易路由系统,减少了实施的难度。解决了直接通过交易系统提供路由表管理,在海量客户端定时轮询的情况下,对交易系统带来很大的流量冲击,且当交易系统涉及故障问题,客户端轮询还需要考虑机房故障切换的问题。
为实现以上目的,本发明所采用的技术方案包括:
一种基于CDN的应用同城双活方法,包括:
S1、客户端判断本地是否缓存有用户分区;
S2、若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;
S3、若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;
访问内容分发网络CDN,获取路由表缓存至本地;
S4、基于所述路由表发起业务请求。
进一步地,所述S1之前还包括:服务端计算用户分区并进行所述路由表管理;
将所述用户分区应答至所述客户端;
将所述路由表推送至所述访问内容分发网络CDN。
进一步地,所述方法还包括:
客户端定期访问所述访问内容分发网络CDN获取最新版本的路由表;
判断本地路由表与所述最新版本的路由表是否一致;
若本地路由表与所述最新版本的路由表不一致,则提示用户重启客户端。
进一步地,所述路由表为json文件。
本发明还涉及一种基于CDN的应用同城双活系统,包括:
判断模块,用于客户端判断本地是否缓存有用户分区;
第一获取模块,用于若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;
第二获取模块,用于若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;
访问内容分发网络CDN,获取路由表缓存至本地;
请求模块,用于基于所述路由表发起业务请求。
本发明还涉及一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
本发明还涉及一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还涉及一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现上述方法的步骤。
本发明的有益效果为:
本发明通过引入内容分发网络CDN,做到精准、快速的流量分配,无需通过全局的交易路由系统,减少了实施的难度。解决了直接通过交易系统提供路由表管理,在海量客户端定时轮询的情况下,对交易系统带来很大的流量冲击,且当交易系统涉及故障问题,客户端轮询还需要考虑机房故障切换的问题。通过采用一种相对低成本的方案快速实施同城双活方案,提升业务连续性。
附图说明
图1为本发明一种基于CDN的应用同城双活方法流程示意图。
图2为本发明一种基于CDN的应用同城双活系统结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,在本申请的描述中,除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
还应当理解,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
需要注意的是,术语“S1”、“S2”等仅用于步骤的描述目的,并非特别指称次序或顺位的意思,亦非用以限定本申请,其仅仅是为了方便描述本申请的方法,而不能理解为指示步骤的先后顺序。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
同城双活是一种提升应用高可用的非常重要的手段,目前,现有技术中采用智能DNS按照地区、运营商等因素进行双机房流量分类和故障处理。对流量调度有精准要求的,需要增加一个全局的交易路由系统或是直接通过交易系统提供路由表管理。而上述方法无法做到精准、快速的流量分配,如果需要精准调度需要全局的交易路由系统,大大增加了实施的难度。若直接通过交易系统提供路由表管理,在海量客户端定时轮询的情况下,对交易系统带来很大的流量冲击;且交易系统涉及故障问题,客户端轮询还需要考虑机房故障切换。
本发明第一方面涉及一种步骤流程如图1所示的基于CDN的应用同城双活方法,包括:
S1、客户端判断本地是否缓存有用户分区;
具体而言,在本申请实施例中,设置双活机房,例如两个机房分别域名是dc1.domain.com和dc2.domain.com;其标签和对应域名为:Dc1:a.domain.com,Dc2:b.domain.com。
进行用户分区:用用户ID或设备编号或其他标识,将用户分区,例如将用户分成100个区:Region1~Region100。
设置路由表:用户分区访问哪个机房,如:Region1:Dc1,Region2:Dc1。
具体而言,路由表是一个json文件,内容样例如下:
S2、若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;
S3、若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;
访问内容分发网络CDN,获取路由表缓存至本地;
S4、基于所述路由表发起业务请求。
具体而言,在本申请实施例中,服务端计算用户分区,并应答给客户端;同时访问内容分发网络CDN数据源为服务端,给客户端提供双活机房配置和路由表配置的加速访问,由服务端进行路由表管理并将路由表推送到CDN。具体而言,客户端启动,检查本地是否缓存了用户分区,如果没有则请求服务端获取用户分区和路由表,缓存用户分区和路由表到本地,开始业务请求。
在一些实施例中,客户端定期访问内容分发网络CDN获取最新的路由表,如果路由表与本地缓存不一致,则提示用户环境发生变化,退出客户端,引导用户重启。
通过引入内容分发网络CDN,做到精准、快速的流量分配,无需通过全局的交易路由系统,减少了实施的难度。解决了直接通过交易系统提供路由表管理,在海量客户端定时轮询的情况下,对交易系统带来很大的流量冲击,且当交易系统涉及故障问题,客户端轮询还需要考虑机房故障切换的问题。通过采用一种相对低成本的方案快速实施同城双活方案,提升业务连续性。
本发明另一方面还涉及基于CDN的应用同城双活系统,其结构如图2所示,包括:
判断模块,用于客户端判断本地是否缓存有用户分区;
第一获取模块,用于若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;
第二获取模块,用于若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;
访问内容分发网络CDN,获取路由表缓存至本地;
请求模块,用于基于所述路由表发起业务请求。
通过使用该系统,能够执行上述的运算处理方法并实现对应的技术效果。
本发明的实施例还提供能够实现上述实施例中的基于CDN的应用同城双活方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的基于CDN的应用同城双活的全部步骤。
本发明的实施例还提供一种用于执行上述方法的电子设备,作为该方法的实现装置,所述电子设备至少具备有处理器和存储器,特别是该存储器上存储有执行方法所需的数据和相关的计算机程序等,并通过由处理器调用存储器中的数据、程序执行实现方法的全部步骤,并获得对应的技术效果。
优选的,该电子设备可以包含有总线架构,总线可以包括任意数量的互联的总线和桥,总线将包括由一个或多个处理器和存储器的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和接收器和发送器之间提供接口。接收器和发送器可以是同一个元件,即收发机,提供用于在传输介质上与各种其他系统通信的单元。处理器负责管理总线和通常的处理,而存储器可以被用于存储处理器在执行操作时所使用的数据。
额外的,所述电子设备还可以进一步包括通信模块、输入单元、音频处理器、显示器、电源等部件。其所采用的处理器(或称为控制器、操作控件)可以包括微处理器或其他处理器装置和/或逻辑装置,该处理器接收输入并控制电子设备的各个部件的操作;存储器可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种,可储存上述有关的数据信息,此外还可存储执行有关信息的程序,并且处理器可执行该存储器存储的该程序,以实现信息存储或处理等;输入单元用于向处理器提供输入,例如可以为按键或触摸输入装置;电源用于向电子设备提供电力;显示器用于进行图像和文字等显示对象的显示,例如可为LCD显示器。通信模块即为经由天线发送和接收信号的发送机/接收机。通信模块(发送机/接收机)耦合到处理器,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)还经由音频处理器耦合到扬声器和麦克风,以经由扬声器提供音频输出,并接收来自麦克风的音频输入,从而实现通常的电信功能。音频处理器可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器还耦合到中央处理器,从而使得可以通过麦克风能够在本机上录音,且使得可以通过扬声器来播放本机上存储的声音。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的系统。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令系统的制造品,该指令系统实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
以上所述仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换等都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (8)

1.一种基于CDN的应用同城双活方法,其特征在于,包括:
S1、客户端判断本地是否缓存有用户分区;
S2、若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;
S3、若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;
访问内容分发网络CDN,获取路由表缓存至本地;
S4、基于所述路由表发起业务请求。
2.如权利要求1所述的方法,其特征在于,所述S1之前还包括:服务端计算用户分区并进行所述路由表管理;
将所述用户分区应答至所述客户端;
将所述路由表推送至所述访问内容分发网络CDN。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
客户端定期访问所述访问内容分发网络CDN获取最新版本的路由表;
判断本地路由表与所述最新版本的路由表是否一致;
若本地路由表与所述最新版本的路由表不一致,则提示用户重启客户端。
4.如权利要求1-3任一项所述的方法,其特征在于,所述路由表为json文件。
5.一种基于CDN的应用同城双活系统,其特征在于,包括:
判断模块,用于客户端判断本地是否缓存有用户分区;
第一获取模块,用于若本地缓存有用户分区,访问内容分发网络CDN,获取路由表缓存至本地;
第二获取模块,用于若本地未缓存有用户分区,则请求服务端获取所述用户分区,将所述用户分区缓存至本地;
访问内容分发网络CDN,获取路由表缓存至本地;
请求模块,用于基于所述路由表发起业务请求。
6.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法。
8.一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现权利要求1至4中任一项所述方法的步骤。
CN202310789291.6A 2023-06-30 2023-06-30 一种基于cdn的应用同城双活方法及系统 Pending CN116866260A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310789291.6A CN116866260A (zh) 2023-06-30 2023-06-30 一种基于cdn的应用同城双活方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310789291.6A CN116866260A (zh) 2023-06-30 2023-06-30 一种基于cdn的应用同城双活方法及系统

Publications (1)

Publication Number Publication Date
CN116866260A true CN116866260A (zh) 2023-10-10

Family

ID=88231500

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310789291.6A Pending CN116866260A (zh) 2023-06-30 2023-06-30 一种基于cdn的应用同城双活方法及系统

Country Status (1)

Country Link
CN (1) CN116866260A (zh)

Similar Documents

Publication Publication Date Title
CN104572278B (zh) 轻应用调用本地端能力的方法、装置及设备
US7870272B2 (en) Preserving a user experience with content across multiple computing devices using location information
US9294363B2 (en) Adjusting quality of service in a cloud environment based on application usage
CN102789469A (zh) 页面更新方法及系统
CN106528578A (zh) 一种信息展示方法及装置
CN110781149A (zh) 管理直播间信息的方法、装置、设备及存储介质
CN113391823A (zh) 灰度发布方法、装置及系统
US20170155741A1 (en) Server, method, and system for providing service data
CN106250536A (zh) 一种空间页面背景设置方法、装置及系统
CN105511914B (zh) 应用更新方法、装置和系统
CN103001989A (zh) 参数接收方法及系统
CN114257532A (zh) 服务端状态探测方法及装置
CN104219272B (zh) 缓存更新方法、终端和系统
CN103354927A (zh) 用于管理处理设备中的内容的方法和装置
CN112328413A (zh) 应用服务的调用方法、装置及系统
CN112231106A (zh) Redis集群的访问数据处理方法及装置
CN111767558A (zh) 数据访问监控方法、装置及系统
CN116866260A (zh) 一种基于cdn的应用同城双活方法及系统
EP2928105A2 (en) Content delivery architecture
CN111698337B (zh) 建立通信连接的方法、装置及设备
CN104346101A (zh) 存储空间动态分配系统及方法
CN113726882A (zh) 基于5g网络的信息服务系统、方法及装置、设备、介质
CN116450353A (zh) 处理器核匹配方法、装置、电子设备及存储介质
CN112637339A (zh) 网络加速方法及装置、电子设备及存储介质
CN112269622A (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