CN105338016B - 数据高速缓存方法和装置以及资源请求响应方法和装置 - Google Patents

数据高速缓存方法和装置以及资源请求响应方法和装置 Download PDF

Info

Publication number
CN105338016B
CN105338016B CN201410301784.1A CN201410301784A CN105338016B CN 105338016 B CN105338016 B CN 105338016B CN 201410301784 A CN201410301784 A CN 201410301784A CN 105338016 B CN105338016 B CN 105338016B
Authority
CN
China
Prior art keywords
group
user
cache
mapping
mark
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.)
Active
Application number
CN201410301784.1A
Other languages
English (en)
Other versions
CN105338016A (zh
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN201410301784.1A priority Critical patent/CN105338016B/zh
Priority to US14/725,455 priority patent/US10104151B2/en
Publication of CN105338016A publication Critical patent/CN105338016A/zh
Priority to US16/159,937 priority patent/US10659516B2/en
Application granted granted Critical
Publication of CN105338016B publication Critical patent/CN105338016B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • H04L67/5683Storage of data provided by user terminals, i.e. reverse caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/45Caching of specific data in cache memory
    • G06F2212/452Instruction code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种数据高速缓存方法和装置以及资源请求响应方法和装置。该数据高速缓存方法包括:接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求;检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射;以及响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容。因此,所高速缓存的群组内容可以由该用户群组的所有合法用户共享,但不会被该用户群组外的用户所获取。

Description

数据高速缓存方法和装置以及资源请求响应方法和装置
技术领域
本发明涉及数据高速缓存(caching)技术领域,更具体地,涉及一种数据高速缓存方法和装置以及一种资源请求响应方法和装置。
背景技术
数据高速缓存是诸如社交网络、合作网络应用等大规模数据处理应用改善响应时间的关键。这些应用中产生公共数据和私有数据两种数据。对于公共数据的高速缓存存在很好的解决方案,最常用的方式为:1)为诸如公共网页、公共文件等公共资源在HTTP(超文本传输协议)响应报头中设置公共可高速缓存HTTP报头,高速缓存服务器(例如IBM的WebSphere Edge服务器)将在本地高速缓存相关内容,并且如果所请求的内容位于其高速缓存(cache)中,则高速缓存服务器直接将相关内容返回给用户而不向应用服务器请求;2)将公共可高速缓存内容移动到区域高速缓存服务器(CDN,内容分发网络),并将用户请求路由到最近的高速缓存服务器以获得最佳性能。对于私有数据,最常用的方式为:1)不允许高速缓存;2)在HTTP响应中设置私有可高速缓存报头,这意味着该内容可以由终端用户浏览器高速缓存,但不可以由高速缓存服务器高速缓存,从而保证用户隐私。
然而,在网络应用中还存在第三种数据,对这种数据的访问仅限于特定用户群组的成员,该用户群组外的用户不允许访问这种数据。例如,用户群组可以是在线用户组、社区、团队等,相应的数据可以是博客、论坛讨论、维基页面、文件等等。对于这种数据,不能使用公共高速缓存,因为这将使数据暴露给群组外的用户。同时,使用私有高速缓存报头来处理这种数据则不能达到很好的性能,因为这种方式不能使高速缓存的数据在群组的各个成员之间共享,因而不能更好地提高系统性能,尤其是对于有成千上万用户的群组更是如此。
发明内容
本发明的目的在于提出一种可以使高速缓存的群组内容(即上述第三种数据)能够在群组的合法成员之间共享的技术方案,从而改善用户请求的响应时间并降低应用服务器的负担。
根据本发明的一个方面,提供了一种用于高速缓存服务器的数据高速缓存方法,包括:接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求;检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射;以及响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容。
在本发明的该方面中,可选地,该数据高速缓存方法还包括响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,向所述应用服务器转发所述资源请求,接收来自所述应用服务器的返回数据,并且响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,高速缓存所述返回数据中包含的所述群组内容,以及向所述用户端返回所述群组内容。
根据本发明的另一方面,提供了一种用于高速缓存服务器的数据高速缓存装置,包括:接收模块,配置为接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求;检查模块,配置为检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射;以及内容返回模块,配置为响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容。
在本发明的该另一方面中,可选地,该数据高速缓存装置还包括高速缓存建立模块,配置为响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,向所述应用服务器转发所述资源请求,接收来自所述应用服务器的返回数据,并且响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,高速缓存所述返回数据中包含的所述群组内容,以及向所述用户端返回所述群组内容。
根据本发明的再一方面,提供了一种用于应用服务器的资源请求响应方法,包括:接收用户从用户端发出的并通过高速缓存服务器转发的对属于特定用户群组的群组内容的资源请求;验证所述用户是否是所述用户群组的合法用户;以及响应于所述用户是所述用户群组的合法用户,向所述高速缓存服务器返回包含表示所述用户是所述用户群组的合法用户的返回码、标识所述用户群组的群组高速缓存标识以及所述群组内容的返回数据,用于所述高速缓存服务器建立所述用户与所述群组高速缓存标识之间的映射和所述群组内容与所述群组高速缓存标识之间的映射、以及高速缓存所述群组内容。
根据本发明的再一方面,提供了一种用于应用服务器的资源请求响应装置,包括:接收模块,配置为接收用户从用户端发出的并通过高速缓存服务器转发的对属于特定用户群组的群组内容的资源请求;验证模块,配置为验证所述用户是否是所述用户群组的合法用户;以及数据返回模块,配置为响应于所述用户是所述用户群组的合法用户,向所述高速缓存服务器返回包含表示所述用户是所述用户群组的合法用户的返回码、标识所述用户群组的群组高速缓存标识以及所述群组内容的返回数据,用于所述高速缓存服务器建立所述用户与所述群组高速缓存标识之间的映射和所述群组内容与所述群组高速缓存标识之间的映射、以及高速缓存所述群组内容。
根据本发明的再一方面,提供一种计算机程序产品,所述计算机程序产品包括可由计算机读取并存储指令的存储介质,所述指令可由所述计算机执行,以执行根据本发明的上述方面提供的用于高速缓存服务器的数据高速缓存方法的各步骤或者上述方面提供的用于应用服务器的资源请求响应方法的各步骤。
根据本发明,可以在高速缓存服务器中安全地高速缓存属于特定用户群组的群组内容,所高速缓存的群组内容可以由该用户群组的所有合法用户共享,但不会被该用户群组外的用户所获取,从而一方面改善了用户请求群组内容的响应时间以及减轻了应用服务器的工作负载,另一方面保证了群组内容的安全性。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。
图2示出了根据本发明的实施例的示例性网络系统的示意图。
图3示出了根据本发明的实施例的用于高速缓存服务器的数据高速缓存方法的流程图。
图4示出了根据本发明的另一实施例的用于高速缓存服务器的数据高速缓存方法的流程图。
图5示出了根据本发明的实施例的用于应用服务器的资源请求响应方法的流程图。
图6示出了根据本发明的实施例的用于高速缓存服务器的数据高速缓存装置的结构框图。
图7示出了根据本发明的实施例的用于应用服务器的资源请求响应装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
图2示出了根据本发明的实施例的示例性网络系统的示意图。该网络系统示例性地包括两个用户端201和202、一个高速缓存服务器203以及一个应用服务器204。需要说明的是,这里的用户端、高速缓存服务器和应用服务器的数目仅是示意性的,网络系统可以包括任意数目的用户端、高速缓存服务器和应用服务器。这里,用户端是指用户可以用于从网络上获取资源的任意终端设备,例如个人计算机、平板电脑、移动电话、智能电视等。应用服务器是指在网络上提供资源的任意服务器,例如网页服务器、网络游戏服务器、网络社区服务器、网络数据库服务器等等。高速缓存服务器是指逻辑上位于用户端与应用服务器之间用于将来自应用服务器的数据进行高速缓存,并可以在其上保存有所请求的数据时直接将相关数据发送给用户端。高速缓存服务器有时也称为代理服务器(proxy),例如IBM的WebSphere Edge服务器。通常,高速缓存服务器比应用服务器在地理上更接近于用户端,因而通过其高速缓存数据可以改善用户请求数据的响应时间。这里的高速缓存服务器和应用服务器都可以采用上述示例性计算机系统/服务器12的结构。在图2所示的网络系统中,用户端201或202的用户对应用服务器204的资源请求首先被高速缓存服务器203接收,高速缓存服务器203根据预定条件决定将该资源请求转发给应用服务器204处理还是直接响应该资源请求。此外,高速缓存服务器203可以高速缓存从应用服务器204返回的数据,并转发给用户端201或202。
图3示出了根据本发明的实施例的用于高速缓存服务器的数据高速缓存方法的流程图。首先,在步骤301,高速缓存服务器接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求。这里,群组内容是指仅可以由特定用户群组的合法用户访问而该用户群组外的用户不允许访问的内容(诸如博客、论坛讨论、维基页面、文件等)。用户可以从用户端利用表明其合法身份的用户令牌(token)以及所述群组内容的网络地址(例如,统一资源定位符URL)向所述应用服务器发出对所述群组内容的资源请求。通常,用户可以通过诸如HTTP协议的网络协议从用户端向应用服务器发出资源请求,例如,用户通常可以通过在用户端的网络浏览器的地址框中输入群组内容的网络地址而向应用服务器发出对该群组内容的资源请求。此外,为了验证特定用户是否为合法用户,即是否有权限访问应用服务器的特定内容(诸如私有内容或群组内容),通常需要用户通过用户名和密码登录应用服务器,在应用服务器验证该用户为合法用户(即成功登录)后,会向该用户端发送一用户令牌用于该用户向应用服务器请求资源时表明其合法身份。用户令牌通常可以保存在用户浏览器的cookie中,例如,在IBM的WebSphere应用服务器中,用户令牌是LtpaToken。然而,需要说明的是,在本发明中,不限于使用用户令牌表明用户的合法身份,也可以使用其它具有保密性的方式,例如直接使用用户名和密码的联合字符串。
在步骤302,高速缓存服务器检查检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射。在本发明中,当高速缓存服务器接收到来自用户端的资源请求时,需要判断是否可以直接将其中所高速缓存的内容返回给用户端还是需要将该资源请求转发给后端的应用服务器进行处理。在作此判断时,高速缓存服务器需要验证两个方面:一是所请求的群组内容是否已被高速缓存在该高速缓存服务器中;二是该用户是否是与其所请求的群组内容对应的用户群组的合法用户。根据本发明,高速缓存服务器通过建立两个映射来验证上述两个方面,即群组内容与用于标识用户群组的群组高速缓存标识之间的映射以及用户与该群组高速缓存标识之间的映射。换言之,如果高速缓存服务器中已经建立了某群组内容与表示某一用户群组的群组高速缓存标识之间的映射,则表明属于该用户群组的该群组内容已高速缓存在高速缓存服务器中;如果高速缓存服务器中已经建立了某一用户与该群组高速缓存标识之间的映射,则表明该用户是该用户群组的合法用户。由此可见,如果上述两个映射都已建立在高速缓存服务器中,则表明该用户所请求的群组内容已经高速缓存在该高速缓存服务器中,并且该用户有权访问该群组内容。作为示例,所述群组内容与所述群组高速缓存标识之间的映射可以通过所述群组内容的统一资源定位符(URL)与所述群组高速缓存标识之间的映射实现;所述用户与所述群组高速缓存标识之间的映射可以通过所述用户的用户令牌与所述群组高速缓存标识之间的映射实现。由于用户令牌由应用服务器产生,从而非法用户难以假冒合法身份,确保了数据的安全性。此外,上述映射可以通过映射表的形式实现,其中每一个映射是映射表的一个条目。例如,下面的表1和表2分别示例性地示出了群组内容/群组高速缓存标识映射表以及用户/群组高速缓存标识映射表,其中群组内容以URL表示,用户以用户令牌表示。需要说明的是,群组高速缓存标识可以是任意字符的组合,只要能够在高速缓存服务器中唯一地识别用户群组即可。
表1——群组内容/群组高速缓存标识映射表
URL 群组高速缓存标识
http://www.ibmxxx.com/communities/bigdata 111-222-333-444
http://www.ibmxxx.com/communities/cloud 555-666-777-888
表2——用户/群组高速缓存标识映射表
用户令牌 群组高速缓存标识
01234 111-222-333-444
56789 111-222-333-444
如果在步骤302中判断所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,则处理进入到步骤303。即,在步骤303中,高速缓存服务器响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射而向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容。如上所述,当上述两个映射都已建立在高速缓存服务器中时,表明该用户所请求的群组内容已经缓存在该高速缓存服务器中,并且该用户有权访问该群组内容,因此,高速缓存服务器直接向所述用户端返回高速缓存在其中的所述群组内容而不将该资源请求转发到后端的应用服务器,因而可以改善该请求的响应时间并减小应用服务器的工作负担。例如,假定高速缓存服务器中已经建立了上述表1和表2中的映射,则如果用户的用户令牌为01234或56789并且请求的群组内容的URL为http://www.ibmxxx.com/communities/bigdata,那么由于http://www.ibmxxx.com/communities/bigdata与群组高速缓存标识111-222-333-444之间的映射已经建立并且群组高速缓存标识111-222-333-444与用户令牌01234或56789之间的映射也已经建立,所以高速缓存服务器可以将缓存在其中的对应http://www.ibmxxx.com/communities/bigdata的群组内容直接返回给用户,而不需要将资源请求转发给后端的应用服务器。
根据本发明的该实施例,高速缓存在高速缓存服务器中的群组内容可以仅在群组的合法成员之间共享,而不会被该用户群组外的用户所获取,即,可以在高速缓存服务器中安全地高速缓存属于特定用户群组的群组内容,从而保证了群组内容的安全性。此外,由于可以在高速缓存服务器中以相对简单的逻辑判断用户的合法性以及群组内容的高速缓存复本的存在,而不用每次都向后端的应用服务器转发用户的资源请求来验证用户的合法性和请求相关的群组内容,从而改善了用户请求的响应时间并降低了应用服务器的负担。
需要说明的是,在高速缓存服务器中建立上述两种映射以及高速缓存群组内容的具体方式可以根据不同应用而采用多种方式,例如可以在高速缓存服务器初始化或更新时从应用服务器获取用于建立上述映射的信息以及相关群组内容,也可以在用户经由该高速缓存服务器访问应用服务器时从用户请求以及应用服务器的响应数据中获取用于建立上述映射的信息以及相关群组内容,等等;本发明对此不作限定。此外,在本发明的该实施例中,当高速缓存服务器中未建立上述两个映射中的至少一个时,高速缓存服务器可以将用户的资源请求转发给应用服务器处理。应用服务器的具体处理方式可以根据不同应用而采用多种设计,例如,可以仅常规地验证用户的合法性以及返回所请求的群组内容,也可以返回更多的信息以实现更多的功能(例如下文参照图4和图5所描述的操作);本发明对此不作限定。
图4示出了根据本发明的另一实施例的用于高速缓存服务器的数据高速缓存方法的流程图。在该实施例中,示例性地提供了一种建立群组内容与群组高速缓存标识之间的映射以及用户与群组高速缓存标识之间的映射的具体方式。在该实施例中,步骤401、402和403分别对应于图3的步骤301、302和303,上文关于这些步骤的具体描述同样适用于这里。
在步骤401,高速缓存服务器接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求。在步骤402,高速缓存服务器检查检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射。在步骤403,响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射而向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容。
然而,如果在步骤402中判断所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,则处理进入到步骤404。步骤404是高速缓存服务器中的上述映射以及群组内容高速缓存的建立步骤。上文说明了群组内容与群组高速缓存标识之间的映射以及用户与群组高速缓存标识之间的映射的含义、以及两者都已建立时高速缓存服务器的操作。步骤404中则以示例的方式说明上述映射未被建立时高速缓存服务器的操作、以及两者如何被建立。步骤404包括子步骤4041至4043。
在子步骤4041中,高速缓存服务器向所述应用服务器转发所述资源请求。如上文所说明,当群组内容与群组高速缓存标识之间的映射或用户与群组高速缓存标识之间的映射未建立时,表明所请求的群组内容未被高速缓存在高速缓存服务器中或者不能证明用户有权访问该群组内容,在这种情况下,高速缓存服务器将资源请求转发给后端的应用服务器处理。这样,高速缓存服务器直接向应用服务器转发请求而不处理复杂的身份验证,从而降低高速缓存服务器的复杂度。
应用服务器接收高速缓存服务器转发的资源请求后,将验证用户的合法性以及返回相关数据。图5示出了根据本发明的实施例的用于应用服务器的资源请求响应方法的流程图。在步骤501,应用服务器接收用户从用户端发出的并通过高速缓存服务器转发的对属于特定用户群组的群组内容的资源请求。在步骤502中,应用服务器验证所述用户是否是所述用户群组的合法用户。例如,应用服务器验证请求中的用户令牌是否有效,或者用户输入的用户名和密码是否匹配。如果在步骤502中判定所述用户是所述用户群组的合法用户,则应用服务器在步骤503向所述高速缓存服务器返回包含表示所述用户是所述用户群组的合法用户的返回码、标识所述用户群组的群组高速缓存标识以及所述群组内容的返回数据,用于所述高速缓存服务器建立所述用户与所述群组高速缓存标识之间的映射和所述群组内容与所述群组高速缓存标识之间的映射、以及高速缓存所述群组内容。换言之,当步骤502中的验证成功时,应用服务器将会向高速缓存服务器返回相关的返回数据,包括:表示所述用户合法用户的返回码,例如HTTP的返回码200;标识用户群组的群组高速缓存标识;以及所请求的群组数据。所述群组高数缓存标识可以例如在HTTP报头中返回,例如,可以将其置于HTTP的“cache”报头中。通过返回码和群组高速缓存标识,高速缓存服务器就可以知道相应用户是该群组高速缓存标识所对应的用户群组的合法用户,并可以建立相应的映射以及高速缓存所返回的群组数据。相反,如果用户身份验证未能成功,则应用服务器可以返回表示无权限的返回码(例如HTTP的返回码403)或者要求用户登陆(例如,HTTP的返回码401),本发明并不限定身份验证未成功的处理方式,其可以使用现有技术中或将来设计的任意方式。
现在返回到图4,在子步骤4042中,高速缓存服务器接收来自所述应用服务器的返回数据。在子步骤4043中,响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,即表示该用户是该用户群组的合法用户,高速缓存服务器在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,并且高速缓存所述返回数据中包含的所述群组内容,以及向所述用户返回所述群组内容。当用户被应用服务器验证为合法用户时,一方面表明用户可以获取所请求的群组内容,从而高速缓存服务器向所述用户返回所述群组内容;另一方面,高速缓存服务器可以建立相应的映射和缓存所述群组内容,以便相关用户下次请求相关群组内容时可以直接返回所请求的群组内容而不需要将请求转发到应用服务器。根据上述返回数据,高速缓存服务器可以建立上述两个映射,即,用户与群组高速缓存标识之间的映射以及群组内容与群组高速缓存标识之间的映射。所述用户与群组高速缓存标识之间的映射用于在该用户再次经由该高速缓存服务器请求群组内容时,该高速缓存服务器可以自己验证该用户的合法性,即直接验证该用户与相应群组高速缓存标识之间的映射是否已被建立。所述群组内容与群组高速缓存标识之间的映射用于该群组内容被再次请求时可以直接被返回给所请求的用户。需要说明的是,由于在上述两个映射中的任一个未被建立的情况下请求都会被转发到应用服务器,所以在接收到来自应用服务器的返回数据时上述两个映射中的一个可能之前已被建立,在这种情况下,则可以不再重复建立已被建立的映射。此外,如上所述,所述群组内容与所述群组高速缓存标识之间的映射的建立可以通过所述群组内容的URL与所述群组高速缓存标识之间的映射实现;所述用户与所述群组高速缓存标识之间的映射的建立可以通过所述用户的用户令牌与所述群组高速缓存标识之间的映射实现,其中,群组内容的URL和用户令牌可以从用户的资源请求中提取,群组高速缓存标识可以从应用服务器的返回数据中提取。根据本发明,在建立某群组内容与群组高速缓存标识之间的映射时,高速缓存服务器会高速缓存该群组内容。换言之,只要在高速缓存服务器中存在某群组内容与群组高速缓存标识之间的映射,则该群组内容一定已被高速缓存在该高速缓存服务器中。特别地,当高速缓存服务器接收到某一用户对某群组内容的资源请求时,可能该群组内容已被高速缓存,即已存在该群组内容与群组高速缓存标识之间的映射;但不存在该用户与该群组高速缓存标识之间的映射,即高速缓存服务器不能验证该用户是否是对应用户群组的合法用户。在这种情况下,根据本发明,高速缓存服务器同样需要将相应请求转发给应用服务器,应用服务器进行用户的身份验证,并返回相应的群组高速缓存标识以及群组内容。然而,由于在这种情况下该群组内容已被高速缓存,所以当高速缓存服务器再次接收到来自应用服务器的该群组内容时,高速缓存服务器可以更新该群组内容。换言之,在这种情况下,子步骤4043中的“高速缓存所述返回数据中包含的所述群组内容”表示“用所述返回数据中包含的群组内容更新已被高速缓存的群组内容”。
根据以上说明可以看出,根据本发明的高速缓存服务器通过建立用户与群组高速缓存标识之间的映射可以自己(即不需要回调应用服务)简单地验证某一用户是否属于相应用户群组的合法用户,并且通过建立群组内容与群组高速缓存标识之间的映射可以验证属于相应用户群组的群组内容是否已被高速缓存在该高速缓存服务器中,从而当请求群组内容的用户和所请求的群组内容能够通过高速缓存服务器中建立的上述两个映射联系起来时,高速缓存服务器可以直接向用户返回所请求的群组内容,而不需要向后端的应用服务器转发所述请求。此外,根据本实施例,由于上述两个映射仅在高速缓存服务器接收到应用服务器所返回的表示所请求的用户是相应用户群组的合法用户的信息(即相应返回码和群组高速缓存标识)的情况下才被建立,因此,不属于相应用户群组的合法用户的用户不能获取所缓存的群组内容,从而保证了群组内容的安全性。
综上所述,根据本发明,可以在高速缓存服务器中安全地高速缓存属于特定用户群组的群组内容,所高速缓存的群组内容可以由该用户群组的所有合法用户共享,但不会被该用户群组外的用户所获取,从而一方面改善了用户请求群组内容的响应时间以及减轻了应用服务器的工作负载,另一方面保证了群组内容的安全性。
图6示出了根据本发明的实施例的用于高速缓存服务器的数据高速缓存装置600的结构框图。所述数据高速缓存装置600包括接收模块601、检查模块602以及内容返回模块603。并且,可选地,所述数据高速缓存装置600还可以包括高速缓存建立模块604。接收模块601配置为接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求。检查模块602配置为检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射。内容返回模块603配置为响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容。高速缓存建立模块604配置为响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,向所述应用服务器转发所述资源请求,接收来自所述应用服务器的返回数据,并且响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,并且高速缓存所述返回数据中包含的所述群组内容,以及向所述用户返回所述群组内容。
上文参考图3和图4所说明的数据高速缓存方法的细节同样适用于数据高速缓存装置600,这里不再累述。根据一个实施例,上述接收模块601、检查模块602、内容返回模块603和高速缓存建立模块604可以通过类似图1中所述的计算机系统/服务器12的计算机结合软件的方式实现,并且上述模块并非表示实体上一定分离为不同的模块,它们的全部或部分功能可以合并为一个模块实现。
图7示出了根据本发明的实施例的用于应用服务器的资源请求响应装置700的结构框图。所述资源请求响应装置700包括接收模块701、验证模块702以及数据返回模块703。接收模块701配置为接收用户从用户端发出的并通过高速缓存服务器转发的对属于特定用户群组的群组内容的资源请求。验证模块702配置为验证所述用户是否是所述用户群组的合法用户。数据返回模块703配置为响应于所述用户是所述用户群组的合法用户,向所述高速缓存服务器返回包含表示所述用户是所述用户群组的合法用户的返回码、标识所述用户群组的群组高速缓存标识以及所述群组内容的返回数据,用于所述高速缓存服务器建立所述用户与所述群组高速缓存标识之间的映射和所述群组内容与所述群组高速缓存标识之间的映射、以及高速缓存所述群组内容。
上文参考图5所说明的资源请求响应方法的细节同样适用于资源请求响应装置700,这里不再累述。根据一个实施例,上述接收模块701、验证模块702以及数据返回模块703可以通过类似图1中所述的计算机系统/服务器12的计算机结合软件的方式实现,并且上述模块并非表示实体上一定分离为不同的模块,它们的全部或部分功能可以合并为一个模块实现。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种用于高速缓存服务器的数据高速缓存方法,包括:
接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求;
检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射;以及
响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容,
其中所述的数据高速缓存方法还包括:
响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,
向所述应用服务器转发所述资源请求,其中利用所述用户的用户令牌以及所述群组内容的统一资源定位符从所述用户端向所述应用服务器发出对所述群组内容的资源请求,
接收来自所述应用服务器的返回数据,并且
响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,高速缓存所述返回数据中包含的所述群组内容,以及向所述用户端返回所述群组内容。
2.根据权利要求1所述的数据高速缓存方法,其中
通过HTTP协议从所述用户端向所述应用服务器发出所述资源请求。
3.根据权利要求1所述的数据高速缓存方法,其中
所述群组内容与所述群组高速缓存标识之间的映射通过所述群组内容的统一资源定位符与所述群组高速缓存标识之间的映射实现。
4.根据权利要求1所述的数据高速缓存方法,其中
所述用户与所述群组高速缓存标识之间的映射通过所述用户的用户令牌与所述群组高速缓存标识之间的映射实现。
5.一种用于高速缓存服务器的数据高速缓存装置,包括:
接收模块,配置为接收用户从用户端向应用服务器发出的对属于特定用户群组的群组内容的资源请求;
检查模块,配置为检查所述高速缓存服务器中是否已经建立所述群组内容与用于标识所述用户群组的群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射;以及
内容返回模块,配置为响应于所述高速缓存服务器中已经建立了所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射,向所述用户端返回高速缓存在所述高速缓存服务器中的所述群组内容
其中所述的数据高速缓存装置还包括:
高速缓存建立模块,配置为响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,
向所述应用服务器转发所述资源请求,其中利用所述用户的用户令牌以及所述群组内容的统一资源定位符从所述用户端向所述应用服务器发出对所述群组内容的资源请求,
接收来自所述应用服务器的返回数据,并且
响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,高速缓存所述返回数据中包含的所述群组内容,以及向所述用户端返回所述群组内容。
6.根据权利要求5所述的数据高速缓存装置,其中
通过HTTP协议从所述用户端向所述应用服务器发出所述资源请求。
7.根据权利要求5所述的数据高速缓存装置,其中
所述群组内容与所述群组高速缓存标识之间的映射通过所述群组内容的统一资源定位符与所述群组高速缓存标识之间的映射实现。
8.根据权利要求5所述的数据高速缓存装置,其中
所述用户与所述群组高速缓存标识之间的映射通过所述用户的用户令牌与所述群组高速缓存标识之间的映射实现。
9.一种用于应用服务器的资源请求响应方法,包括:
接收用户从用户端发出的并通过高速缓存服务器转发的对属于特定用户群组的群组内容的资源请求;
验证所述用户是否是所述用户群组的合法用户;以及
响应于所述用户是所述用户群组的合法用户,向所述高速缓存服务器返回包含表示所述用户是所述用户群组的合法用户的返回码、标识所述用户群组的群组高速缓存标识以及所述群组内容的返回数据,用于所述高速缓存服务器建立所述用户与所述群组高速缓存标识之间的映射和所述群组内容与所述群组高速缓存标识之间的映射、以及高速缓存所述群组内容,
其中所述用于应用服务器的资源请求响应方法还包括:
响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,
向所述应用服务器转发所述资源请求,其中利用所述用户的用户令牌以及所述群组内容的统一资源定位符从所述用户端向所述应用服务器发出对所述群组内容的资源请求,
接收来自所述应用服务器的返回数据,并且
响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,高速缓存所述返回数据中包含的所述群组内容,以及向所述用户端返回所述群组内容。
10.一种用于应用服务器的资源请求响应装置,包括:
接收模块,配置为接收用户从用户端发出的并通过高速缓存服务器转发的对属于特定用户群组的群组内容的资源请求;
验证模块,配置为验证所述用户是否是所述用户群组的合法用户;以及
数据返回模块,配置为响应于所述用户是所述用户群组的合法用户,向所述高速缓存服务器返回包含表示所述用户是所述用户群组的合法用户的返回码、标识所述用户群组的群组高速缓存标识以及所述群组内容的返回数据,用于所述高速缓存服务器建立所述用户与所述群组高速缓存标识之间的映射和所述群组内容与所述群组高速缓存标识之间的映射、以及高速缓存所述群组内容,
其中用于应用服务器的资源请求响应装置还包括:
高速缓存建立模块,配置为响应于所述高速缓存服务器中未建立所述群组内容与所述群组高速缓存标识之间的映射以及所述用户与所述群组高速缓存标识之间的映射中的至少一个,
向所述应用服务器转发所述资源请求,其中利用所述用户的用户令牌以及所述群组内容的统一资源定位符从所述用户端向所述应用服务器发出对所述群组内容的资源请求,
接收来自所述应用服务器的返回数据,并且
响应于所述返回数据包含表示所述用户是所述用户群组的合法用户的返回码以及所述群组高速缓存标识,在所述用户与所述群组高速缓存标识之间的映射未建立的情况下建立所述用户与所述群组高速缓存标识之间的映射,在所述群组内容与所述群组高速缓存标识之间的映射未建立的情况下建立所述群组内容与所述群组高速缓存标识之间的映射,高速缓存所述返回数据中包含的所述群组内容,以及向所述用户端返回所述群组内容。
CN201410301784.1A 2014-06-27 2014-06-27 数据高速缓存方法和装置以及资源请求响应方法和装置 Active CN105338016B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410301784.1A CN105338016B (zh) 2014-06-27 2014-06-27 数据高速缓存方法和装置以及资源请求响应方法和装置
US14/725,455 US10104151B2 (en) 2014-06-27 2015-05-29 Data caching and resource request response
US16/159,937 US10659516B2 (en) 2014-06-27 2018-10-15 Data caching and resource request response

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410301784.1A CN105338016B (zh) 2014-06-27 2014-06-27 数据高速缓存方法和装置以及资源请求响应方法和装置

