本发明涉及数据存储,具体涉及一种基于微服务的数据查询和更新方法和系统。
背景技术:
1、随着互联网应用的不断深入与推广,互联网提供的服务面临的压力与强度越来越大,如何提供稳定、高效的服务成为了互联网服务搭建的重点,随着微服务模式的兴起,互联网服务由单体模式主键转化为了微服务的结构模式,微服务模式有效解决了服务横向扩容的问题,但对提高运行效率还主要依赖数据库(关系型与非关系型),如何提高服务节点的利用率成为了互联网模式研发的主要关注点。
技术实现思路
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、本发明提供的一种基于微服务的数据查询和更新方法和系统,利用二级缓存作为常用固定数据的存储介质,对于微服务架构模式,可有效节省数据库链接,并大大提高数据查询与更新处理效率;数据信息随着服务的启动加载至服务内存中;利用消息广播的模式,可实现跨机房、多链路、多服务节点同时同步更新的效果,保证数据的一致性。
1.一种基于微服务的数据查询和更新方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,通过微服务建立多个数据库的连接,包括:
3.根据权利要求1所述的方法,其特征在于,所述微服务读取所述多个数据库的数据,包括:
4.根据权利要求1所述的方法,其特征在于,所述微服务在接收到数据库的更新消息后,微服务的服务节点触发更新机制,重新建立缓存结构,包括:
5.根据权利要求1或4所述的方法,其特征在于,更新内存中的缓存结构,包括:
6.一种基于微服务的数据查询和更新系统,其特征在于,包括:
7.根据权利要求6所述的系统,其特征在于,连接建立模块,包括:
8.根据权利要求6所述的系统,其特征在于,数据缓存模块,包括:
9.根据权利要求6所述的系统,其特征在于,更新模块,包括:
10.根据权利要求6或9所述的系统,其特征在于,更新模块,包括: