CN115292341A - 一种设备列表实时排序的方法、装置、系统及存储介质 - Google Patents
一种设备列表实时排序的方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN115292341A CN115292341A CN202211219214.9A CN202211219214A CN115292341A CN 115292341 A CN115292341 A CN 115292341A CN 202211219214 A CN202211219214 A CN 202211219214A CN 115292341 A CN115292341 A CN 115292341A
- Authority
- CN
- China
- Prior art keywords
- information
- cache
- equipment
- initial
- change
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012163 sequencing technique Methods 0.000 title abstract description 29
- 230000008859 change Effects 0.000 claims abstract description 134
- 238000004590 computer program Methods 0.000 claims description 16
- 230000004048 modification Effects 0.000 abstract description 15
- 238000012986 modification Methods 0.000 abstract description 15
- 230000003993 interaction Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种设备列表实时排序的方法、装置、系统及存储介质,方法包括:根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个初始缓存组和变更缓存组中的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将设备列表发送给前端,以实现减少对数据库的访问或修改情况下,使得设备列表根据设备状态排序。
Description
技术领域
本发明涉及通讯技术领域,尤其涉及一种设备列表实时排序的方法、装置、系统及存储介质。
背景技术
近年来,web的使用场景越发广泛,也应用在设备的通讯上,由于设备有多种状态,如:在线,离线,工作中等。在某些场景下,需要web的设备列表通过设备状态进行排序,例如:工作中的设备排前面,在线的排中间,离线的排最后。然而,由于设备的状态会经常变动,所以目前市面上大部分web的设备列表项目都不会通过设备状态去进行排序,只会按照设备的添加时间进行排序,然后在设备列表中标注设备的状态;或者有些web的设备列表项目是实时将设备的状态修改至数据库中,再直接根据设备状态去排序,但这样的方法会因为设备的状态变动频繁变更数据库,增大了web服务器的压力。
发明内容
本发明提供了一种设备列表实时排序的方法、装置、系统及存储介质,以实现减少对数据库的访问或修改情况下,使得设备列表根据设备状态排序。
为了现实上述效果,本发明实施例提供了一种设备列表实时排序的方法,包括:根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
作为优选方案,本发明的设备列表实时排序的方法,根据web上各设备的设备状态事件,更新初始缓存和变更缓存,当用户需要查看设备列表时,根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
作为优选方案,根据web上各设备的设备状态事件,更新初始缓存和变更缓存,具体为:
当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,将所述第一id信息存入初始缓存中;获取第一设备的设备信息,存入数据库中;
当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入变更缓存中。
作为优选方案,根据web上各设备的设备状态事件,在设备新增和设备状态更改的时候将对应的设备id存放在对应的设备状态的初始缓存组或者变更缓存组中;并获取第一设备的设备信息,存入数据库中,以便通过初始缓存组的设备id信息访问数据库,就可以按照设备状态获取数据库中对应的设备信息;以实现减少对数据库的访问或修改情况下,使得设备列表根据设备状态排序。
作为优选方案,在所述更新初始缓存和变更缓存之前,还包括:
建立初始缓存,根据所有的设备状态进行分组,获得若干个初始缓存组;其中,一个所述设备状态对应一个初始缓存组;
建立变更缓存,根据所有的设备状态进行分组,获得若干个变更缓存组;其中,一个所述设备状态对应一个变更缓存组。
作为优选方案,本发明在新增设备前,建立初始缓存,并且根据所有的设备状态建立初始缓存组,通过设备id信息按照设备状态进行分组,获取新增设备的设备信息,存入数据库中;在设备状态变更前,建立变更缓存,并且根据所有的设备状态建立变更缓存组,通过变更的设备id信息按照设备状态进行分组,以便通过初始缓存组和变更缓存组的设备id信息访问数据库,就可以按照设备状态获取数据库中对应的设备信息;以实现减少对数据库的访问或修改情况下,使得设备列表根据设备状态排序。
作为优选方案,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,具体为:
根据预设排序顺序的id信息,利用MySQL自定义排序方法,从数据库中查询对应的设备信息,获得预设排序顺序的设备信息,根据预设排序顺序的设备信息生成设备列表;其中,所述数据库存放所有的设备信息。
作为优选方案,本发明在用户需要查看设备列表时,根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;根据预设排序顺序的id信息,只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
相应地,本发明还提供一种设备列表实时排序的装置,包括:缓存更新模块和设备列表生成模块;
其中,所述缓存更新模块用于根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
所述设备列表生成模块用于当接收到用户查看设备列表的指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
作为优选方案,本发明的设备列表实时排序的装置,缓存更新模块根据web上各设备的设备状态事件,更新初始缓存和变更缓存,当用户需要查看设备列表时,设备列表生成模块根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
作为优选方案,本发明提供的设备列表实时排序的装置,还包括:初始缓存建立模块和变更缓存建立模块;
其中,所述初始缓存建立模块用于:建立初始缓存,根据所有的设备状态进行分组,获得若干个初始缓存组;其中,一个所述设备状态对应一个初始缓存组;
所述变更缓存建立模块用于:建立变更缓存,根据所有的设备状态进行分组,获得若干个变更缓存组;其中,一个所述设备状态对应一个变更缓存组。
作为优选方案,本发明在新增设备前,初始缓存建立模块建立初始缓存,并且根据所有的设备状态建立初始缓存组,通过设备id信息按照设备状态进行分组,获取新增设备的设备信息,存入数据库中;在设备状态变更前,变更缓存建立模块建立变更缓存,并且根据所有的设备状态建立变更缓存组,通过变更的设备id信息按照设备状态进行分组,以便通过初始缓存组和变更缓存组的设备id信息访问数据库,就可以按照设备状态获取数据库中对应的设备信息;以实现减少对数据库的访问或修改情况下,使得设备列表根据设备状态排序。
作为优选方案,缓存更新模块包括:初始缓存更新单元和变更缓存更新单元;
所述初始缓存更新单元用于当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,将所述第一id信息存入初始缓存中;获取第一设备的设备信息,存入数据库中;
所述变更缓存更新单元用于当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入变更缓存中。
作为优选方案,根据web上各设备的设备状态事件,初始缓存更新模块和变更缓存更新模块在设备新增和设备状态更改的时候将对应的设备id存放在对应的设备状态的初始缓存组或者变更缓存组中;并获取第一设备的设备信息,存入数据库中,以便通过初始缓存组的设备id信息访问数据库,就可以按照设备状态获取数据库中对应的设备信息;以实现减少对数据库的访问或修改情况下,使得设备列表根据设备状态排序。
作为优选方案,设备列表生成模块包括:信息获取单元和设备列表生成单元;
其中,所述信息获取单元用于根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;
设备列表生成单元用于根据预设排序顺序的id信息,利用MySQL自定义排序方法,从数据库中查询对应的设备信息,获得预设排序顺序的设备信息,根据预设排序顺序的设备信息生成设备列表,并将所述设备列表发送给前端;其中,所述数据库存放所有的设备信息。
作为优选方案,本发明在用户需要查看设备列表时,信息获取单元根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;设备列表生成单元根据预设排序顺序的id信息,只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
相应地,本发明还提供一种设备列表实时排序的系统,包括:数据库、缓存、前端和服务器;
所述数据库用于存放所有的设备信息;
所述缓存包括初始缓存和变更缓存,用于存放对应设备的id信息;所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
所述前端用于接收生成的设备列表;
所述服务器用于根据web上各设备的设备状态事件,更新初始缓存和变更缓存;
当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
作为优选方案,本发明的设备列表实时排序的系统,服务器根据web上各设备的设备状态事件,更新初始缓存和变更缓存,当用户需要查看设备列表时,根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
相应地,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如本发明内容所述的一种设备列表实时排序的方法。
附图说明
图1是本发明提供的设备列表实时排序的方法的一种实施例的流程示意图;
图2是本发明提供的设备列表实时排序的装置的一种实施例的结构示意图;
图3是本发明提供的设备列表实时排序的系统的一种实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参照图1,为本发明实施例提供的一种设备列表实时排序的方法,包括步骤S101-S102:
步骤S101:根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息。
在本实施例中,根据web上各设备的设备状态事件,更新初始缓存和变更缓存,具体为:
当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,将所述第一id信息存入初始缓存中;获取第一设备的设备信息,存入数据库中;
当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入变更缓存中。
在本实施例中,设备状态包括但不限于:在线、忙碌和离线。
在本实施例中,在所述更新初始缓存和变更缓存之前,还包括:
建立初始缓存,根据所有的设备状态进行分组,获得若干个初始缓存组;其中,一个所述设备状态对应一个初始缓存组;
建立变更缓存,根据所有的设备状态进行分组,获得若干个变更缓存组;其中,一个所述设备状态对应一个变更缓存组。
在本实施例中,初始缓存包括在线初始缓存组、忙碌初始缓存组和离线初始缓存组;变更缓存包括在线变更缓存组、忙碌变更缓存组和离线变更缓存组。
示例性地,当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,其中,若第一设备状态为在线,则将所述第一id信息存入在线初始缓存组中;获取第一设备的设备信息,存入数据库中;
示例性地,当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,其中,若第二设备状态为离线,则删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入离线变更缓存组中。
步骤S102:当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
在本实施例中,根据预设排序顺序的id信息,利用MySQL自定义排序方法,从数据库中查询对应的设备信息,获得预设排序顺序的设备信息,根据预设排序顺序的设备信息生成设备列表;其中,所述数据库存放所有的设备信息。
示例性地,若预设排序顺序为在线状态的设备排列在最前,忙碌状态的设备排列在在线状态的设备后面,离线状态的设备排列在忙碌状态的设备后面。利用MySQL自定义排序方法,先从在线初始缓存组和在线变更缓存组中获取第一id信息,再从忙碌初始缓存组和忙碌变更缓存组中获取第二id信息,最后在离线初始缓存组和离线变更缓存组中获取第三id信息;并根据第一id信息、第二id信息和第三id信息依次在数据库中查询读取对应的设备信息生成设备列表。
实施本发明实施例,具有如下效果:
本发明的设备列表实时排序的方法,根据web上各设备的设备状态事件,更新初始缓存和变更缓存,当用户需要查看设备列表时,根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
实施例二
请参照图2,为本发明实施例提供的一种设备列表实时排序的装置,包括:缓存更新模块201和设备列表生成模块202;
其中,所述缓存更新模块201用于根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
所述设备列表生成模块202用于当接收到用户查看设备列表的指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
在本实施例中,还包括:初始缓存建立模块和变更缓存建立模块;
其中,所述初始缓存建立模块用于:建立初始缓存,根据所有的设备状态进行分组,获得若干个初始缓存组;其中,一个所述设备状态对应一个初始缓存组;
所述变更缓存建立模块用于:建立变更缓存,根据所有的设备状态进行分组,获得若干个变更缓存组;其中,一个所述设备状态对应一个变更缓存组。
在本实施例中,缓存更新模块包括:初始缓存更新单元和变更缓存更新单元;
所述初始缓存更新单元用于当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,将所述第一id信息存入初始缓存中;获取第一设备的设备信息,存入数据库中;
所述变更缓存更新单元用于当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入变更缓存中。
在本实施例中,设备列表生成模块包括:信息获取单元和设备列表生成单元;
其中,所述信息获取单元用于根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;
设备列表生成单元用于根据预设排序顺序的id信息,利用MySQL自定义排序方法,从数据库中查询对应的设备信息,获得预设排序顺序的设备信息,根据预设排序顺序的设备信息生成设备列表,并将所述设备列表发送给前端;其中,所述数据库存放所有的设备信息。
上述的设备列表实时排序的装置可实施上述方法实施例的设备列表实时排序的方法。上述方法实施例中的可选项也适用于本实施例,这里不再详述。本申请实施例的其余内容可参照上述方法实施例的内容,在本实施例中,不再进行赘述。
实施本发明实施例,具有如下效果:
本发明的设备列表实时排序的装置,缓存更新模块根据web上各设备的设备状态事件,更新初始缓存和变更缓存,当用户需要查看设备列表时,设备列表生成模块根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
实施例三
请参照图3,为本发明实施例提供的一种设备列表实时排序的系统,包括:数据库301、缓存302、前端303和服务器304;
所述数据库301用于存放所有的设备信息;
所述缓存302包括初始缓存和变更缓存,用于存放对应设备的id信息;所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
所述前端303用于接收生成的设备列表;
所述服务器304用于根据web上各设备的设备状态事件,更新初始缓存和变更缓存;
当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
上述的设备列表实时排序的系统可实施上述方法实施例的设备列表实时排序的方法。上述方法实施例中的可选项也适用于本实施例,这里不再详述。本申请实施例的其余内容可参照上述方法实施例的内容,在本实施例中,不再进行赘述。
实施本发明实施例,具有如下效果:
本发明的设备列表实时排序的系统,服务器根据web上各设备的设备状态事件,更新初始缓存和变更缓存,当用户需要查看设备列表时,根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;只需要通过预设排序顺序的id信息访问数据库,就可以获取数据库中对应的设备信息生成设备列表;通过初始缓存和变更缓存id信息的变动来识别设备状态的变更,不需要在数据库中进行设备状态的修改和排序;在根据状态已经进行排序基础上,按照设备id信息排序访问数据库,减少了对数据库的设备信息的访问和修改次数,减少服务器压力,减少因为频繁修改数据库而产生的大量数据交互量,提高系统运行效率。
实施例四
相应地,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上任意一项实施例所述的设备列表实时排序的方法。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据移动终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(SecureDigital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种设备列表实时排序的方法,其特征在于,包括:
根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
2.如权利要求1所述的一种设备列表实时排序的方法,其特征在于,所述根据web上各设备的设备状态事件,更新初始缓存和变更缓存,具体为:
当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,将所述第一id信息存入初始缓存中;获取第一设备的设备信息,存入数据库中;
当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入变更缓存中。
3.如权利要求2所述的一种设备列表实时排序的方法,其特征在于,在所述更新初始缓存和变更缓存之前,还包括:
建立初始缓存,根据所有的设备状态进行分组,获得若干个初始缓存组;其中,一个所述设备状态对应一个初始缓存组;
建立变更缓存,根据所有的设备状态进行分组,获得若干个变更缓存组;其中,一个所述设备状态对应一个变更缓存组。
4.如权利要求1所述的一种设备列表实时排序的方法,其特征在于,所述根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,具体为:
根据预设排序顺序的id信息,利用MySQL自定义排序方法,从数据库中查询对应的设备信息,获得预设排序顺序的设备信息,根据预设排序顺序的设备信息生成设备列表;其中,所述数据库存放所有的设备信息。
5.一种设备列表实时排序的装置,其特征在于,包括:缓存更新模块和设备列表生成模块;
其中,所述缓存更新模块用于根据web上各设备的设备状态事件,更新初始缓存和变更缓存;其中,所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
所述设备列表生成模块用于当接收到用户查看设备列表的指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
6.如权利要求5所述的一种设备列表实时排序的装置,其特征在于,还包括:初始缓存建立模块和变更缓存建立模块;
其中,所述初始缓存建立模块用于:建立初始缓存,根据所有的设备状态进行分组,获得若干个初始缓存组;其中,一个所述设备状态对应一个初始缓存组;
所述变更缓存建立模块用于:建立变更缓存,根据所有的设备状态进行分组,获得若干个变更缓存组;其中,一个所述设备状态对应一个变更缓存组。
7.如权利要求5所述的一种设备列表实时排序的装置,其特征在于,所述缓存更新模块包括:初始缓存更新单元和变更缓存更新单元;
所述初始缓存更新单元用于当检测到新增的第一设备连接到web时,获取所述第一设备的第一id信息和第一设备状态,将所述第一id信息存入初始缓存中;获取第一设备的设备信息,存入数据库中;
所述变更缓存更新单元用于当检测到第二设备的设备状态变更后,获取所述第二设备的第二id信息和第二设备状态,删除所述初始缓存和变更缓存中的所述第二id信息,根据所述第二设备状态,将所述第二id信息存入变更缓存中。
8.如权利要求5所述的一种设备列表实时排序的装置,其特征在于,所述设备列表生成模块包括:信息获取单元和设备列表生成单元;
其中,所述信息获取单元用于根据预设排序顺序,依次获取所述初始缓存组和所述变更缓存组中的对应状态的设备的id信息,获得预设排序顺序的id信息;
设备列表生成单元用于根据预设排序顺序的id信息,利用MySQL自定义排序方法,从数据库中查询对应的设备信息,获得预设排序顺序的设备信息,根据预设排序顺序的设备信息生成设备列表,并将所述设备列表发送给前端;其中,所述数据库存放所有的设备信息。
9.一种设备列表实时排序的系统,其特征在于,包括:数据库、缓存、前端和服务器;
所述数据库用于存放所有的设备信息;
所述缓存包括初始缓存和变更缓存,用于存放对应设备的id信息;所述初始缓存包括若干个初始缓存组,一个初始缓存组用于存放具有同一种设备状态的设备的id信息;所述变更缓存包括若干个变更缓存组,一个变更缓存组用于存放具有同一种设备状态的设备的id信息;
所述前端用于接收生成的设备列表;
所述服务器用于根据web上各设备的设备状态事件,更新初始缓存和变更缓存;
当接收到用户对目标设备的查看指令时,根据预设排序顺序,依次获取每个所述初始缓存组和所述变更缓存组中的id信息,获得预设排序顺序的id信息,根据预设排序顺序的id信息,获取数据库中对应的设备信息生成设备列表,并将所述设备列表发送给前端。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如权利要求1至4中任意一项所述的一种设备列表实时排序的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211219214.9A CN115292341B (zh) | 2022-10-08 | 2022-10-08 | 一种设备列表实时排序的方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211219214.9A CN115292341B (zh) | 2022-10-08 | 2022-10-08 | 一种设备列表实时排序的方法、装置、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115292341A true CN115292341A (zh) | 2022-11-04 |
CN115292341B CN115292341B (zh) | 2022-12-27 |
Family
ID=83834606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211219214.9A Active CN115292341B (zh) | 2022-10-08 | 2022-10-08 | 一种设备列表实时排序的方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115292341B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399785A (zh) * | 2008-10-16 | 2009-04-01 | 腾讯科技(深圳)有限公司 | Im平台好友列表展现系统及展现方法 |
US20130085844A1 (en) * | 2011-10-04 | 2013-04-04 | Microsoft Corporation | Social ranking for online commerce sellers |
CN103095556A (zh) * | 2012-08-29 | 2013-05-08 | 五八同城信息技术有限公司 | 一种基于即时通信的列表刷新方法和装置 |
CN105471707A (zh) * | 2015-11-19 | 2016-04-06 | 北京梅泰诺通信技术股份有限公司 | 好友列表排序方法及系统 |
CN111478965A (zh) * | 2020-04-07 | 2020-07-31 | 四川虹美智能科技有限公司 | 设备影子的处理方法、装置和系统 |
CN113360783A (zh) * | 2021-06-21 | 2021-09-07 | 上海哔哩哔哩科技有限公司 | 用户在线列表更新方法、装置及计算机设备 |
-
2022
- 2022-10-08 CN CN202211219214.9A patent/CN115292341B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399785A (zh) * | 2008-10-16 | 2009-04-01 | 腾讯科技(深圳)有限公司 | Im平台好友列表展现系统及展现方法 |
US20130085844A1 (en) * | 2011-10-04 | 2013-04-04 | Microsoft Corporation | Social ranking for online commerce sellers |
CN103095556A (zh) * | 2012-08-29 | 2013-05-08 | 五八同城信息技术有限公司 | 一种基于即时通信的列表刷新方法和装置 |
CN105471707A (zh) * | 2015-11-19 | 2016-04-06 | 北京梅泰诺通信技术股份有限公司 | 好友列表排序方法及系统 |
CN111478965A (zh) * | 2020-04-07 | 2020-07-31 | 四川虹美智能科技有限公司 | 设备影子的处理方法、装置和系统 |
CN113360783A (zh) * | 2021-06-21 | 2021-09-07 | 上海哔哩哔哩科技有限公司 | 用户在线列表更新方法、装置及计算机设备 |
Non-Patent Citations (2)
Title |
---|
PREETI MUDLIAR ET AL.: "Offline Strangers, Online Friends: Bridging Classroom Gender Segregation with WhatsApp", 《PROCEEDINGS OF THE 33RD ANNUAL ACM CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS》 * |
卢菁等: "融合多特征的跨社交网络用户在线识别方法研究", 《小型微型计算机系统》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115292341B (zh) | 2022-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111208798B (zh) | 机器人的测试方法、装置、电子设备及存储介质 | |
CN109117209B (zh) | 序列化和反序列化方法及装置 | |
CN108365967B (zh) | 动态配置通讯参数的方法、系统、终端及计算机可读存储介质 | |
CN108628898B (zh) | 数据入库的方法、装置和设备 | |
CN107742066B (zh) | 账号权限配置方法、装置、终端设备与计算机存储介质 | |
CN111367870A (zh) | 一种绘本共享方法、装置和系统 | |
CN109213774B (zh) | 数据的存储方法及装置、存储介质、终端 | |
CN114465998A (zh) | 多设备的文件传输方法、装置、终端设备及可读存储介质 | |
CN112996020A (zh) | 一种基于蓝牙的自动化测试方法、装置及蓝牙测试终端 | |
CN110619204A (zh) | 一种邀请码生成方法、装置、终端设备及存储介质 | |
CN115292341B (zh) | 一种设备列表实时排序的方法、装置、系统及存储介质 | |
CN114253920A (zh) | 一种交易重新排序方法、装置、设备及可读存储介质 | |
CN105069639A (zh) | 农产品质量追溯方法及装置 | |
CN111191161A (zh) | 一种页面展示方法、存储介质、电子设备及系统 | |
CN112947907B (zh) | 一种创建代码分支的方法 | |
CN112052753A (zh) | 一种规格防错识别方法、装置、终端设备及存储介质 | |
CN107729577B (zh) | 一种基于多维哈希表的数据查找方法、终端设备及存储介质 | |
CN115543936A (zh) | 一种模型文件的批量构建方法、装置、设备及存储介质 | |
CN109697569A (zh) | 一种定义工作流的方法及系统 | |
CN110806874A (zh) | 一种直播间配置文件的解析方法、存储介质、电子设备及系统 | |
CN111258733B (zh) | 一种嵌入式os任务调度方法、装置、终端设备及存储介质 | |
CN113760237A (zh) | 编译地址的更新方法、装置、终端设备及可读存储介质 | |
CN104852986A (zh) | 一种新增功能的提供方法和设备 | |
CN115167728A (zh) | 菜单栏合并及显示方法、装置及计算机可读存储介质 | |
CN114662689A (zh) | 一种神经网络的剪枝方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: No. 56 Nanli East Road, Shiqi Town, Panyu District, Guangzhou City, Guangdong Province, 510000 Patentee after: Guangdong Baolun Electronics Co.,Ltd. Address before: No.19 Chuangyuan Road, Zhongcun street, Panyu District, Guangzhou, Guangdong 510000 Patentee before: GUANGZHOU ITC ELECTRONIC TECHNOLOGY Co.,Ltd. |
|
CP03 | Change of name, title or address |