一种检索的方法及装置制造方法及图纸

技术编号:15289806 阅读:69 留言:0更新日期:2017-05-10 16:52
本发明专利技术实施例提供了一种检索的方法及装置,其中,检索的方法包括:获取第一客户端发送的携带有检索词的检索请求;根据所述检索词,在Redis缓存中检索与所述检索请求对应的文档;在Redis缓存中未检索到所述与所述检索请求对应的文档时,调用Sphinx索引服务,在文档数据库中进行检索;在文档数据库中检索到所述与所述检索请求对应的文档时,获取所述与所述检索请求对应的文档,并返回所述与所述检索请求对应的文档给所述第一客户端。通过本发明专利技术实施例提供的一种检索的方法及装置可以有效降低访问文档数据库的次数,提高服务器处理速度,从而提高用户体验。

Method and device for searching

The embodiment of the invention provides a device and a retrieval method, which includes the retrieval method: get the client to send the first carry a search term retrieval request; according to the key words, retrieval and the retrieval request to the corresponding document in the Redis cache; to the retrieval request and the corresponding the document retrieval in the Redis cache, call the Sphinx indexing service for retrieval in a document database; in a document database retrieval to the retrieval request and the corresponding document, obtains the retrieval request and the corresponding document, and returns the search request with the corresponding document for the first client. The method and the device provided by the embodiment of the invention can effectively reduce the number of accesses to the document database and improve the processing speed of the server, so as to improve the user experience.

【技术实现步骤摘要】

本专利技术涉及计算机
,特别是涉及一种检索的方法及装置
技术介绍
随着互联网技术的快速发展,各种各样的信息都通过互联网进行传播,人们也能够通过互联网获得想要的信息,例如,人们可以通过访问不同的网站,获取不同的信息。然而,当访问某一网站的用户较多,服务器的并发请求量比较大的时候,容易造成访问文档数据库次数增加,降低服务器处理速率。
技术实现思路
本专利技术实施例的目的在于提供一种检索的方法及装置,以降低访问文档数据库次数,提高服务器处理速率。具体技术方案如下:第一方面,本专利技术实施例提供了一种检索的方法,所述方法包括:获取第一客户端发送的携带有检索词的检索请求;根据检索词,在Redis缓存中检索与检索请求对应的文档;在Redis缓存中未检索到与检索请求对应的文档时,调用Sphinx索引服务,在文档数据库中进行检索;在文档数据库中检索到与检索请求对应的文档时,获取与检索请求对应的文档,并返回与检索请求对应的文档给第一客户端。可选的,在根据检索词,在Redis缓存中检索与检索请求对应的文档之前,本专利技术实施例的检索的方法还包括:根据检索词,在预设关键词库中进行检索,得到与检索词对应的同义词和近义词;相应的,所述根据检索词,在Redis缓存中检索与检索请求对应的文档,包括:根据检索词、与检索词对应的同义词和近义词,在Redis缓存中检索与检索请求对应的文档。可选的,在Redis缓存中检索与检索请求对应的文档之后,本专利技术实施例的检索的方法还包括:在Redis缓存中检索到与检索请求对应的文档时,获取与检索请求对应的文档,并返回与检索请求对应的文档给第一客户端。可选的,文档数据库由MySQL数据库组成。可选的,在返回与检索请求对应的文档给第一客户端之前,本专利技术实施例的检索的方法还包括:缓存与检索请求对应的文档到Redis缓存。第二方面,本专利技术实施例提供了一种检索的装置,包括:获取模块,用于获取第一客户端发送的携带有检索词的检索请求;Redis检索模块,用于根据检索词,在Redis缓存中检索与检索请求对应的文档;文档数据库检索模块,用于在Redis缓存中未检索到与检索请求对应的文档时,调用Sphinx索引服务,在文档数据库中进行检索;返回模块,用于在文档数据库中检索到与检索请求对应的文档时,获取与检索请求对应的文档,并返回与检索请求对应的文档给第一客户端。可选的,检索的装置还包括:词语检索模块,用于根据检索词,在预设关键词库中进行检索,得到与检索词对应的同义词和近义词;相应的,Redis检索模块,还用于根据检索词、与检索词对应的同义词和近义词,在Redis缓存中检索与检索请求对应的文档。可选的,返回模块,还用于在Redis缓存中检索到与检索请求对应的文档时,获取与检索请求对应的文档,并返回与检索请求对应的文档给第一客户端。可选的,文档数据库由MySQL数据库组成。可选的,本专利技术实施例的检索的装置还包括:缓存模块,用于在返回与检索请求对应的文档给第一客户端之前,缓存与检索请求对应的文档到Redis缓存。本专利技术实施例提供的一种检索的方法及装置,通过在获取第一客户端发送的检所请求后,先从Redis缓存中检索,在未检索到的情况下,再从文档数据库中进行检索,检索到与检索请求对应的文档后,将检索到的与检索请求对应的文档缓存到缓存模块中,再发送给第一客户端,可以有效降低访问文档数据库的次数,提高服务器处理速度,从而提高用户体验。当然,实施本专利技术的任一产品或方法必不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例的一种检索的方法的第一种实施方式的流程图;图2为本专利技术实施例的一种检索的方法的第二种实施方式的流程图;图3为本专利技术实施例的一种检索的方法的第三种实施方式的流程图;图4为本专利技术实施例的一种检索的装置的第一种实施方式的结构图;图5为本专利技术实施例的一种检索的装置的第二种实施方式的结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为了解决现有技术问题,本专利技术实施例提供了一种检索的方法和装置,以降低访问文档数据库次数,提高服务器处理速率。下面首先对本专利技术实施例提供的一种检索的方法进行介绍。如图1所示,为本专利技术实施例的一种检索的方法的第一种实施方式的流程图,所述的方法可以包括以下步骤:S101,获取第一客户端发送的携带有检索词的检索请求;当用户需要在第一客户端检索需要的内容时,在第一客户端的搜索框内输入与所述内容对应的检索词,并执行预定的操作,该搜索框可以是安装在第一客户端上的可执行程序中的搜索框,也可以是在第一客户端上的网页中的搜索框,这都应当是合理的,在第一客户端生成并发送携带有检索词的检索请求,服务器端通过网络获取到第一客户端发送的携带有检索词的检索请求,其中,该第一客户端为与服务器建立连接的任一个客户端。需要说明的是,上述的第一客户端可以是移动通信设备,可以包括:具有通信功能的智能手机、超移动个人计算机设备;还可以是PC终端设备,可以包括:个人笔记本电脑、个人台式计算机。可以理解的是,该预定的操作包括但不限于单击,并且该搜索框的形状、大小以及在该第一客户端中的具体位置根据实际应用所设定,在此不作限定。S102,根据检索词,在Redis缓存中检索与检索请求对应的文档;其中,Redis缓存是一个高性能的键值存储系统,能够作为缓存框架和队列,因此,在本专利技术中,通过采用Redis缓存,能够提高检索效率,有效缩短响应第一客户端检索请求的时间,提高用户体验。S103,在Redis缓存中未检索到与检索请求对应的文档时,调用Sphinx索引服务,在文档数据库中进行检索;其中,Sphinx是一个基于SQL的全文检索引擎,它可以提供比数据库本身更专业的搜索功能,使得可执行程序更容易实现专业化的全文检索,因此,本专利技术实施例中,通过采用Sphinx,能够提高检索文档数据库的效率,降低服务器响应第一客户端检索请求的时间,提高用户体验。应当理解的是,本步骤中的文档数据库是根据实际使用需要采用的数据库,可以是MySQL数据库,还可以是PostgreSQL,这里不作限定。S104,在文档数据库中检索到与检索请求对应的文档时,获取与检索请求对应的文档,并返回与检索请求对应的文档给第一客户端。在进行检索时,检索的对象可以是文档的标题、文档的作者、文档摘要或内容,在根据检索词检索到与检索请求对应的文档时,生成至少包括文档的标题、文档的作者、文档摘要和文档内容的页面,并返回给第一客户端。可以理解的是,在获取的是第一客户端通过网页浏览器发送的检索请求时,相应的,生成至少包括文档的标题、文档的作者、文档摘要和文档内容的页面是能够被第一客户端浏览器识别的页面;在获取的是第一客本文档来自技高网...
一种检索的方法及装置

