提升移动端用户搜索体验的系统及方法技术方案

技术编号:16334839 阅读:27 留言:0更新日期:2017-10-03 15:08
本发明专利技术公开了提升移动端用户搜索体验的系统和方法,涉及计算机技术与软件开发领域。提升移动端用户搜索体验的系统,主要由搜索模块、网络模块和缓存模块组成,三个模块相互协作,共同高效地完成搜索请求,提升用户体验。其中搜索模块主要负责实现搜索功能,网络模块主要负责发起搜索网络请求,缓存模块主要负责缓存搜索数据到本地。本发明专利技术针对移动端搜索功能遇到的数据返回不准确、频繁发起重复搜索等问题,通过对用户的搜索请求添加标记和实现本地缓存等方法,提升了搜索结果的准确性、减少了搜索网络请求次数,优化了用户的搜索体验。

System and method for improving search experience of mobile end user

The invention discloses a system and a method for improving the search experience of a mobile end user, relating to the field of computer technology and software development. The system that promotes the search experience of the mobile end users is mainly composed of search module, network module and cache module. The three modules cooperate with each other to complete the search request efficiently and improve the user experience. Among them, the search module is responsible for the search function, the network module is responsible for initiating the search network request, and the cache module is mainly responsible for cache search data to the local. The present invention for mobile search function encountered return data is not accurate, frequently launched repeated search and other issues, the request to add markers and implement a local cache method based on the user's search accuracy, and improve the search results to reduce the search network requests, optimize the user's search experience.

【技术实现步骤摘要】

