数据更新方法及相关设备与流程

未命名 07-15 阅读:77 评论:0


1.本技术涉及数据处理技术领域,尤其涉及一种数据更新方法及相关设备。


背景技术:

2.在万物互联的环境下,维护成本较高的纸质价签已经逐渐被大型商超淘汰,取而代之的是维护成本较低的电子价签。电子价签在刷新的时候需要访问数据库,才能获取更新数据,以刷新电子价签的显示信息。如果电子价签数量过多,后台在处理价签刷新请求时需要频繁访问数据库,导致数据库压力过大,进而导致电子价签刷新效率低。


技术实现要素:

3.有鉴于此,本技术提出一种数据更新方法及相关设备,以解决或部分解决上述问题。
4.基于上述目的,本技术的第一方面提供了一种数据更新方法,包括:
5.响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识;
6.根据所述标识在缓存系统中查询与所述标识对应的数据信息;
7.根据所述标识和所述数据信息生成更新数据;
8.根据所述更新数据刷新所述终端设备所显示的数据。
9.可选的,所述方法还包括:
10.接收数据信息及对应的终端设备的标识;
11.在所述缓存系统中存储所述数据信息及其关联的标识。
12.可选的,所述缓存系统包括多个数据信息,每个数据信息对应关联一个终端设备的标识;
13.所述方法还包括:
14.响应于检测到所述多个数据信息中的目标数据信息的更新信息,基于所述更新信息,更新所述缓存系统中的所述目标数据信息。
15.可选的,所述根据所述标识和所述数据信息生成更新数据,包括:
16.根据所述标识,确定所述数据信息是否满足预设更新条件;
17.响应于确定所述数据信息满足所述预设更新条件,根据所述标识和所述数据信息生成更新数据。
18.可选的,所述终端设备包括电子价签,所述数据信息包括电子价签对应的模板信息和/或商品信息;
19.所述根据所述标识,确定所述数据信息是否满足预设更新条件,包括:
20.响应于确定所述数据信息包括模板信息和商品信息,确定所述数据信息满足预设更新条件;或者
21.响应于确定所述数据信息包括模板信息或基本信息,确定所述数据信息不满足预
设更新条件。
22.可选的,所述方法还包括:
23.响应于确定所述数据信息不满足所述预设更新条件,生成报错信息。
24.可选的,所述根据所述标识和所述数据信息生成更新数据,包括:
25.对所述标识和所述数据信息进行封装,得到封装数据,并将所述封装数据发送至消息队列中;
26.通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。
27.可选的,所述通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据,包括:
28.根据当前所述消息队列中的所述封装数据的数量,在所述多线程中确定需要唤醒的目标线程;
29.唤醒所述目标线程,通过所述目标线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。
30.可选的,所述方法还包括:
31.响应于在预设时间范围内所述消息队列中不存在所述封装数据,令所述多线程进入休眠状态。
32.可选的,在根据所述标识和所述数据信息生成更新数据之后,包括:
33.将所述更新数据存储至对象存储系统;
34.所述根据所述更新数据刷新所述终端设备所显示的数据,包括:
35.向所述终端设备连接的网关发送更新指令,以使网关从所述对象存储系统获取所述更新数据并发送至所述终端设备,以在所述终端设备显示所述更新数据。
36.可选的,所述方法还包括:
37.接收所述终端设备显示所述更新数据的显示结果;
38.响应于所述显示结果为显示失败,确定失败次数是否超过预设阈值;
39.响应于确定所述失败次数未超过所述预设阈值,重新根据所述更新数据刷新所述终端设备所显示的数据;或者
40.响应于确定所述失败次数超过所述预设阈值,生成预警信息。
41.本技术的第二方面还提供了一种数据更新装置,包括:
42.确定模块,被配置为:响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识;
43.查询模块,被配置为:根据所述标识在缓存系统中查询与所述标识对应的数据信息;
44.生成模块,被配置为:根据所述标识和所述数据信息生成更新数据;
45.更新模块,被配置为:根据所述更新数据刷新所述终端设备所显示的数据。
46.本技术的第三方面还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现如第一方面所述的方法。
47.本技术的第四方面还提供了一种数据更新系统,包括至少一个网关和至少一个终
端设备,以及,如第三方面所述的电子设备;
48.所述电子设备,被配置为:根据更新数据生成更新指令,并向所述网关发送所述更新指令;
49.所述网关,被配置为:接收所述更新指令,从所述电子设备中获取所述更新指令对应的更新数据,并向所述终端设备发送所述更新数据;
50.所述终端设备,被配置为:接收并显示所述更新数据。
51.本技术的第五方面还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上所述的方法。
52.本技术的第六方面还提供了一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如第一方面所述的方法。
53.从上面所述可以看出,本技术提供的数据更新方法及相关设备,所述方法包括:响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识,标识与终端设备一一对应,确定了标识则可以确定存在更新需求的终端设备。根据所述标识在缓存系统中查询与所述标识对应的数据信息,通过在缓存系统中查询数据信息,避免直接访问数据库,减轻了数据库的访问压力,提升数据查询速率。根据所述标识和所述数据信息生成更新数据,根据所述更新数据刷新所述终端设备所显示的数据,进而完成终端设备显示数据的更新。本技术提供的数据更新方法在数据量较大的情况下,能够明显减轻数据库的访问压力,提升数据查询效率,进而提升终端设备数据更新效率,缩短数据更新时间,提升用户体验。
附图说明
54.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
55.图1为本技术实施例的电子价签的数据更新流程图;
56.图2为本技术实施例的数据更新方法的流程图;
57.图3为本技术实施例的通过多线程生成更新数据的示意图;
58.图4为本技术另一实施例的电子价签的数据更新流程图;
59.图5为本技术实施例的数据更新装置的结构示意图;
60.图6为本技术实施例的电子设备硬件结构示意图;
61.图7为本技术实施例的数据更新系统的结构示意图。
具体实施方式
62.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
63.需要说明的是,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的
组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
64.在相关技术中,大型商超普遍采用电子价签替代纸质价签,相比于纸质价签,电子价签具有人工成本低、易维护等优点。电子价签通常以模板规定的形式显示商品的基本信息,例如包括商品的名称、类别、重量、折扣信息等。每个电子价签具有固定的标识,例如id(identity),该标识与商品信息和模板信息存在唯一对应关系。对电子价签进行刷新时,根据标识、更新的商品信息以及模板信息即可生成更新数据,在电子价签终端显示更新数据即可完成电子价签的刷新。
65.图1中示出了一种示例性的电子价签的数据更新方法的流程图,该方法具体包括:
66.步骤102、当服务端检测到商品信息或模板信息发生变化时,需要对电子价签进行刷图,发起刷图请求;
67.步骤104、刷图模块接收刷图请求后,在数据库中查询与刷图请求中电子价签标识关联的商品信息和模板信息,并对商品信息和模板信息进行校验,如果未通过校验转入步骤1062,如果通过校验转入步骤1064;
68.步骤1062、服务端进行报错,并结束当前电子价签的刷图任务;
69.步骤1064、根据商品信息和模板信息生成更新数据,发送至电子价签终端以图片的形式显示该更新数据。
70.虽然,通过上述步骤可以实现电子价签的刷新,但是如果电子价签数量较多,刷新任务也随之增加,刷新过程中频繁访问数据库会对数据库造成一定的访问压力,对于数据查询速度和电子价签刷新速度均会产生一定的影响。
71.为了解决上述问题,本技术实施例提供了一种数据更新方法。可选地,该方法可以应用于服务端。图2示出了一种数据更新方法200的流程图,如图2所示,所述方法包括以下步骤:
72.步骤202、响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识。
73.具体的,对于存储在数据库中的数据信息,每个数据信息与终端设备相对应,终端设备具有唯一标识,通过终端设备的标识可以在数据库中查找到相应的数据信息。当数据库中的数据信息发生变化时,也即产生了触发操作,触发数据更新任务。
74.示例性的,触发操作可以通过以下方式实现,一种方式可以为,用户直接在数据库中修改数据信息,使数据信息发生变化,从而触发数据更新任务。另一种方式可以为,服务端通过定时任务触发数据更新任务,基于数据库中在一段时间内已经更新的数据信息对终端设备的显示数据进行刷新,发起定时任务的可以是本地服务端,也可以是远程服务端。本实施例中提供的上述两种数据更新任务的触发方式只作为示例性说明,不具有限制性作用。
75.在一具体的实施例中,终端设备可以为电子价签,电子价签的显示的数据可以包括商品信息,例如名称、种类、重量、更新前的价格、更新后的价格、折扣信息等等。每个电子
价签具有唯一标识,电子价签显示的数据信息均存储在数据库中,电子价签、标识和数据信息之间存在对应关系。当检测到数据库中的某一电子价签对应的数据信息发生变化时,即触发了电子价签刷新任务。数据信息中还可以包括模板信息,模板信息规定了数据信息的显示方式,例如在电子价签的哪些位置显示数据信息、或者以何种字体或颜色显示数据信息等等。如果模板信息发生变化,也会触发电子价签刷新任务。
76.需要说明的是,同一模板信息可以对应多个电子价签,当某一模板信息发生变化时,该模板信息对应的全部电子价签显示的数据均需要进行更新,将会触发批量更新任务。当电子价签的数据信息发生变化时,需要首先确定电子价签的标识,以通过标识查找对应的数据信息。
77.步骤204、根据所述标识在缓存系统中查询与所述标识对应的数据信息。
78.具体的,可以在服务端预先部署缓存系统,缓存系统可以提升数据的查询速度,同时缓解数据库的访问压力。示例性的,缓存系统可以为分布式的高速缓存系统memcached或远程字典服务redis(remote dictionary server)等系统。其中,memcached是一个免费开源的、高性能的、具有分布式内存对象的缓存系统,它通过减轻数据库负载加速动态web应用。redis是一个开源的高性能的key-value存储系统,支持存储较多value类型,包括字符串string、链表list、集合set、有序集合zset和哈希类型hash等。本领域技术人员可以根据实际需求选取合适的缓存系统,本实施例中对于缓存系统的类型不做具体限制。
79.相比于将数据信息存储在单一的数据库中,通过设置缓存系统,将数据库中的数据同步在缓存系统中,当需要在数据库中查询数据时,可以直接在缓存系统中查询即可,有效缓解数据库的访问压力。由于缓存系统的数据与数据库中的数据是同步的,因此,通过步骤202获取到标识后,可以在缓存系统中查询标识对应的的数据信息。
80.步骤206、根据所述标识和所述数据信息生成更新数据。
81.具体的,数据信息为经过更新的数据信息,将标识和数据信息进行合并后生成更新数据。示例性的,可以将标识与数据信息按照一定规则进行合并或拼接,以生成更新数据。规则用于描述终端设备显示的数据形式,包括数据排布方式或数据类型等。数据排布方式用于描述数据在终端设备显示的具体位置,数据类型可以为文本或图片等。
82.在一具体实施例中,当终端设备为电子价签时,更新数据的数据类型可以为图片。服务端根据标识和数据信息生成图片格式的更新数据,以在电子价签终端显示该图片格式的更新数据。
83.步骤208、根据所述更新数据刷新所述终端设备所显示的数据。
84.具体的刷新方式可以是服务端根据更新数据生成更新指令,并向终端设备发送更新指令。其中,更新指令可以包括更新数据,也可以不包括更新数据。当更新指令包括更新数据时,终端设备解析更新数据并进行显示。当更新指令不包括更新数据时,服务端以发送更新指令的形式通知终端设备存在更新数据,终端设备可以在合适的时机向服务端发送更新数据的下载请求,服务端再将更新数据发送至终端设备。
85.基于上述步骤202至步骤208提供的数据更新方法,响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识,标识与终端设备一一对应,确定了标识则可以确定存在更新需求的终端设备。根据所述标识在缓存系统中查询与所述标识对应的数据信息,通过在缓存系统中查询数据信息,避免直接访问数据库,减轻了数据库的访问
压力,提升数据查询速率。根据所述标识和所述数据信息生成更新数据,根据所述更新数据刷新所述终端设备所显示的数据,进而完成终端设备显示数据的更新。本技术提供的数据更新方法在数据量较大的情况下,能够明显减轻数据库的查询压力,提升数据查询效率,进而提升终端设备数据更新效率,缩短数据更新时间,提升用户体验。
86.在一些实施例中,所述方法还包括:
87.接收数据信息及对应的终端设备的标识;
88.在所述缓存系统中存储所述数据信息及其关联的标识。
89.具体的,缓存系统中存储的数据信息通常为常用的数据信息。当出现新增的数据信息和终端设备标识时,将新增的数据信息和终端设备的标识同时存储在缓存系统和数据库中,存储时,将数据信息和标识进行关联存储,后续根据标识查找数据信息提供便利。
90.在一些实施例中,所述缓存系统包括多个数据信息,每个数据信息对应关联一个终端设备的标识;所述方法还包括:
91.响应于检测到所述多个数据信息中的目标数据信息的更新信息,基于所述更新信息,更新所述缓存系统中的所述目标数据信息。
92.具体的,在缓存系统中存在多个数据信息的情况下,对于缓存系统中指定的目标数据信息,如果一旦检测到存在更新信息,则根据更新信息更新所述目标数据信息。其中,目标数据信息可以为用户预先指定的数据信息或更新优先级较高的数据信息。及时对缓存系统中的数据信息进行更新,能够保证后续根据标识查询数据信息时,返回的数据信息的时效性和准确性。
93.在一些实施例中,所述根据所述标识和所述数据信息生成更新数据,包括:
94.根据所述标识,确定所述数据信息是否满足预设更新条件;
95.响应于确定所述数据信息满足所述预设更新条件,根据所述标识和所述数据信息生成更新数据。
96.在生成更新数据之前,需要对数据信息是否满足预设更新条件进行判断,满足预设更新条件,则根据标识和数据信息生成更新数据。如果不满足预设更新条件,则停止数据更新任务,避免在终端显示设备中显示错误的数据。示例性的,确定是否满足预设更新条件可以为,确定数据信息是否包括数据更新所需的全部数据,也即是否存在数据缺失现象,如果存在数据缺失,则不满足预设更新条件。
97.在一些实施例中,所述终端设备包括电子价签,所述数据信息包括电子价签对应的模板信息和/或商品信息;
98.所述根据所述标识,确定所述数据信息是否满足预设更新条件,包括:
99.响应于确定所述数据信息包括模板信息和商品信息,确定所述数据信息满足预设更新条件;或者
100.响应于确定所述数据信息包括模板信息或基本信息,确定所述数据信息不满足预设更新条件。
101.具体的,当终端设备为电子价签时,电子价签显示的数据通常包括具体的商品信息以及商品信息的显示形式,也即模板信息。如果缓存系统中不存在模板信息和商品信息,表示数据信息存在缺失,则不满足预设更新条件。如果缓存系统中只存在一种信息,例如只存在商品信息或模板信息,也无法生成正确的更新数据,因此,也不满足预设更新条件。只
有在缓存系统中同时存在模板信息和商品信息时,才能按照模板信息规定的数据显示形式在电子价签终端正确的显示商品信息,最大限度避免电子价签刷新过程出现错误。
102.在一些实施例中,所述方法还包括:响应于确定所述数据信息不满足所述预设更新条件,生成报错信息。报错信息的具体形式可以为文本提示信息、语音提示信息或信息提示灯点亮等。当数据信息存在缺失现象,或者不同时包括商品信息和模板信息时,确定数据信息不满足预设更新条件,服务端则生成报错信息,以提醒用户及时进行数据维护,避免影响终端设备的使用。
103.在一些实施例中,所述根据所述标识和所述数据信息生成更新数据,包括:
104.对所述标识和所述数据信息进行封装,得到封装数据,并将所述封装数据发送至消息队列中;
105.通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。
106.具体的,为了加快数据更新任务的处理速度,本实施例中通过多线程处理数据更新任务。获取到标识和数据信息后,对标识和数据信息进行封装并发送至消息队列中,消息队列中的数据采用先进先出的原则,多个线程分别从消息队列中读取封装数据进行处理,以生成更新数据。相比于单线程处理,能够显著提升数据处理速度,提升终端设备数据的更新速度。图3示出了通过多线程生成更新数据的示意图,服务端对多个标识和数据信息进行封装,形成封装数据1、封装数据2、封装数据3以及封装数据4,将上述封装数据从队尾送入消息队列301中,依次进行编码,形成data1、data2、data3

