CN112612983B - 一种页面访问方法及系统 - Google Patents

一种页面访问方法及系统 Download PDF

Info

Publication number
CN112612983B
CN112612983B CN202110018512.0A CN202110018512A CN112612983B CN 112612983 B CN112612983 B CN 112612983B CN 202110018512 A CN202110018512 A CN 202110018512A CN 112612983 B CN112612983 B CN 112612983B
Authority
CN
China
Prior art keywords
cache
login information
information
page
access
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
CN202110018512.0A
Other languages
English (en)
Other versions
CN112612983A (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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology Co 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 Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202110018512.0A priority Critical patent/CN112612983B/zh
Publication of CN112612983A publication Critical patent/CN112612983A/zh
Application granted granted Critical
Publication of CN112612983B publication Critical patent/CN112612983B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/908Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9558Details of hyperlinks; Management of linked annotations

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种页面访问方法及系统,其中所述页面访问方法包括:接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;根据所述访问关键词确定是否存在对应的缓存数据;在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。

Description

一种页面访问方法及系统
技术领域
本申请涉及互联网技术领域,特别涉及一种页面访问方法。本申请同时涉及一种页面访问系统、一种缓存服务器、一种业务层服务器、一种计算设备,以及一种计算机可读存储介质。
背景技术
随着互联网技术的快速发展,各种各样的页面访问实现技术层出不穷。现有技术中,大部分网站都有专门的用户系统,并且页面会根据用户的权限动态展示数据。所以传统的页面访问需要发送到服务器的业务层,动态的去获取数据才能满足动态展示对应数据的需求。但是如果网站的访问量大时,每个用户访问的每次访问页面时都得发送到业务层去处理数据将会给服务器带来巨大压力从而严重影响程序的处理和响应速度,从而影响用户体验。
发明内容
有鉴于此,本申请实施例提供了一种页面访问方法。本申请同时涉及一种页面访问系统、一种缓存服务器、一种业务层服务器、一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本申请实施例的第一方面,提供了一种页面访问方法,应用于缓存服务器,包括:
接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;
根据所述访问关键词确定是否存在对应的缓存数据;
在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。
可选地,所述根据所述网页链接和所述登录信息确定所述目标页面的访问关键词包括:
根据哈希算法将所述网页链接和所述登录信息进行计算;
从计算结果中提取所述目标页面的访问关键词。
可选地,所述根据所述访问关键词确定是否存在对应的缓存数据,包括:
根据所述访问关键词确定缓存列表中是否存在所述访问关键词对应的缓存对象;
在存在所述缓存对象的情况下,根据所述缓存对象查找对应的缓存数据。
可选地,所述方法还包括:
在不存在所述缓存数据的情况下,将所述访问请求发送至业务层服务器;
接收业务层服务器响应于所述访问请求反馈的所述目标页面的网页数据;
根据缓存规则对所述网页数据进行缓存。
可选地,在接收针对目标页面的访问请求之后,根据所述网页链接和所述登录信息确定所述目标页面的访问关键词之前,还包括:
从所述访问请求中获取网页链接和登录信息;
清除所述登录信息中除分组信息以外的其他数据。
可选地,所述清除所述登录信息中除分组信息以外的其他数据,包括:
将所述登录信息进行备份;
获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据;
根据所述分组信息以预设格式重新构造所述登录信息。
可选地,将所述访问请求发送至业务层服务器包括:
将所述访问请求和备份的登录信息发送至业务层服务器。
可选地,所述方法还包括:
接收业务层服务器发送的页面修改信息;
根据所述页面修改信息确定被修改的页面;
判断本地是否存储有所述页面对应的缓存对象和缓存数据;
若是,则删除本地存储中所述页面对应的缓存对象和缓存数据。
根据本申请实施例的第二方面,提供了一种页面访问方法,应用于业务层服务器,包括:
接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
根据所述网页链接查询所述目标页面的网页数据;
在权限组信息更新的情况下,更新所述登录信息;
将所述目标页面的网页数据发送至客户端和缓存服务器。
可选地,所述在权限组信息更新的情况下,更新所述登录信息,包括:
获取所述登录信息中的分组信息,并与权限组信息进行对比;
在所述分组信息与所述权限组信息不一致的情况下,确认所述权限组信息更新;
根据所述权限组信息更新所述登录信息。
可选地,所述方法还包括:
在权限组信息没有更新的情况下,将所述目标页面的网页数据发送至客户端和缓存服务器。
可选地,所述接收针对目标页面的访问请求包括:
接收针对目标页面的访问请求和备份的登录信息;
根据备份的登录信息恢复所述网页访问请求中的所述登录信息。
根据本申请实施例的第三方面,提供了一种页面访问系统,包括:
客户端和至少两个缓存服务器;
所述客户端,被配置为接收用户针对目标页面的访问指令,发送针对目标页面的访问请求至所述至少两个缓存服务器,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
所述至少两个缓存服务器,被配置为接收所述针对目标页面的访问请求,根据所述网页链接和所述登录信息确定所述目标页面的访问关键词,根据所述访问关键词确定是否存在对应的缓存数据,在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至所述客户端。
可选地,所述系统还包括:
负载均衡服务器;
所述客户端,还被配置为发送针对目标页面的访问请求至所述负载均衡服务器;
所述负载均衡服务器,被配置为将接收到的所述针对目标页面的访问请求中所述目标页面的网页链接进行处理,根据处理结果和所述至少两个缓存服务器的权重确定响应所述访问请求的缓存服务器。
根据本申请实施例的第四方面,提供了一种缓存服务器,包括:
接收模块,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
处理模块,被配置为根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;
判断模块,被配置为根据所述访问关键词确定是否存在对应的缓存数据;
发送模块,被配置为在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。
根据本申请实施例的第五方面,提供了一种业务层服务器,包括:
接收模块,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
查询模块,被配置为根据所述网页链接查询所述目标页面的网页数据;
更新模块,被配置为在权限组信息更新的情况下,更新所述登录信息;
发送模块,被配置为将所述目标页面的网页数据发送至客户端和缓存服务器。
根据本申请实施例的第六方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述页面访问方法的步骤。
根据本申请实施例的第七方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述页面访问方法的步骤。
本申请提供的页面访问方法,接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;根据所述访问关键词确定是否存在对应的缓存数据;在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
附图说明
图1是本申请一实施例提供的一种应用于缓存服务器的页面访问方法的流程图;
图2是本申请一实施例提供的一种应用于业务层服务器的页面访问方法的流程图;
图3A是本申请一实施例提供的一种页面访问系统的结构示意图;
图3B是本申请一实施例提供的一种页面访问系统的结构示意图;
图3C是本申请一实施例提供的一种页面访问系统的结构示意图;
图4是本申请一实施例提供的一种应用于页面访问系统的页面访问方法的处理流程图;
图5是本申请一实施例提供的一种缓存服务器的结构示意图;
图6是本申请一实施例提供的一种业务层服务器的结构示意图;
图7是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
http:http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
Cookie:Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器自动会将Cookie以key/value保存到某个目录下的文本文件内,下次请求同一网页时也会自动发送该Cookie给服务器,即添加在请求头部。
哈希算法,即hash算法,是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
PHP:PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网页编程语言。PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。利于学习,使用广泛,主要适用于Web开发领域。
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,也是一种基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。
Varnish:Varnish是一款高性能的cache型开源HTTP加速器。
Nginx:Nginx是一个高性能的HTTP和反向代理web服务器。
在本申请中,提供了一种页面访问方法,本申请同时涉及一种页面访问系统、一种缓存服务器、一种业务层服务器、一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例提供的一种应用于缓存服务器的页面访问方法的流程图,应用于缓存服务器,具体包括以下步骤:
步骤102:接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
具体的,目标页面是指用户通过客户端打开的页面,即用户想要浏览的页面;访问请求是指用户打开页面时客户端向服务器发起的请求,如http请求;网页链接是指目标页面的地址,如目标页面的url;登录信息是指用户通过客户端浏览目标页面时是否登陆,在登录的情况下的用户名等信息,登录信息可以是Cookie数据。
实际应用中,用户可以在客户端上通过点击网址或者名称等浏览一个页面,此时客户端会发出针对该页面,即目标页面的访问请求。此时,缓存服务器通过接收端口或者接收模块接收针对目标页面的访问请求。一般来说,访问请求中至少包括了目标页面的网页链接和登录信息,即url和Cookie。其中,所述Cookie是用户访问目标页面时,打开目标页面的应用程序将会自动把客户端的Cookie数据拼接在所述访问请求的header中。
本实施例中,在接收针对目标页面的访问请求之后,还需要对访问请求进行处理,具体实现过程可以为:
从所述访问请求中获取网页链接和登录信息;
清除所述登录信息中除分组信息以外的其他数据。
需要说明的是,虽然访问请求中包含了网页链接和登录信息,但是由于网页链接和登录信息并不是独立的,因此,需要将网页链接和登录信息提取出来,从而方便对网页链接和登录信息进行处理。由于登录信息中含有一些无关数据,为了避免登录信息中一些无关数据对处理结果的影响,需要将登录信息中的无关信息进行删除,即清除所述登录信息中除分组信息以外的其他数据。
在本实施例中,清除所述登录信息中除分组信息以外的其他数据的过程可以如下:
将所述登录信息进行备份;
获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据;
根据所述分组信息以预设格式重新构造所述登录信息。
实际应用中,在提取出登录信息的基础上,先将登录信息进行备份。具体的,可以将Cookie赋值到一个临时变量中,如BCookie,设置方式可以为set req.http.BCookie=req.http.Cookie。这样可以预先把完整的登录信息存储到一个临时变量中做一个备份,以便后续将访问请求发送到业务层服务器时保持登录信息的完整。
进一步地,提取出登录信息中的相关数据,即获取所述登录信息中的分组信息,所述分组信息可以为Cookie中UserGroups的值,如“UserGroups=admin_role1_role2”。在此基础上,可以清除所述登录信息中的所有数据,并根据分组信息以一定的格式重新构造所述登录信息,使得登录信息中只包含有分组信息。也可以直接根据分组信息以预设格式重新赋值并覆盖当前的登录信息,如set req.http.Cookie=“UserGroups=admin_role1_role2”。由于后续过程中会登录信息作为哈希算法中的一个因素,因此取出无关数据,只保留分组信息。
步骤104:根据所述网页链接和所述登录信息确定所述目标页面的访问关键词。
具体的,在接收到针对目标页面的访问请求后,根据访问请求中的网页链接和登录信息确定目标页面对应的访问关键词。
实际应用中,根据所述网页链接和所述登录信息确定所述目标页面的访问关键词的具体实现过程可以为:
根据哈希算法将所述网页链接和所述登录信息进行计算;
从计算结果中提取所述目标页面的访问关键词。
需要说明的是,将所述网页链接和所述登录信息作为哈希算法的两个输入值,或者两个因素,然后进行通过哈希算法进行计算,之后得到计算结果,可以从计算结果中获得所述目标页面的访问关键词。
本申请中可以通过哈希算法对网页链接和登录信息进行处理,从而获得用于查询的访问关键词,便于后续查找对应的缓存数据。
步骤106:根据所述访问关键词确定是否存在对应的缓存数据。
具体的,缓存数据是指用户浏览目标页面时有关页面展示、页面内容并存储在缓存服务器中的数据。缓存服务器可以根据获得的访问关键词在本地存储中查找与访问关键词或者目标页面对应的缓存数据。进一步地,根据所述访问关键词确定是否存在对应的缓存数据的具体过程可以如下:
根据所述访问关键词确定缓存列表中是否存在所述访问关键词对应的缓存对象;
在存在所述缓存对象的情况下,根据所述缓存对象查找对应的缓存数据。
实际应用中,在缓存服务器中设置了一个缓存列表,专门用于存储缓存数据对应的缓存对象,所述缓存对象可以是缓存数据的名称、代号等,本申请对此不做限定。所有缓存数据对应的缓存对象要存储在缓存列表中,这样可以直接通过将访问关键词与缓存列表中的缓存对象进行匹配来确定是否存在与访问关键词对应的缓存数据。这样避免了直接通过访问关键词与数据量超大的缓存数据进行匹配,不仅可以加快查找匹配的时间,还可以降低缓存服务器的计算压力。
例如,所述访问关键词为book,在缓存列表中有DOOD、BOOK、LOOK三个缓存对象,将访问关键词book与缓存列表中的三个缓存对象进行匹配,结果根据访问关键词book匹配到缓存对象BOOK,则认为存在与访问关键词book对应的缓存数据。若所述访问关键词为nook,将访问关键词为nook与缓存列表中的三个缓存对象进行匹配,结果根据访问关键词nook匹配不上缓存对象,即缓存列表有没有访问关键词nook对应的缓存对象,则认为不存在与访问关键词nook对应的缓存数据。
步骤108:在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。
具体的,在确定本地存在与所述访问关键词对应的缓存数据的基础上,进一步地,读取与所述访问关键词对应的缓存数据,并直接将所述缓存数据作为所述访问请求的响应数据返回给客户端,以便于客户端根据所述访问关键词对应的缓存数据展示页面。
实际应用中,缓存服务器中并不都存储有与所述访问关键词对应的访问数据,此时,缓存服务器需要将访问请求发送至业务层服务器,具体实现过程如下:
在不存在所述缓存数据的情况下,将所述访问请求发送至业务层服务器;
接收业务层服务器响应于所述访问请求反馈的所述目标页面的网页数据;
根据缓存规则对所述网页数据进行缓存。
具体的,所述网页数据是指用户浏览目标页面时有关页面展示、页面内容并存储在业务层服务器中的数据;所述缓存规则是指按照一定的格式、类型等进行存储的规则。
当缓存服务器中没有与所述访问关键词对应的缓存数据时,缓存服务器会将接收到的针对目标页面的访问请求发送给业务层服务器,由业务层服务器进行处理。业务层服务器会根据所述访问请求获取所述目标页面的网页数据,并将所述网页数据反馈至缓存服务器。缓存服务器接收到所述目标页面对应的网页数据后,按照缓存规则,将网页数据进行存储,形成缓存对象和缓存数据,有利于在下一次客户端访问所述目标页面的情况下,及时返回所述目标页面的缓存数据。
在本申请一实施例中,由于清除了所述登录信息中除分组信息以外的其他数据,使所述登录信息中丢失掉一部分数据。在所述在不存在所述缓存数据的情况下,如果此时直接将网页访问请求发送至业务层服务器,从而导致业务层服务器无法获取到登录信息中一些需要的数据而导致出现业务异常,比如登录状态、会话丢失等问题(因为客户端和业务服务器的会话需要依靠客户端传输的登录信息)。因此,需要在将访问请求发送至业务层服务器时,也需要将备份的登录信息发送给业务层服务器,即将所述访问请求和备份的登录信息发送至业务层服务器。这样就能保证业务层服务器能够重新正常的获取到完整的登录信息,从而不影响到业务功能。
需要说明的是,本申请中,缓存服务器还会根据页面修改信息对本存储的缓存数据进行刷新、删除等操作,具体实现过程可以如下:
接收业务层服务器发送的页面修改信息;
根据所述页面修改信息确定被修改的页面;
判断本地是否存储有所述页面对应的缓存对象和缓存数据;
若是,则删除本地存储中所述页面对应的缓存对象和缓存数据。
具体的,所述修改可以为对页面内容的删除、移动、变更,或者多页面布局的一些修改等,本申请对此不做限定。一般来说,当某个页面发生修改的时候才会将新的页面数更新到缓存服务器中。业务层服务器会自动检测页面的修改情况,当有页面发生修改操作时,会将对应的页面修改信息发送至缓存服务器。缓存服务器根据接收到的页面修改信息确定被修改的页面,从而查看本地存储中是否有该页面对应的缓存对象和缓存数据。若没有,则忽略所述页面修改信息;若有,则删除所述页面对应的缓存对象和缓存数据。不仅可以节省存储空间的容量,还可以避免在接收到所述页面对应的更新后的页面数据后,由于新旧数据的存在导致页面呈现时出现差错。
例如,接收到有服务器发送的页面修改信息,经过对页面修改信息进行处理、分析,确定所述页面修改信息对应的页面为A页面。而本地存储有A、B、C、D四个页面对应的缓存对象和缓存数据。经查询发现,本地存储有A页面对应的缓存对象和缓存数据,此时需要将A页面对应的缓存对象和缓存数据进行删除。当下一次有用户访问A页面时,由于缓存服务器中没有对应的缓存数据,因此会将所述访问请求发送给业务层服务器,之后会接收到缓存服务器反馈的A页面的最新的页面数据,并将所述最新的页面数据进行存储。若在用户访问A页面之前,再一次接收到了有业务层服务器发送的针对于A页面的页面修改信息,由于本地存储中A页面对应的缓存对象和缓存数据已经被删除,因此此时本地存储中没有A页面对应的缓存对象和缓存数据,可以忽略这一次接收到的页面修改信息。
本申请提供的一种页面访问方法,接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;根据所述访问关键词确定是否存在对应的缓存数据;在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
图2示出了根据本申请一实施例提供的一种应用于业务层服务器的页面访问方法的流程图,具体包括以下步骤:
步骤202:接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息。
需要说明的是,在缓存服务器上不存在目标页面对应的缓存数据的情况下,缓存服务器会将针对目标页面的访问请求发送至业务层服务器,业务层服务器接收缓存服务器发送的针对目标页面的访问请求即可。
进一步地,在业务层服务器成功接收到针对目标页面的访问请求的情况下,可以向缓存服务器反馈接收成功的消息,使得缓存服务器可以获知针对目标页面的访问请求已经成功接收。若没有接收成功,则可以提醒缓存服务器重试,从而保证针对目标页面的访问请求可以成功接收。
实际应用中,缓存服务器会将针对目标页面的访问请求和备份的登录信息一起发送到业务层服务器,业务层服务器根据接收到的访问请求和备份的登录信息进行处理,即接收针对目标页面的访问请求和备份的登录信息;根据备份的登录信息恢复所述网页访问请求中的所述登录信息。
具体的,由于在缓存服务器中清除了登录信息中除分组信息以外的其他数据,使所述登录信息中丢失掉一部分数据,若直接使用访问请求中的登录信息会导致业务层服务器无法获取到登录信息中一些需要的数据而导致出现业务异常。因此,需要将备份的登录信息赋值给登录信息,即恢复登录信息,以保证业务层服务器能够重新正常的获取到完整的登录信息。此外,具体恢复所述登录信息的方式根据不同的业务层语言来说也是不同的,其设置方式也不一样。其中,所述业务层语言可以是PHP语言。
步骤204:根据所述网页链接查询所述目标页面的网页数据。
具体的,提取所述访问请求中的网页链接,根据所述网页链接查询所述目标页面对应的最新的网页数据。
实际应用中,业务层服务器在接收到针对目标页面的访问请求后,会根据访问请求中的网页链接查找对应的网页数据,并获取所有网页数据中最新的网页数据。
步骤206:在权限组信息更新的情况下,更新所述登录信息。
具体的,所述权限组信息为业务层服务器中存储的针对于当前用户数据中的关于权限的信息。所述在权限组信息更新的情况下,更新所述登录信息的实现过程可以如下:
获取所述登录信息中的分组信息,并与权限组信息进行对比;
在所述分组信息与所述权限组信息不一致的情况下,确认所述权限组信息更新;
根据所述权限组信息更新所述登录信息。
具体的,提取所述访问请求中的登录信息,并从所述登录信息中获取分组信息。将所述分组信息与权限组信息进行对比,从而确定所述权限组信息是否更新。若所述分组信息与所述权限组信息不一致,则确认所述权限组信息已更新,此时,需要根据更新后的权限组信息更新重新设置登录信息,即更新登录信息,设置方式可以为:setCookie(‘UserGroups’,‘admin’),其中,所述登录信息为Cookie数据,UserGroups代表分组信息,admin代表该用户拥有的权限组的权限。实际应用中,存在着一个用户拥有多个权限组权限的现象,如:admin、role1、role2,则登录信息的设置方式可以为:setCookie(‘UserGroups’,‘admin_role1_role2’)。如果用户处于未登录的情况下,则代表未登录的用户可以共用一份缓存数据,则登录信息的设置方式为:setcookie(‘UserGroups’,‘none’)。
需要说明的是,步骤204与步骤206可以是同时执行的,也可以是顺序执行的,也可以先执行步骤206再执行步骤204。
步骤208:将所述目标页面的网页数据发送至客户端和缓存服务器。
实际应用中,在获取了目标页面的网页数据之后,业务层服务器需要将获取到的目标页面的网页数据发送给客户端,以便于客户端根据目标页面的网页数据呈现目标页面,以及使缓存服务器将目标页面的网页数据进行存储。
在本申请一实施例中,若所述分组信息与所述权限组信息一致,即在权限组信息没有更新的情况下,将所述目标页面的网页数据发送至客户端和缓存服务器。在确认权限组信息没有更新时,及时地将目标页面的网页数据发送给客户端和缓存服务器,以便于客户端根据目标页面的网页数据呈现目标页面,以及使缓存服务器将目标页面的网页数据进行存储。
本申请提供的一种页面访问方法,接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;根据所述网页链接查询所述目标页面的网页数据;在权限组信息更新的情况下,更新所述登录信息;将所述目标页面的网页数据发送至客户端和缓存服务器。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
图3A示出了根据本申请一实施例提供的一种页面访问系统的结构示意图,所述系统包括:
客户端302和至少两个缓存服务器304。
所述页面访问系统可以采用LNPV的架构方式进行部署和实现整个页面访问的工作,其中,LNPV中L代表Linux、N代表Nginx、P代表PHP、V代表Varnish。所述页面访问系统包括n台Linux服务器,并在Linux服务器上分别安装Varnish软件,所述Varnish软件即本申请中的缓存服务器。
所述客户端302,被配置为接收用户针对目标页面的访问指令,发送针对目标页面的访问请求至所述至少两个缓存服务器304,其中,所述访问请求中包括所述目标页面的网页链接和登录信息。
具体的,所述客户端302即用户访问目标页面的设备,可以是手机、PC等,本申请对此不作限定。当用户通过客户端302浏览目标页面时,客户端302将会接收到一个针对目标页面的访问指令,根据所述针对目标页面的访问指令生成针对目标页面的访问请求,并将所述针对目标页面的访问请求发送至缓存服务器304。
所述至少两个缓存服务器304,被配置为接收所述针对目标页面的访问请求,根据所述网页链接和所述登录信息确定所述目标页面的访问关键词,根据所述访问关键词确定是否存在对应的缓存数据,在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至所述客户端302。
具体的,所述访问请求可以是http请求;所述登录信息可以是Cookie数据。所述至少两个缓存服务器304在接收到针对目标页面的访问请求后,即http请求,需要获取http的url和http请求中的Cookie。之后根据url和Cookie确定目标页面对应的访问关键词,根据所述关键词在确定所述至少两个缓存服务器中是否有对应的缓存数据。若存在对应的缓存数据,则读取所述缓存数据,并发送至所述客户端302。
可选地,所述至少两个缓存服务器304,还被配置为根据哈希算法将所述网页链接和所述登录信息进行计算,从计算结果中提取所述目标页面的访问关键词。
所述至少两个缓存服务器304,将所述网页链接和所述登录信息作为哈希算法的两个输入值,或者两个因素,然后进行通过哈希算法进行计算,之后得到计算结果,可以从计算结果中获得所述目标页面的访问关键词。
可选地,所述至少两个缓存服务器304,还被配置为根据所述访问关键词确定缓存列表中是否存在所述访问关键词对应的缓存对象,在存在所述缓存对象的情况下,根据所述缓存对象查找对应的缓存数据。
实际应用中,在至少两个缓存服务器304中设置了一个缓存列表,专门用于存储缓存数据对应的缓存对象。所有缓存数据对应的缓存对象要存储在缓存列表中,这样可以直接通过将访问关键词与缓存列表中的缓存对象进行匹配来确定是否存在与访问关键词对应的缓存数据。这样避免了直接通过访问关键词与数据量超大的缓存数据进行匹配,不仅可以加快查找匹配的时间,还可以降低缓存服务器的计算压力。
参见图3B,所述系统还包括:
业务层服务器306。
至少两个缓存服务器304,还被配置为在不存在所述缓存数据的情况下,将所述访问请求发送至所述业务层服务器306。
在至少两个缓存服务器304中没有与所述访问关键词对应的缓存数据时,至少两个缓存服务器304会将接收到的针对目标页面的访问请求发送给业务层服务器306,由业务层服务器306进行处理。
进一步地,所述业务层服务器306,还被配置为接收针对目标页面的访问请求,根据所述网页链接查询所述目标页面的网页数据,在权限组信息更新的情况下,更新所述登录信息,将所述目标页面的网页数据发送至客户端302和缓存服务器304。
业务层服务器306在接收到针对目标页面的访问请求之后,根据访问请求中的网页链接查找对应的网页数据,并获取所有网页数据中最新的网页数据,在确定权限组信息更新的情况下更新登录信息,之后将所述网页数据发送至客户端302和至少两个缓存服务器304。
进一步地,所述至少两个缓存服务器304,还被配置为接收业务层服务器306响应于所述访问请求反馈的所述目标页面的网页数据,根据缓存规则对所述网页数据进行缓存。
进一步地,至少两个缓存服务器304接收到所述目标页面对应的网页数据后,按照缓存规则,将网页数据进行存储,形成缓存对象和缓存数据,有利于在下一次客户端访问所述目标页面的情况下,及时返回所述目标页面的缓存数据。
进一步地,所述客户端302,还被配置为根据接收到的所述目标页面的网页数据呈现所述目标页面。
客户端302在接收到述目标页面的网页数据后,根据所述网页数据对目标页面进行渲染并呈现。
可选地,所述业务层服务器306,还被配置为获取所述登录信息中的分组信息,并与权限组信息进行对比,在所述分组信息与所述权限组信息不一致的情况下,确认所述权限组信息更新,根据所述权限组信息更新所述登录信息。
具体的,业务层服务器306提取所述访问请求中的登录信息,并从所述登录信息中获取分组信息。将所述分组信息与权限组信息进行对比,从而确定所述权限组信息是否更新。若所述分组信息与所述权限组信息不一致,则确认所述权限组信息已更新,此时,需要根据更新后的权限组信息更新重新设置登录信息,即更新登录信息。
可选地,所述业务层服务器306,还被配置为在权限组信息没有更新的情况下,将所述目标页面的网页数据发送至客户端302和缓存服务器304。
业务层服务器306在确认权限组信息没有更新时,也会及时地将目标页面的网页数据发送给客户端302和至少两个缓存服务器304,以便于客户端302根据目标页面的网页数据呈现目标页面,以及使至少两个缓存服务器304将目标页面的网页数据进行存储。
可选地,所述至少两个缓存服务器304,还被配置为从所述访问请求中获取网页链接和登录信息,清除所述登录信息中除分组信息以外的其他数据。
由于登录信息中含有一些无关数据,为了避免登录信息中一些无关数据对处理结果的影响,至少两个缓存服务器304会将登录信息中的无关信息进行删除,即清除所述登录信息中除分组信息以外的其他数据。
可选地,所述至少两个缓存服务器304,还被配置为将所述登录信息进行备份,获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据,根据所述分组信息以预设格式重新构造所述登录信息。
具体的,至少两个缓存服务器304在提取出登录信息的基础上,先将登录信息进行备份,再提取出登录信息中的相关数据,即分组信息,清除所述登录信息中的所有数据,并根据分组信息以一定的格式重新构造所述登录信息,使得登录信息中只包含有分组信息。
可选地,所述至少两个缓存服务器304,还被配置为将所述访问请求和备份的登录信息发送至业务层服务器;
所述业务层服务器,还被配置为接收针对目标页面的访问请求和备份的登录信息,根据备份的登录信息恢复所述网页访问请求中的所述登录信息。
由于之前对登录信息的处理,至少两个缓存服务器304清除了所述登录信息中除分组信息以外的其他数据,使所述登录信息中丢失掉一部分数据。在所述在不存在所述缓存数据的情况下,如果至少两个缓存服务器304直接将网页访问请求发送至业务层服务器306,从而导致业务层服务器306无法获取到登录信息中一些需要的数据而导致出现业务异常,因此,需要在将访问请求发送至业务层服务器时,也需要将备份的登录信息发送给业务层服务器。业务层服务器接收到访问请求和备份的登录信息后,将备份的登录信息赋值到访问请求中的登录信息,即恢复登录信息。这样就能保证业务层服务器能够重新正常的获取到完整的登录信息,从而不影响到业务功能。
可选地,所述至少两个缓存服务器304,还被配置为接收业务层服务器306发送的页面修改信息,根据所述页面修改信息确定被修改的页面,判断本地是否存储有所述页面对应的缓存对象和缓存数据,若是,则删除本地存储中所述页面对应的缓存对象和缓存数据。
一般来说,业务层服务器306会检测页面的修改情况。当某个页面发生修改的时,业务层服务器306会将对应的页面修改信息发送至至少两个缓存服务器304。至少两个缓存服务器304根据接收到的页面修改信息确定被修改的页面,从而查看本地存储中是否有该页面对应的缓存对象和缓存数据。若没有,则忽略所述页面修改信息;若有,则删除所述页面对应的缓存对象和缓存数据。
参见图3C,所述系统还包括:
负载均衡服务器308。
在页面访问系统中的Linux服务器上还安装有Nginx软件,所述Nginx软件即本申请中的负载均衡服务器。
所述客户端302,还被配置为发送针对目标页面的访问请求至所述负载均衡服务器。
客户端302将针对目标页面的访问请求发送至负载均衡服务器308,可以由负载均衡服务器308对访问请求进行处理。
进一步地,所述负载均衡服务器308,被配置为将接收到的所述针对目标页面的访问请求中所述目标页面的网页链接进行处理,根据处理结果和所述至少两个缓存服务器304的权重确定响应所述访问请求的缓存服务器。
负载均衡服务器308接收到所述针对目标页面的访问请求后,获取所述访问请求中的网页链接,即url,根据哈希算法对url进行计算。获得计算结果之后,再结合至少两个缓存服务器304的权重指定一台缓存服务器处理针对目标页面的访问请求。其中,权重的设置规则可以为,按照各个缓存服务器的配置、性能等参数设置不同的权重,性能、配置越高的机器将被赋予越高的权重数值。
本申请提供的一种页面访问系统,所述客户端,被配置为接收用户针对目标页面的访问指令,发送针对目标页面的访问请求至所述至少两个缓存服务器,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;所述至少两个缓存服务器,被配置为接收所述针对目标页面的访问请求,根据所述网页链接和所述登录信息确定所述目标页面的访问关键词,根据所述访问关键词确定是否存在对应的缓存数据,在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至所述客户端。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
下述结合附图4,以本申请提供的页面访问方法在页面访问系统中的应用为例,对所述页面访问方法进行进一步说明。其中,图4示出了本申请一实施例提供的一种应用于页面访问系统的页面访问方法的处理流程图,具体包括以下步骤:
步骤402:发送针对目标页面的访问请求。
当用户通过客户端浏览并访问目标页面时,有客户端向负载均衡服务器发送目标页面的访问请求,其中,问请求中包括所述目标页面的网页链接和登录信息。
步骤404:确定响应访问请求的缓存服务器。
负载均衡服务器先对访问请求中目标页面的网页链接根据哈希算法进行计算并得到结果之后,再根据缓存服务器的权重确定响应所述针对目标页面的访问请求的缓存服务器
步骤406:接收针对目标页面的访问请求。
缓存服务器接收到访问请求后,会立刻获取所述访问请求中的网页链接和登录信息。
步骤408:备份登录信息。
缓存服务器将获得的登录信息赋值到一个临时变量中,即备份。
步骤410:清除登录信息中除分组信息以外的其他数据。
在备份之后,缓存服务器对登录信息中的数据进行有选择性的删除,仅保留分组信息,形成处理后的登录信息。
步骤412:确定目标页面的访问关键词。
对登录信息进行处理后,缓存服务器根据处理后的登录信息和网页链接作为哈希算法的两个因素进行计算,获得目标页面的访问关键词。
步骤414:根据访问关键词确定是否存在对应的缓存数据。
缓存服务器根据获得的访问关键词在缓存列表中进行匹配对应的缓存对象,根据能否匹配上缓存对象确定是否存在对应的缓存数据。
步骤416:返回缓存数据。
若存在与所述访问关键词对应的缓存数据,缓存服务器会将所述缓存数据发送至客户端,执行步骤430。
步骤418:发送访问请求和备份的登录信息。
若不存在与所述访问关键词对应的缓存数据,缓存服务器将之前备份的登录信息和访问请求一起发送至业务层服务器。
步骤420:根据备份的登录信息恢复网页访问请求中的登录信息。
业务层服务器接收到由缓存服务器发送的针对目标页面的访问请求和根据备份的登录信息后,获取所述访问请求中的登录信息和网页链接,并根据备份的登录信息恢复网页访问请求中的登录信息,。
步骤422:根据网页链接查询网页数据。
业务层服务器根据网页链接直接获取对应的最新的网页数据。
步骤424:判断权限组信息是否更新。
此外,业务层服务器将登录信息中的分组信息与权限组信息进行对比,通过判断两者是否一致判断权限组信息是否更新。若权限组信息更新,跳转到步骤426;若权限组信息没有更新,执行步骤428。
步骤426:更新登录信息。
业务层服务器根据权限组信息更新登录信息,之后执行步骤428。
步骤428:返回网页数据。
业务层服务器将获取的网页数据发送至客户端和缓存服务器。
步骤430:呈现目标页面。
客户端根据接收到的缓存数据或者页面数据呈现目标页面。
步骤432:存储页面数据。
缓存服务器根据缓存规则存储网页数据。
本申请提供的一种应用于网页访问系统的网页访问方法,发送针对目标页面的访问请求;确定响应访问请求的缓存服务器;接收针对目标页面的访问请求;备份登录信息;清除登录信息中除分组信息以外的其他数据;确定目标页面的访问关键词;根据访问关键词确定是否存在对应的缓存数据;返回缓存数据;发送访问请求和备份的登录信息;根据备份的登录信息恢复网页访问请求中的登录信息;根据网页链接查询网页数据;判断权限组信息是否更新;更新登录信息;返回网页数据。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
与上述方法实施例相对应,本申请还提供了缓存服务器实施例,图5示出了本申请一实施例提供的一种缓存服务器的结构示意图。如图5所示,该缓存服务器包括:
接收模块502,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
处理模块504,被配置为根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;
判断模块506,被配置为根据所述访问关键词确定是否存在对应的缓存数据;
发送模块508,被配置为在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。
在本实施例的一个或多个实施方式中,所述处理模块504,还被配置为根据哈希算法将所述网页链接和所述登录信息进行计算,从计算结果中提取所述目标页面的访问关键词。
在本实施例的一个或多个实施方式中,所述判断模块506,还被配置为根据所述访问关键词确定缓存列表中是否存在所述访问关键词对应的缓存对象,在存在所述缓存对象的情况下,根据所述缓存对象查找对应的缓存数据。
在本实施例的一个或多个实施方式中,所述缓存服务器还包括:
缓存模块,被配置为在不存在所述缓存数据的情况下,将所述访问请求发送至业务层服务器,接收业务层服务器响应于所述访问请求反馈的所述目标页面的网页数据,根据缓存规则对所述网页数据进行缓存。
在本实施例的一个或多个实施方式中,所述处理模块504,还被配置为从所述访问请求中获取网页链接和登录信息,清除所述登录信息中除分组信息以外的其他数据。
在本实施例的一个或多个实施方式中,所述处理模块504,还被配置为将所述登录信息进行备份,获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据,根据所述分组信息以预设格式重新构造所述登录信息。
在本实施例的一个或多个实施方式中,所述发送模块508,还被配置为将所述访问请求和备份的登录信息发送至业务层服务器。
在本实施例的一个或多个实施方式中,所述缓存服务器还包括:
删除模块,被配置为接收业务层服务器发送的页面修改信息,根据所述页面修改信息确定被修改的页面,判断本地是否存储有所述页面对应的缓存对象和缓存数据,若是,则删除本地存储中所述页面对应的缓存对象和缓存数据。
本申请提供的一种缓存服务器,接收模块,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;处理模块,被配置为根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;判断模块,被配置为根据所述访问关键词确定是否存在对应的缓存数据;发送模块,被配置为在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
上述为本实施例的一种缓存服务器的示意性方案。需要说明的是,该缓存服务器的技术方案与上述图1所示的应用于缓存服务器的页面访问方法的技术方案属于同一构思,缓存服务器的技术方案未详细描述的细节内容,均可以参见上述应用于缓存服务器的页面访问方法的技术方案的描述。
与上述方法实施例相对应,本申请还提供了业务层服务器实施例,图6示出了本申请一实施例提供的一种业务层服务器的结构示意图。如图6所示,该业务层服务器包括:
接收模块602,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
查询模块604,被配置为根据所述网页链接查询所述目标页面的网页数据;
更新模块606,被配置为在权限组信息更新的情况下,更新所述登录信息;
发送模块608,被配置为将所述目标页面的网页数据发送至客户端和缓存服务器。
在本实施例的一个或多个实施方式中,所述更新模块606,还被配置为获取所述登录信息中的分组信息,并与权限组信息进行对比,在所述分组信息与所述权限组信息不一致的情况下,确认所述权限组信息更新,根据所述权限组信息更新所述登录信息。
在本实施例的一个或多个实施方式中,所述发送模块608,还被配置为在权限组信息没有更新的情况下,将所述目标页面的网页数据发送至客户端和缓存服务器。
在本实施例的一个或多个实施方式中,所述接收模块602,还被配置为接收针对目标页面的访问请求和备份的登录信息;根据备份的登录信息恢复所述网页访问请求中的所述登录信息。
本申请提供的一种业务层服务器,接收模块,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;查询模块,被配置为根据所述网页链接查询所述目标页面的网页数据;更新模块,被配置为在权限组信息更新的情况下,更新所述登录信息;发送模块,被配置为将所述目标页面的网页数据发送至客户端和缓存服务器。实现了不同用户访问同一页面时可以读取到有效而准确的缓存数据,避免了将访问请求发送到业务层服务器去处理,从而能够有效的减小业务层服务器的压力,节省购买服务器的成本,还能提高页面的响应速度,提高用户体验。
上述为本实施例的一种业务层服务器的示意性方案。需要说明的是,该业务层服务器的技术方案与上述图2所示的应用于业务层服务器的页面访问方法的技术方案属于同一构思,业务层服务器的技术方案未详细描述的细节内容,均可以参见上述应用于业务层服务器的页面访问方法的技术方案的描述。
图7示出了根据本说明书一个实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
其中,处理器720执行所述指令时实现所述的页面访问方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的页面访问方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述页面访问方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述页面访问方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的页面访问方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述页面访问方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (15)

1.一种页面访问方法,其特征在于,应用于缓存服务器,包括:
接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据;
根据所述分组信息以预设格式重新构造所述登录信息;
根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;
根据所述访问关键词确定是否存在对应的缓存数据;
在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。
2.根据权利要求1所述的方法,其特征在于,所述根据所述网页链接和所述登录信息确定所述目标页面的访问关键词包括:
根据哈希算法将所述网页链接和所述登录信息进行计算;
从计算结果中提取所述目标页面的访问关键词。
3.根据权利要求1所述的方法,其特征在于,所述根据所述访问关键词确定是否存在对应的缓存数据,包括:
根据所述访问关键词确定缓存列表中是否存在所述访问关键词对应的缓存对象;
在存在所述缓存对象的情况下,根据所述缓存对象查找对应的缓存数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在不存在所述缓存数据的情况下,将所述访问请求发送至业务层服务器;
接收业务层服务器响应于所述访问请求反馈的所述目标页面的网页数据;
根据缓存规则对所述网页数据进行缓存。
5.根据权利要求1所述的方法,其特征在于,所述获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据之前,还包括:
将所述登录信息进行备份。
6.根据权利要求5所述的方法,其特征在于,将所述访问请求发送至业务层服务器包括:
将所述访问请求和备份的登录信息发送至业务层服务器。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收业务层服务器发送的页面修改信息;
根据所述页面修改信息确定被修改的页面;
判断本地是否存储有所述页面对应的缓存对象和缓存数据;
若是,则删除本地存储中所述页面对应的缓存对象和缓存数据。
8.一种页面访问方法,其特征在于,应用于业务层服务器,包括:
接收针对目标页面的访问请求和备份的登录信息,其中,所述访问请求中包括所述目标页面的网页链接和登录信息,所述登录信息为缓存服务器根据分组信息以预设格式重新构造得到,所述备份的登录信息为所述缓存服务在获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据之前备份得到;
根据备份的登录信息恢复所述访问请求中的所述登录信息;
根据所述网页链接查询所述目标页面的网页数据;
在权限组信息更新的情况下,更新所述登录信息;
将所述目标页面的网页数据发送至客户端和缓存服务器;
其中,所述在权限组信息更新的情况下,更新所述登录信息,包括:
获取所述登录信息中的分组信息,并与权限组信息进行对比;
在所述分组信息与所述权限组信息不一致的情况下,确认所述权限组信息更新;
根据所述权限组信息更新所述登录信息。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在权限组信息没有更新的情况下,将所述目标页面的网页数据发送至客户端和缓存服务器。
10.一种页面访问系统,其特征在于,所述系统包括:
客户端和至少两个缓存服务器;
所述客户端,被配置为接收用户针对目标页面的访问指令,发送针对目标页面的访问请求至所述至少两个缓存服务器,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
所述至少两个缓存服务器,被配置为接收所述针对目标页面的访问请求,获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据,根据所述分组信息以预设格式重新构造所述登录信息,根据所述网页链接和所述登录信息确定所述目标页面的访问关键词,根据所述访问关键词确定是否存在对应的缓存数据,在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至所述客户端。
11.根据权利要求10所述的系统,其特征在于,所述系统还包括:
负载均衡服务器;
所述客户端,还被配置为发送针对目标页面的访问请求至所述负载均衡服务器;
所述负载均衡服务器,被配置为将接收到的所述针对目标页面的访问请求中所述目标页面的网页链接进行处理,根据处理结果和所述至少两个缓存服务器的权重确定响应所述访问请求的缓存服务器。
12.一种缓存服务器,其特征在于,所述缓存服务器包括:
接收模块,被配置为接收针对目标页面的访问请求,其中,所述访问请求中包括所述目标页面的网页链接和登录信息;
处理模块,被配置为获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据;根据所述分组信息以预设格式重新构造所述登录信息;根据所述网页链接和所述登录信息确定所述目标页面的访问关键词;
判断模块,被配置为根据所述访问关键词确定是否存在对应的缓存数据;
发送模块,被配置为在存在所述缓存数据的情况下,读取所述缓存数据,将所述缓存数据发送至客户端。
13.一种业务层服务器,其特征在于,所述业务层服务器包括:
接收模块,被配置为接收针对目标页面的访问请求和备份的登录信息,其中,所述访问请求中包括所述目标页面的网页链接和登录信息,所述登录信息为缓存服务器根据分组信息以预设格式重新构造得到,所述备份的登录信息为所述缓存服务在获取所述登录信息中的分组信息,并清除所述登录信息中的所有数据之前备份得到;根据备份的登录信息恢复所述访问请求中的所述登录信息;
查询模块,被配置为根据所述网页链接查询所述目标页面的网页数据;
更新模块,被配置为在权限组信息更新的情况下,更新所述登录信息;
发送模块,被配置为将所述目标页面的网页数据发送至客户端和缓存服务器;
其中,所述更新模块,还被配置为获取所述登录信息中的分组信息,并与权限组信息进行对比,在所述分组信息与所述权限组信息不一致的情况下,确认所述权限组信息更新,根据所述权限组信息更新所述登录信息。
14.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-7或者8-9任意一项所述页面访问方法的步骤。
15.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-7或者8-9任意一项所述页面访问方法的步骤。
CN202110018512.0A 2021-01-07 2021-01-07 一种页面访问方法及系统 Active CN112612983B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110018512.0A CN112612983B (zh) 2021-01-07 2021-01-07 一种页面访问方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110018512.0A CN112612983B (zh) 2021-01-07 2021-01-07 一种页面访问方法及系统

Publications (2)

Publication Number Publication Date
CN112612983A CN112612983A (zh) 2021-04-06
CN112612983B true CN112612983B (zh) 2022-12-13

Family

ID=75254716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110018512.0A Active CN112612983B (zh) 2021-01-07 2021-01-07 一种页面访问方法及系统

Country Status (1)

Country Link
CN (1) CN112612983B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111897613A (zh) * 2020-07-31 2020-11-06 平安普惠企业管理有限公司 页面访问方法及相关设备
CN112100536A (zh) * 2020-09-21 2020-12-18 杭州安恒信息安全技术有限公司 一种网页访问方法、装置、设备及可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428243A (zh) * 2012-05-21 2013-12-04 阿里巴巴集团控股有限公司 动态网页静态存储的实现方法、设备和系统
CN102868719B (zh) * 2012-06-29 2015-09-16 北京奇虎科技有限公司 一种基于缓存的网络访问方法和服务器
CN105989070B (zh) * 2015-02-10 2020-01-17 阿里巴巴集团控股有限公司 从中间件请求数据的方法、系统及中间件客户端
CN111831947B (zh) * 2020-07-27 2023-08-15 中国工商银行股份有限公司 应用系统、数据处理方法、计算机系统和存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111897613A (zh) * 2020-07-31 2020-11-06 平安普惠企业管理有限公司 页面访问方法及相关设备
CN112100536A (zh) * 2020-09-21 2020-12-18 杭州安恒信息安全技术有限公司 一种网页访问方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN112612983A (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
EP2724251B1 (en) Methods for making ajax web applications bookmarkable and crawlable and devices thereof
CA2954294C (en) Website access method, apparatus, and website system
US6480853B1 (en) Systems, methods and computer program products for performing internet searches utilizing bookmarks
US6003087A (en) CGI response differencing communication system
US8312172B2 (en) Method and system for delta compression
RU2689439C2 (ru) Улучшение производительности веб-доступа
US7676553B1 (en) Incremental web crawler using chunks
CN112559927B (zh) 一种网页加载方法及装置
US20160335243A1 (en) Webpage template generating method and server
CN107196998B (zh) 基于数据去重的移动Web请求处理方法、设备及系统
JP2002229842A (ja) Httpアーカイブ・ファイル
CN105868231A (zh) 缓存数据的更新方法及装置
TW201512866A (zh) 網頁載入的方法、系統及瀏覽器和代理伺服器
CN106534268B (zh) 一种数据共享方法及装置
CN101355587A (zh) Url信息获取方法和装置及搜索引擎实现方法及系统
CN109871354B (zh) 一种文件处理的方法及装置
EP2778975A1 (en) Methods for compressing web page menus and devices thereof
US20200233919A1 (en) Networked page access and addressing based on partial categorization indexing
CN112905618A (zh) 数据处理方法以及装置
Badawi et al. Maintaining the search engine freshness using mobile agent
CN112612983B (zh) 一种页面访问方法及系统
CA2527885A1 (en) Verifying content of resources in markup language documents
US9973597B1 (en) Differential dictionary compression of network-accessible content
CN106919600A (zh) 一种失效网址访问方法及终端
US20130110912A1 (en) System and method for providing anonymous internet browsing

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
GR01 Patent grant
GR01 Patent grant