Publications (2)

Publication Number Publication Date
CN105338016A CN105338016A (zh) 2016-02-17
CN105338016B true CN105338016B (zh) 2019-08-23

Family

ID=54931852

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410301784.1A Active CN105338016B (zh) 2014-06-27 2014-06-27 数据高速缓存方法和装置以及资源请求响应方法和装置

Country Status (2)

Country Link
US (2) US10104151B2 (zh)
CN (1) CN105338016B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10282539B2 (en) * 2015-06-12 2019-05-07 AVAST Software s.r.o. Authentication and secure communication with application extensions
US9712513B2 (en) * 2015-10-05 2017-07-18 Kony, Inc. Identity management over multiple identity providers
CN109525554B (zh) * 2018-10-12 2022-07-08 平安科技(深圳)有限公司 金融数据通信方法、装置、介质及电子设备
CN111352740B (zh) * 2018-12-21 2023-04-18 腾讯科技(深圳)有限公司 一种应用交互处理方法和装置
US11418818B1 (en) * 2019-11-07 2022-08-16 Amazon Technologies, Inc. System for controlling storage of response data
CN112650695B (zh) * 2020-12-30 2023-09-05 北京奇艺世纪科技有限公司 一种应用服务器的缓存管理方法及装置
CN112883307B (zh) * 2021-02-03 2023-10-20 深圳市大成天下信息技术有限公司 一种缓存更新方法、装置和社交网络系统
CN118201045A (zh) * 2023-12-22 2024-06-14 汉朔科技股份有限公司 群组通信方法、装置、基站、群组通信系统及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102484647A (zh) * 2009-09-14 2012-05-30 国际商业机器公司 高速缓存保护
CN102981979A (zh) * 2012-11-15 2013-03-20 上海爱数软件有限公司 一种提高存储系统数据访问速度的方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6832222B1 (en) 1999-06-24 2004-12-14 International Business Machines Corporation Technique for ensuring authorized access to the content of dynamic web pages stored in a system cache
US7188240B1 (en) 1999-07-15 2007-03-06 International Business Machines Corporation Method and system for encryption of web browser cache
US7035911B2 (en) * 2001-01-12 2006-04-25 Epicrealm, Licensing Llc Method and system for community data caching
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8091124B2 (en) 2007-02-23 2012-01-03 Microsoft Corporation Caching public objects with private connections
US7979909B2 (en) 2007-12-03 2011-07-12 Wells Fargo Bank Application controlled encryption of web browser data
US8397066B2 (en) * 2009-10-20 2013-03-12 Thomson Reuters (Markets) Llc Entitled data cache management
US8732855B2 (en) 2010-09-30 2014-05-20 Google Inc. Launching a cached web application based on authentication status
US8918471B2 (en) * 2012-05-18 2014-12-23 Apple Inc. Integrated local/remote server computer architecture for electronic data transfer

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102484647A (zh) * 2009-09-14 2012-05-30 国际商业机器公司 高速缓存保护
CN102981979A (zh) * 2012-11-15 2013-03-20 上海爱数软件有限公司 一种提高存储系统数据访问速度的方法