本专利技术涉及计算机技术与软件开发领域,具体涉及提升移动端用户搜索体验的系统和方法。
技术介绍
对于一个移动软件而言,用户搜索几乎成了必不可少的功能,一个好的搜索系统能给用户带来很好的搜索体验,相反一个差的搜索系统对于一个软件而言就是致命的。对于移动端而言,网络状况不稳定的情况时常发生,而且对于网络的请求顺序是由系统控制而软件无法决定返回顺序,所以当用户的搜索请求发送过快时,就可能出现返回的结果顺序不一致,这样就可能导致正确的搜索结果被过滤掉,而向用户显示的却是不正确的结果。另外,用户对搜索关键字频繁的编辑以至于发送搜索请求过多,而异步的网络请求可能导致返回的搜索结果对于当前的用户搜索请求不一致,可能使正确的搜索请求没能成功的展示。
技术实现思路
本专利技术的目的是为了解决上述技术问题,通过对搜索请求的标记用来决定当前的返回结果是否匹配当前的搜索请求,本系统的缓存功能也能更好的提升用户的搜索体验。为了达到上述的技术效果,本专利技术采取以下技术方案:提升移动端用户搜索体验的系统,它包括网络模块、搜索模块和缓存模块。所述网络模块包括任务管理单元和网络请求单元,所述网络任务管理单元负责给添加到网络模块的网络请求任务添加任务ID,所述任务ID是一个整型数据,控制任务返回的方式。所述网络请求单元负责实施网络请求任务,请求服务器获取数据;所述搜索模块包括搜索请求管理单元和搜索数据处理单元,搜索请求管理单元负责获取用户搜索关键字,组装搜索参数;搜索数据处理单元负责对网络请求以及缓存查询返回的数据进行顺序控制,决定是否返回给用户。所述缓存模块包括缓存过期管理单元和缓存数据管理单元,所述缓存过期管理单元持有一个定时器,用于定期去查询缓存表,清除掉已经过期的数据;缓存数据管理单元用于维护一个历史搜索的记录,负责查询与写入搜索请求。进一步的技术方案是:所述缓存模块内部维持一张Hash表,通过Key-Value的方式存储数据,其中Key值通过当前返回的任务获取到,value为搜索的结果数据;缓存模块存储数据后,通过Key值在缓存过期管理单元里面注册;缓存过期管理单元内部维持了一个数组,记录某个Key对应数据写入Hash表中的时间,会定期遍历数组,删除Hash表中过期的数据。同时,本专利技术还提供一种提升移动端用户搜索体验的方法,它包括发起搜索流程和获取搜索结果流程两部分,所述发起搜索流程包括如下步骤:D11、用户发起搜索时,搜索模块根据用户的搜索关键字生成唯一的一个Key值,D12、搜索模块根据生成的Key值去系统的缓存模块查询是否存在缓存数据,如果存在缓存数据,则直接返回结果给用户,流程结束;如果不存在缓存数据,搜索模块向网络模块发起搜索请求;D13、网络模块获取到搜索请求后,会生成一个网络请求任务,然后发起任务;网络模块会持有一个Int类型的值用来表示当前的总任务数,每添加一个网络请求任务时,该值就会加1,然后将该值赋值给任务,对于每一个发起的任务,该任务将持有这个Int类型的值用来标记当前任务的顺序,同时,该任务还会持有通过用户搜索关键字生成的Key值;所述获取搜索结果流程包括如下步骤:D21、网络模块接收到任务返回的数据,对返回的数据做一定处理后就返回给搜索模块,并将当前的任务顺序值一起返回给搜索模块;D22:搜索模块获取到返回的数据后,从网络模块获取到任务总数与标记的任务顺序值比较,如果任务顺序值小于任务的总数,则不返回数据,如果任务顺序值等于任务的总数,则返回结果给用户,流程结束。进一步的技术方案是:在步骤D11和步骤D12之间还包括步骤D111:检测是否需要将这次搜索缓存下来,如果是则进入步骤D12,如果不是,则直接向网络模块发起搜索请求。进一步的技术方案是:在步骤D21和步骤D22之间还包括步骤D211:搜索模块获取到返回的数据后,判断是否需要缓存,如果需要缓存,则将数据交给缓存模块做缓存处理后进入步骤D22;如果不需要缓存,则直接进入步骤D22。进一步的技术方案是:所述缓存模块内部维持一张Hash表,通过Key-Value的方式存储数据,其中Key值通过当前返回的任务获取到,value为搜索的结果数据;缓存模块存储数据后,通过Key值在缓存过期管理单元里面注册;缓存过期管理单元内部维持了一个数组,记录某个Key对应数据写入Hash表中的时间,会定期遍历数组,删除Hash表中过期的数据。本专利技术与现有技术相比,具有以下的有益效果:本专利技术中提出的通过给任务添加标记来处理返回在异常时的搜索结果,和对搜索结果进行缓存管理的方法,为用户提供了更加快速的搜索方式,从而提升用户搜索体验。本专利技术提供的提升移动端用户搜索体验的系统的搜索缓存功能可减少用户的搜索次数,加快搜索效率,对于搜索速度过慢时的搜索请求有更好的效果。附图说明图1是本专利技术系统结构框图;图2是本专利技术系统发起搜索流程图;图3是本专利技术系统获取搜索结果流程图。具体实施方式下面结合本专利技术的实施例对本专利技术作进一步的阐述和说明。实施例一:如图1所示,提升移动端用户搜索体验的系统,整个系统主要由搜索模块、网络模块和缓存模块组成,三个模块相互协作,共同高效地完成搜索请求,提升用户体验。其中搜索模块主要负责实现搜索功能,网络模块主要负责发起搜索网络请求,缓存模块主要负责缓存搜索数据到本地。具体地,网络模块:主要包括网络任务管理单元和网络请求单元。网络任务管理单元负责给添加到网络模块的网络请求任务添加任务ID(一个整型数值),控制任务返回的方式。网络请求单元负责实施网络任务,请求服务器获取数据,捕获与处理各类异常。搜索模块:主要包括搜索请求管理单元和搜索数据处理单元。搜索请求管理单元负责获取用户搜索关键字,组装搜索参数。搜索数据处理单元负责对网络请求以及缓存查询返回的数据进行顺序控制,决定是否返回给用户。缓存模块:主要包括缓存过期管理单元和缓存数据管单元。缓存过期管理部分持有一个定时器,会定期去查询缓存表,清除掉已经过期的数据。缓存数据管理单元维护了一个历史搜索的记录,同时,缓存数据管理单元负责查询与写入搜索请求。具体地:所述缓存模块内部维持一张Hash表,通过Key-Value的方式存储数据,其中Key值通过当前返回的任务获取到,value为搜索的结果数据;缓存模块存储数据后,通过Key值在缓存过期管理单元里面注册;缓存过期管理单元内部维持了一个数组,记录某个Key对应数据写入Hash表中的时间,会定期遍历数组,删除Hash表中过期的数据。实施例二:本实施是在实施例一描述的系统的基础上提供的提升移动端用户搜索体验的方法,具体包括发起搜索流程和获取搜索结果流程两部分。发起搜索流程如图2所示,包含以下步骤:S0:流程开始,进入步骤S1:获取用户输入的搜索关键字。搜索模块会根据用户的搜索关键字生成唯一的一个Key值,生成Key的方法可以直接使用用户的搜索关键字,也可根据用户的搜索条件生成Hash值。然后步骤S2:检测是否需要将这次搜索缓存下来,如果为是,则进入步骤S3_0:缓存模块查询是否有历史记录,搜索模块会根据生成的Key值去系统的本地缓存模块查询是否存在缓存数据,如果是,即存在缓存数据则进入步骤S4:返回查询到的数据,即返回结果给用户,然后步骤S6:流程结束。如果不需要缓存或者历史本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201710373931.html" title="提升移动端用户搜索体验的系统及方法原文来自X技术">提升移动端用户搜索体验的系统及方法</a>