,多线程302从队头位置依次读取消息队列301中的封装数据data1、data2、data3

,并根据每个封装数据分别生成对应的更新数据。本实施例中采用消息队列301和多线程302生成更新数据,能够提升更新数据生成过程的稳定性和可靠性,同时也能够减少服务端资源的消耗。
107.在一些实施例中,所述通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据,包括:
108.根据当前所述消息队列中的所述封装数据的数量,在所述多线程中确定需要唤醒的目标线程;
109.唤醒所述目标线程,通过所述目标线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。
110.具体的,当消息队列中封装数据的数量较少时,可以令多线程中的部分线程处于休眠状态,以释放部分服务端资源,避免过多的占多服务端资源,造成资源的浪费。当消息队列中的封装数据数量较多时,再适当唤醒休眠的线程,此过程即实现对线程的动态唤醒。进一步的,服务端根据消息队列中实时的封装数据的数量,决定需要唤醒的目标线程。唤醒目标线程后,通过目标线程读取消息队列中的封装数据,并根据封装数据生成更新数据。本实施例通过对多线性进行动态唤醒,有效提高线程的利用率,同时避免服务端资源的浪费。
111.在一些实施例中,所述方法还包括:响应于在预设时间范围内所述消息队列中不存在所述封装数据,令所述多线程进入休眠状态。如果检测到一段时间范围内,消息队列中不存在封装数据,可以令多线程进入休眠状态。示例性的,预设时间范围可以为1min。当消息队列中出现封装数据时,再适时唤醒多线程。具体实施时,当终端设备为电子价签时,为了避免电子价签刷新时对消费者造成影响,通常会选择商超非营业时间对电子价签进行刷
新。因此,在商超营业时间段内并不会对电子价签进行刷新,也即此时段内消息队列中不会存在封装数据,可以令多线程从当前的运行状态进入休眠状态,以释放占用的服务端资源,服务端可以将从多线程释放的资源分配给其他应用程序使用,实现服务端资源的合理分配,避免服务端资源的浪费。
112.在一些实施例中,在根据所述标识和所述数据信息生成更新数据之后,包括:
113.将所述更新数据存储至对象存储系统;
114.所述根据所述更新数据刷新所述终端设备所显示的数据,包括:
115.向所述终端设备连接的网关发送更新指令,以使网关从所述对象存储系统获取所述更新数据并发送至所述终端设备,以在所述终端设备显示所述更新数据。
116.随着数据规模的增加,服务端存储空间有限,且服务端存储的数据量较大会影响服务端的运行速率。为解决该问题,本实施例采用对象存储系统来存储生成的更新数据,以减轻服务端数据存储的压力。回到图3,多线程302中的每个线程通过读取封装数据并生成更新数据后,将更新数据直接发送至对象存储系统303进行存储,并向与终端设备连接的网关304发送更新指令,以使网关304从对象存储系统303中获取更新数据,再发送至终端设备,以对终端设备显示的数据进行刷新。示例性的,对象存储系统可以是ceph、glusterfs、minio等存储系统。ceph是一种兼具可靠性和可扩展性的统一的分布式文件系统。glusterfs是一种易于扩展和配置的对象存储系统,可以解决网络存储、联合存储、冗余备份、文件的负载均衡等问题。minio是一种高性能的对象存储系统,是为海量数据存储、人工智能、大数据分析而设计的,适合存储海量图片、视频、日志文件、备份数据和容器/虚拟机镜像等。
117.在一些实施例中,所述方法还包括:
118.接收所述终端设备显示所述更新数据的显示结果;
119.响应于所述显示结果为显示失败,确定失败次数是否超过预设阈值;
120.响应于确定所述失败次数未超过所述预设阈值,重新根据所述更新数据刷新所述终端设备所显示的数据;或者
121.响应于确定所述失败次数超过所述预设阈值,生成预警信息。
122.具体的,每一次数据更新任务结束后,与终端设备连接的网关会向服务端发送更新数据的显示结果,以使服务端获知数据更新任务的执行情况。当显示结果为显示失败时,需要查看当前失败次数,如果失败次数未超过预设阈值,服务端重新令网关从对象存储系统获取更新数据,并发送至终端设备进行刷新。如果失败次数超过预设阈值,表示数据或传输出现问题,需要用户及时进行维护,则生成预警信息。预设阈值可以根据实际需求进行设置,例如可以为3次。示例性的,预警信息的具体形式可以为文本预警信息、语音预警信息或预警提示灯点亮等,方便用户获知该预警信息。
123.此外,在服务端可以提前部署若干微服务,微服务可以包括刷图服务,当检测到触发操作后,服务端向刷图服务发送刷图请求,刷图服务接收到刷图请求后确定电子价签的标识,根据标识在缓存系统中查询对应的数据信息,对数据信息进行校验,如果校验通过,根据标识和数据信息生成更新数据,以刷新电子价签显示的数据,通过微服务架构可以实现刷图服务的灵活部署。
124.图4中示出了本技术另一实施例提供的电子价签的数据更新流程图,具体包括:
125.步骤4020、当服务端检测到商品的基本信息或模板信息发生变化时,需要对电子价签进行刷新,发起刷图请求;
126.步骤4040、刷图微服务接收刷图请求后,在缓存系统中查询与刷图请求中电子价签标识关联的商品信息和模板信息,并对商品信息和模板信息进行校验,如果未通过校验转入步骤4062,如果通过校验转入步骤4064;
127.步骤4062、服务端进行报错,并结束当前电子价签的刷图任务;
128.步骤4064、对电子价签标识、商品信息和模板信息进行封装,并发送至消息队列中;
129.步骤4080、商品信息或模板信息发生变更时,存入缓存系统中;
130.步骤4100、多线程依次从消息队列中读取封装数据,生成更新数据并上传至对象存储系统;
131.步骤4120、通过与终端设备连接的网关从对象存储系统获取更新数据,并发送至终端设备进行刷图,刷图成功进入步骤4142,刷图失败进入步骤4144;
132.步骤4142、刷图结束;
133.步骤4144、若失败次数小于预设阈值,重新进行刷图,若失败次数大于预设阈值,发出预警信息。
134.需要说明的是,本技术实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
135.需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
136.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种数据更新装置。
137.参考图5,所述数据更新装置500,包括:
138.确定模块502,被配置为:响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识;
139.查询模块504,被配置为:根据所述标识在缓存系统中查询与所述标识对应的数据信息;
140.生成模块506,被配置为:根据所述标识和所述数据信息生成更新数据;
141.更新模块508,被配置为:根据所述更新数据刷新所述终端设备所显示的数据。
142.在一些实施例中,还包括存储模块,所述存储模块,被配置为:接收数据信息及对应的终端设备的标识;在所述缓存系统中存储所述数据信息及其关联的标识。
143.在一些实施例中,所述缓存系统包括多个数据信息,每个数据信息对应关联一个终端设备的标识,所述存储模块,还被配置为:响应于检测到所述多个数据信息中的目标数据信息的更新信息,基于所述更新信息,更新所述缓存系统中的所述目标数据信息。
144.在一些实施例中,所述生成模块506,还被配置为:根据所述标识,确定所述数据信息是否满足预设更新条件;响应于确定所述数据信息满足所述预设更新条件,根据所述标识和所述数据信息生成更新数据。
145.在一些实施例中,所述终端设备包括电子价签,所述数据信息包括电子价签对应的模板信息和/或商品信息;所述生成模块506,还被配置为:响应于确定所述数据信息包括模板信息和商品信息,确定所述数据信息满足预设更新条件;或者
146.响应于确定所述数据信息包括模板信息或基本信息,确定所述数据信息不满足预设更新条件。
147.在一些实施例中,还包括预警模块,所述预警模块,被配置为:响应于确定所述数据信息不满足所述预设更新条件,生成报错信息。
148.在一些实施例中,所述生成模块506,还被配置为:对所述标识和所述数据信息进行封装,得到封装数据,并将所述封装数据发送至消息队列中;
149.通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。
150.在一些实施例中,所述生成模块506,还被配置为:根据当前所述消息队列中的所述封装数据的数量,在所述多线程中确定需要唤醒的目标线程;
151.唤醒所述目标线程,通过所述目标线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。
152.在一些实施例中,所述生成模块506,还被配置为:响应于在预设时间范围内所述消息队列中不存在所述封装数据,令所述多线程进入休眠状态。
153.在一些实施例中,所述生成模块506,还被配置为:将所述更新数据存储至对象存储系统;所述更新模块508,被配置为:向所述终端设备连接的网关发送更新指令,以使网关从所述对象存储系统获取所述更新数据并发送至所述终端设备,以在所述终端设备显示所述更新数据。
154.在一些实施例中,还包括确定模块,所述确定模块,被配置为:接收所述终端设备显示所述更新数据的显示结果;响应于所述显示结果为显示失败,确定失败次数是否超过预设阈值;响应于确定所述失败次数未超过所述预设阈值,重新根据所述更新数据刷新所述终端设备所显示的数据;或者响应于确定所述失败次数超过所述预设阈值,生成预警信息。
155.为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
156.上述实施例的装置用于实现前述任一实施例中相应的数据更新方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
157.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的数据更新方法。
158.图6示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间
在设备内部的通信连接。
159.处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
160.存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
161.输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
162.通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
163.总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
164.需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
165.上述实施例的电子设备用于实现前述任一实施例中相应的数据更新方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
166.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种数据更新系统,图7示出了数据更新系统的结构图,如图7所示,所述数据更新系统700包括至少一个网关702和至少一个终端设备704,以及电子设备706;
167.所述电子设备706,被配置为:根据更新数据生成更新指令,并向所述网关702发送所述更新指令;
168.所述网关702,被配置为:接收所述更新指令,从所述电子设备706中获取所述更新指令对应的更新数据,并向所述终端设备704发送所述更新数据;
169.所述终端设备704,被配置为:接收并显示所述更新数据。
170.如图7所示,数据更新系统700中包括了电子设备706,电子设备706中包括数据库7062、缓存系统7064和对象存储系统7066。数据库7062用于存储终端设备标识和数据信息,缓存系统7064存储了经常访问的终端设备标识和数据信息,并且出现新增信息或更新信息时,缓存系统7064与数据库7062同步更新。对象存储系统7066存储根据标识和数据信息生成的更新数据。电子设备706根据更新数据生成更新指令,并将更新指令发送至网关702,通过网关702实现与终端设备704之间的通信。电子设备706对应至少一个网关702,每个网关702对应至少一个终端设备704。网关702接收到更新指令后,从电子设备706中的对象存储
系统7066获取更新数据,并将更新数据发送至终端设备704。终端设备704接收更新数据后,显示所述更新数据。
171.作为一个可选实施例,所述终端设备704可以是电子价签,采用该系统700来刷新电子价签的显示内容,可以根据电子价签的标识在缓存系统中查询对应的数据信息来进行刷新。这样,通过在缓存系统中查询数据信息,避免直接访问数据库,减轻了数据库的访问压力,提升数据查询速率和电子价签的更新效率。
172.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的数据更新方法。
173.本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
174.上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的数据更新方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
175.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
176.另外,为简化说明和讨论,并且为了不会使本技术实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术实施例。因此,这些描述应被认为是说明性的而不是限制性的。
177.尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
178.本技术实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。

