[发明专利]热词典切换方法和装置有效
申请号: | 201510698232.3 | 申请日: | 2015-10-23 |
公开(公告)号: | CN106610996B | 公开(公告)日: | 2022-03-11 |
发明(设计)人: | 韩中腾 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F16/9535 | 分类号: | G06F16/9535;G06F9/54 |
代理公司: | 北京恒博知识产权代理有限公司 11528 | 代理人: | 范胜祥 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 词典 切换 方法 装置 | ||
本发明公开了一种热词典切换方法和装置,涉及计算机技术领域。所述方法包括:监控各热词典的状态是否变化;如果监控到一热词典的状态变化,则将各目标服务当前使用的热词典热更新为状态变化后的所述热词典。本发明解决了需要重启服务才能使用最新状态下的热词典的问题,取得了不用重启服务即可更新各服务使用的热词典,从而避免在线服务的暂停,使用户可以不中断对服务的访问。
技术领域
本发明涉及计算机技术领域,具体涉及一种热词典切换方法和装置。
背景技术
随着计算机技术的发展,越来越多的线上服务为用户提供网络资源。而这些线上服务都可能用到一些词典,而该词典是相对独立于服务的,服务首先会将词典的内容加载到服务的内存中,然后使用。其中,该词典如比如黑/白名单,索引词等。而在实际应用中,这些词典可能随时会变化,比如黑/白名单可能随着时间的变化在不断的变化,因而某些需要这些词典的服务则需要将其当前使用的词典更新为最新的词典。
在先技术中,当词典出现变化时,如果某个服务需要使用新的词典,则需要停止服务,然后重启该服务,从而才能加载该新的词典。而上述方案对于线上服务来说,其相当于中断了,在重启过程中,外界用户无法访问该服务的任何功能,耽误用户对服务的访问。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的热词典切换装置和相应的热词典切换方法。
依据本发明的一个方面,公开了一种热词典切换方法,包括:
监控各热词典的状态是否变化;
如果监控到一热词典的状态变化,则将各目标服务当前使用的热词典热更新为状态变化后的所述热词典。
优选地,所述将各目标服务当前使用的热词典热更新为状态变化后的所述热词典的步骤,包括:
通过线程池监控并且执行多任务并行的方式将各目标服务当前使用的热词典热更新为状态变化后的所述热词典。
优选地,所述监控各热词典的状态是否变化的步骤包括:
通过调用inotify API监控各热词典的状态是否变化。
优选地,所述通过调用inotify API监控各热词典的状态是否变化的步骤包括:
对每个热词典,通过inotify API中的初始化函数inotify_init()初始化文件变化监视器,并返回文件描述符;
通过inotify API中的文件变化监视器添加函数inotify_add_watch(),为所述文件描述符注册一个文件变化监视器;当通过所述文件变化监视器监控到热词典状态变化事件之后,返回热词典的状态变化消息。
优选地,所述将各目标服务当前使用的热词典热更新为状态变化后的所述热词典包括:
由线程池接收所述热词典的状态变化消息;
根据所述状态变化消息,利用所述线程池中的各工作线程,针对需要使用所述热词典的目标服务,将所述目标服务当前使用的热词典热更新为状态变化后的所述热词典。
优选地,所述监控各热词典的状态是否变化包括:
监控各热词典是否被更新。
优选地,所述将当前使用的热词典热更新为状态变化后的所述热词典的步骤包括:
将所述目标服务对所述热词典的加载记录设置为空,并触发重加载所述热词典的加载函数;
通过所述加载函数,获取状态变化后的热词典并进行加载。
依据本发明的另外一个方面,还公开了一种热词典切换装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510698232.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种创建密文索引的方法、装置及系统
- 下一篇:人物信息处理方法、装置及系统