【技术保护点】
提升移动端用户搜索体验的系统,其特征在于:它包括网络模块、搜索模块和缓存模块,所述网络模块包括任务管理单元和网络请求单元,所述网络任务管理单元负责给添加到网络模块的网络请求任务添加任务ID,所述任务ID是一个整型数据,控制任务返回的方式;所述网络请求单元负责实施网络请求任务,请求服务器获取数据;所述搜索模块包括搜索请求管理单元和搜索数据处理单元,搜索请求管理单元负责获取用户搜索关键字,组装搜索参数;搜索数据处理单元负责对网络请求以及缓存查询返回的数据进行顺序控制,决定是否返回给用户;所述缓存模块包括缓存过期管理单元和缓存数据管理单元,所述缓存过期管理单元持有一个定时器,用于定期去查询缓存表,清除掉已经过期的数据;缓存数据管理单元用于维护一个历史搜索的记录,负责查询与写入搜索请求。

【技术特征摘要】
1.提升移动端用户搜索体验的系统,其特征在于:它包括网络模块、搜索模块和缓存模块,所述网络模块包括任务管理单元和网络请求单元,所述网络任务管理单元负责给添加到网络模块的网络请求任务添加任务ID,所述任务ID是一个整型数据,控制任务返回的方式;所述网络请求单元负责实施网络请求任务,请求服务器获取数据;所述搜索模块包括搜索请求管理单元和搜索数据处理单元,搜索请求管理单元负责获取用户搜索关键字,组装搜索参数;搜索数据处理单元负责对网络请求以及缓存查询返回的数据进行顺序控制,决定是否返回给用户;所述缓存模块包括缓存过期管理单元和缓存数据管理单元,所述缓存过期管理单元持有一个定时器,用于定期去查询缓存表,清除掉已经过期的数据;缓存数据管理单元用于维护一个历史搜索的记录,负责查询与写入搜索请求。2.根据权利要求1所述的提升移动端用户搜索体验的系统,其特征在于:所述缓存模块内部维持一张Hash表,通过Key-Value的方式存储数据,其中Key值通过当前返回的任务获取到,value为搜索的结果数据;缓存模块存储数据后,通过Key值在缓存过期管理单元里面注册;缓存过期管理单元内部维持了一个数组,记录某个Key对应数据写入Hash表中的时间,会定期遍历数组,删除Hash表中过期的数据。3.提升移动端用户搜索体验的方法,其特征在于:它包括发起搜索流程和获取搜索结果流程两部分,所述发起搜索流程包括如下步骤:D11、用户发起搜索时,搜索模块根据用户的搜索关键字生成唯一的一个Key值,D12、搜索模块根据生成的Key值去系统的缓存模块查询是否存在缓存数据,如果存在缓存数据,则直接返回结果给用户,流程结束;如果不存在缓存数据,搜索模块向网络模块发起搜索请求;D13、网络模块获取到搜索请求后,...

【专利技术属性】
技术研发人员:郑红刘蛟李伟光周嘉立
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川;51

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

1