【技术保护点】
一种检索的方法,应用于服务器,其特征在于,包括:获取第一客户端发送的携带有检索词的检索请求;根据所述检索词,在Redis缓存中检索与所述检索请求对应的文档;在Redis缓存中未检索到所述与所述检索请求对应的文档时,调用Sphinx索引服务,在文档数据库中进行检索;在文档数据库中检索到所述与所述检索请求对应的文档时,获取所述与所述检索请求对应的文档,并返回所述与所述检索请求对应的文档给所述第一客户端。

【技术特征摘要】
1.一种检索的方法,应用于服务器,其特征在于,包括:获取第一客户端发送的携带有检索词的检索请求;根据所述检索词,在Redis缓存中检索与所述检索请求对应的文档;在Redis缓存中未检索到所述与所述检索请求对应的文档时,调用Sphinx索引服务,在文档数据库中进行检索;在文档数据库中检索到所述与所述检索请求对应的文档时,获取所述与所述检索请求对应的文档,并返回所述与所述检索请求对应的文档给所述第一客户端。2.根据权利要求1所述的检索的方法,其特征在于,在所述根据所述检索词,在Redis缓存中检索与所述检索请求对应的文档之前,所述的检索的方法还包括:根据所述检索词,在预设关键词库中进行检索,得到与所述检索词对应的同义词和近义词;相应的,所述根据所述检索词,在Redis缓存中检索与所述检索请求对应的文档,包括:根据所述检索词、与所述检索词对应的同义词和近义词,在Redis缓存中检索与所述检索请求对应的文档。3.根据权利要求1或2所述的检索的方法,其特征在于,在所述在Redis缓存中检索与所述检索请求对应的文档之后,所述的检索的方法还包括:在Redis缓存中检索到所述与所述检索请求对应的文档时,获取所述与所述检索请求对应的文档,并返回所述与所述检索请求对应的文档给所述第一客户端。4.根据权利要求1所述的检索的方法,其特征在于,所述文档数据库由MySQL数据库组成。5.根据权利要求1或2所述的检索的方法,其特征在于,在所述返回所述与所述检索请求对应的文档给所述第一客户端之前,所述的检索的方法还包括:缓存所...

【专利技术属性】
技术研发人员:沈文策
申请(专利权)人:福建中金在线信息科技有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1