Also Published As

Publication number Publication date
US20150381700A1 (en) 2015-12-31
US10104151B2 (en) 2018-10-16
CN105338016A (zh) 2016-02-17
US10659516B2 (en) 2020-05-19
US20190052693A1 (en) 2019-02-14

Similar Documents

Publication Publication Date Title
CN105338016B (zh) 数据高速缓存方法和装置以及资源请求响应方法和装置
US10142326B2 (en) Attribute-based access control
CN103716326B (zh) 一种资源访问方法及用户资源网关
US9197417B2 (en) Hosted application sandbox model
CN104113551B (zh) 一种平台授权方法、平台服务端及应用客户端和系统
US8752158B2 (en) Identity management with high privacy features
US9641535B2 (en) Apparatus and data processing systems for accessing an object
US20110126272A1 (en) Apparatus and method of identity and virtual object management and sharing among virtual worlds
US20150149530A1 (en) Redirecting Access Requests to an Authorized Server System for a Cloud Service
CN113010818A (zh) 访问限流方法、装置、电子设备及存储介质
KR101556619B1 (ko) 어플리케이션 플랫폼과 어플리케이션 사이의 로그인 상태를 공유하기 위한 시스템 및 방법
CN108173836A (zh) 朝向内容消费者迁移经过认证的内容
CN106919634A (zh) 跨应用共享数据的方法及网页浏览器
CN106101055A (zh) 一种多数据库的数据访问方法及其系统和代理服务器
US20150244705A1 (en) Implementing single sign-on in a transaction processing system
CN108769189A (zh) 跨网络域资源的访问方法及设备
US11765112B2 (en) Context driven dynamic actions embedded in messages
CN101764808A (zh) 自动登录的认证处理方法、服务器和系统
US20160380954A1 (en) Identification of employees on external social media
US10164962B2 (en) Using client certificates to communicate trusted information
CN112511316A (zh) 单点登录接入方法、装置、计算机设备及可读存储介质
US20170244727A1 (en) Tokenization for Network Authorization Routing
CN107196957A (zh) 一种分布式身份认证方法及系统
CN105554084B (zh) 生成一次性资源地址并与真实资源地址映射的方法
US10972455B2 (en) Secure authentication in TLS sessions

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant