【技术实现步骤摘要】
本专利技术涉及数据处理领域,具体而言,涉及一种进程更新方法和装置。
技术介绍
一般而言,进程的运行过程都需要加载一定数量的键-值(key-value)数据。例如:游戏进程会加载各个道具的价格、搜索引擎进程会加载离线挖掘的词典等等。当一个进程需要加载key-value数据时,通常的方法是:1)进程启动时从数据源读取数据,然后在进程内部进行转换并构建自己的私有数据结构;2)源数据更新时,进程销毁旧的数据结构,并重新执行构建程序。受key-value数据存储方式的限定,按照上述方式加载key-value数据的过程,每次进程启动都需要重新构建数据,更新线程和服务线程的相互影响,导致进程启动慢,恢复慢,进而造成进程更新不灵活。针对相关技术中键-值数据的加载方式导致进程更新不灵活的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种进程更新方法和装置,以至少解决键-值数据的加载方式导致进程更新不灵活的技术问题。根据本专利技术实施例的一个方面,提供了一种进程更新方法。根据本专利技术实施例的进程更新方法包括:获取共享内存组的状态信息,其中,所述共享内存组包括至少两个共享内存块,每个所述共享内存块均存储有所述进程的键-值数据;根据所述状态信息确定所述共享内存组中每个所述共享内存块的调用状态,以确定处于被调用状态的第一共享内存块和处于未被调用状态的第二共享内存块;以
【技术保护点】
一种进程更新方法,其特征在于,包括:获取共享内存组的状态信息,其中,所述共享内存组包括至少两个共享内存块,每个所述共享内存块均存储有所述进程的键‑值数据;根据所述状态信息确定所述共享内存组中每个所述共享内存块的调用状态,以确定处于被调用状态的第一共享内存块和处于未被调用状态的第二共享内存块;以及在所述第一共享内存块处于被调用状态时更新所述第二共享内存块中的所述键‑值数据。
【技术特征摘要】
1.一种进程更新方法,其特征在于,包括:
获取共享内存组的状态信息,其中,所述共享内存组包括至少两
个共享内存块,每个所述共享内存块均存储有所述进程的键-值数据;
根据所述状态信息确定所述共享内存组中每个所述共享内存块
的调用状态,以确定处于被调用状态的第一共享内存块和处于未被调
用状态的第二共享内存块;以及
在所述第一共享内存块处于被调用状态时更新所述第二共享内
存块中的所述键-值数据。
2.根据权利要求1所述的进程更新方法,其特征在于,在所述第一共享
内存块处于被调用状态时更新所述第二共享内存块中的所述键-值数
据之后,所述进程更新方法还包括:
将所述第一共享内存块由被调用状态转换为未被调用状态,并将
更新后的所述第二共享内存块由未被调用状态转换为被调用状态块。
3.根据权利要求1所述的进程更新方法,其特征在于,在获取共享内存
组的状态信息之前,所述进程更新方法还包括:
将所述共享内存组中的每个所述共享内存块均划分为第一存储
区域、第二存储区域和第三存储区域;以及
存储用于查找所述键-值数据的查找数据至所述第一存储区域,
并存储所述键-值数据中的第一数据至所述第二存储区域,以及存储
所述键-值数据中的第二数据至所述第三存储区域,其中,所述第一
数据和所述第二数据组成所述键-值数据。
4.根据权利要求3所述的进程更新方法,其特征在于,在存储用于查找
所述键-值数据的查找数据至所述第一存储区域,并存储所述键-值数
据中的第一数据至所述第二存储区域,以及存储所述键-值数据中的
第二数据至所述第三存储区域之后,所述进程更新方法还包括:
保存所述状态信息至与所述共享内存组相互独立的共享内存块;
以及
添加用于对所述状态信息的读写进行保护的信号量锁。
5.根据权利要求4所述的进程更新方法,其特征在于,
在添加用于对所述状态信息的读写进行保护的信号量锁之后,并
且在获取共享内存组的状态信息之前,所述进程更新方法还包括:获
取所述信号量锁,
在更新处于未被调用状态的共享内存块中的数据之后,所述进程
更新方法还包括:释放所述信号量锁。
6.根据权利要求3所述的进程更新方法,其特征在于,在将所述共享内
存组中的每个所述共享内存块均划分为第一存储区域、第二存储区域
和第三存储区域之后,所述进程更新方法还包括:
确定所述第二存储区域中用于存储所述第二数据的字节长度为
预设定长,
其中,存储所述键-值数据中的第一数据至所述第二存储区域包
括:将所述第一数据的长度转换为所述预设定长;以及存储转换为所
述预设定长后的所述第一数据至所述第二存储区域。
7.根据权利要求3所述的进程更新方法,其特征在于,在存储用于查找
所述键-值数据的查找数据至所述第一存储区域,并存储所述键-值数
据中的第一数据至所述第二存...
【专利技术属性】
技术研发人员:尹鹏,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。