技术特征:
1.一种数据更新方法,其特征在于,包括:响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识;根据所述标识在缓存系统中查询与所述标识对应的数据信息;根据所述标识和所述数据信息生成更新数据;根据所述更新数据刷新所述终端设备所显示的数据。2.根据权利要求1所述的方法,其特征在于,所述根据所述标识和所述数据信息生成更新数据,包括:根据所述标识,确定所述数据信息是否满足预设更新条件;响应于确定所述数据信息满足所述预设更新条件,根据所述标识和所述数据信息生成更新数据。3.根据权利要求2所述的方法,其特征在于,所述终端设备包括电子价签,所述数据信息包括电子价签对应的模板信息和/或商品信息;所述根据所述标识,确定所述数据信息是否满足预设更新条件,包括:响应于确定所述数据信息包括模板信息和商品信息,确定所述数据信息满足预设更新条件;或者响应于确定所述数据信息包括模板信息或基本信息,确定所述数据信息不满足预设更新条件;和/或,所述方法还包括:响应于确定所述数据信息不满足所述预设更新条件,生成报错信息。4.根据权利要求1所述的方法,其特征在于,所述根据所述标识和所述数据信息生成更新数据,包括:对所述标识和所述数据信息进行封装,得到封装数据,并将所述封装数据发送至消息队列中;通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。5.根据权利要求4所述的方法,其特征在于,所述通过多线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据,包括:根据当前所述消息队列中的所述封装数据的数量,在所述多线程中确定需要唤醒的目标线程;唤醒所述目标线程,通过所述目标线程从所述消息队列中读取所述封装数据,并根据所述封装数据生成所述更新数据。6.根据权利要求1所述的方法,其特征在于,在根据所述标识和所述数据信息生成更新数据之后,包括:将所述更新数据存储至对象存储系统;所述根据所述更新数据刷新所述终端设备所显示的数据,包括:向所述终端设备连接的网关发送更新指令,以使网关从所述对象存储系统获取所述更新数据并发送至所述终端设备,以在所述终端设备显示所述更新数据。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收所述终端设备显示所述更新数据的显示结果;
响应于所述显示结果为显示失败,确定失败次数是否超过预设阈值;响应于确定所述失败次数未超过所述预设阈值,重新根据所述更新数据刷新所述终端设备所显示的数据;或者响应于确定所述失败次数超过所述预设阈值,生成预警信息。8.一种数据更新装置,其特征在于,包括:确定模块,被配置为:响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识;查询模块,被配置为:根据所述标识在缓存系统中查询与所述标识对应的数据信息;生成模块,被配置为:根据所述标识和所述数据信息生成更新数据;更新模块,被配置为:根据所述更新数据刷新所述终端设备所显示的数据。9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任意一项所述的方法。10.一种数据更新系统,包括至少一个网关和至少一个终端设备,以及,如权利要求9所述的电子设备;所述电子设备,被配置为:根据更新数据生成更新指令,并向所述网关发送所述更新指令;所述网关,被配置为:接收所述更新指令,从所述电子设备中获取所述更新指令对应的更新数据,并向所述终端设备发送所述更新数据;所述终端设备,被配置为:接收并显示所述更新数据。11.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,其特征在于,所述计算机指令用于使计算机执行权利要求1至7任一项所述方法。12.一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如权利要求1至7任一项所述的方法。

技术总结
本申请提供一种数据更新方法及相关设备,所述方法包括:响应于检测到用于数据更新的触发操作,确定所述触发操作对应的终端设备的标识。根据所述标识在缓存系统中查询与所述标识对应的数据信息,通过在缓存系统中查询数据信息,避免直接访问数据库,减轻了数据库的访问压力,提升数据查询速率。根据所述标识和所述数据信息生成更新数据,根据所述更新数据刷新所述终端设备所显示的数据,进而完成终端设备显示数据的更新。本申请提供的数据更新方法在数据量较大的情况下,能够明显减轻数据库的访问压力,提升数据查询效率,进而提升终端设备数据更新效率,缩短数据更新时间,提升用户体验。验。验。


技术研发人员:付鹏
受保护的技术使用者:京东方科技集团股份有限公司
技术研发日:2023.04.12
技术公布日:2023/7/12
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