[发明专利]计算机应用、数据存储方法、微服务和微数据库在审
申请号: | 201710380672.3 | 申请日: | 2017-05-25 |
公开(公告)号: | CN107273440A | 公开(公告)日: | 2017-10-20 |
发明(设计)人: | 商彦磊;乔秀全 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京路浩知识产权代理有限公司11002 | 代理人: | 王莹 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 计算机 应用 数据 存储 方法 微服 数据库 | ||
技术领域
本发明实施例涉及一种通信技术领域,特别是一种计算机应用、数据存储方法、微服务和微数据库。
背景技术
微服务是一些协同工作的小而自治的服务,一个微服务就是一个独立的实体。它可以独立的部署在PAAS(Platform As A Service,平台即服务)上,也可以作为一个操作系统进程存在。
微服务之间通过网络调用进行通信,从而加强了服务之间的隔离性,避免紧耦合,它们可以彼此之间独立进行修改,并且某一个服务的部署不会引起该服务的消费方的变动。
在一个计算机应用中,如果其中一部分需要做性能提升,可以使用性能更好的技术栈来重构和部署这一部分,而不会对其他部分产生影响。微服务可以帮助更快地采用新技术来提高系统的性能。
随着领域驱动设计、持续交付、按需虚拟化、基础设施自动化、大型集群系统这些技术的流行,微服务应运而生。从前在一个单块服务内,随着新功能的增加,代码库会越变越大,以至于选择在什么地方做修改都很困难,而且庞大的单块服务只能作为一个整体进行扩展。即使服务中只有一小部分存在性能问题,也需要对整个单块服务进行修改扩展。而且在有相当数量行代码的单块服务中,即使只修改了一行代码,也需要重新部署整个应用程序才能够发布该变更,导致这种部署的影响很大、风险很高。
在这种背景下,微服务技术体现了它对比以往庞大单块服务的巨大优势。
采用微服务技术来构建部署系统具有上述的优点,但是采用微服务技术也存在以下的缺点:
采用微服务技术来构建部署系统,需要访问数据库数据和数据持久化的微服务需要通过接口读写数据库。
对数据库的部署存在两种情况:1.部署一个共享的数据库,所有微服务均访问读写这个共享的数据库来实现数据持久化;2.每个需要数据持久化的微服务维护一个自己的数据库,该数据库中存储整个系统的数据库的一个副本。
图1为现有技术中计算机应用的共享数据库示意图。
如图1所示,在情况1中,由于所有微服务共享一个数据库,该数据库的内部实现细节是可见的,如果其中某个微服务为了更好的表示数据或者增加可维护性而修改表结构的话,就可能导致其他微服务无法正常访问数据库中的数据,这通常需要做大量的回归测试来保证功能的正确性。其次,所有微服务都和特定类型的数据库绑定,无法实现松耦合。
在情况2中,虽然克服了情况1中所出现的耦合问题,但是却导致了每个微服务维护了一个相当庞大的数据库,整个系统的数据冗余程度过高。而且,同步所有数据库也会产生相当大的资源占用问题。
因此,现有技术中微服务的数据库通常需要做大量的回归测试,造成维护困难的问题,或者各微服务的数据库数据冗余程度过高,同步所有数据库造成的资源浪费的问题。
目前,现有技术还没有相应的方法来实现易于维护且高效利用资源的数据存储方案。
发明内容
针对现有技术的缺陷,本发明实施例提供一种计算机应用、数据存储方法、微服务和微数据库。
一方面,本发明实施例提供一种计算机应用,所述计算机应用由若干个微服务实现,每个微服务包括专属的微数据库,每个微数据库只存储对应微服务功能的数据,不同的微数据库中的数据至少包括一个相同的属性,每个属性仅存在一个主节点,所述主节点为具有所述属性的更新权限的微服务,且存在至少一个从节点,所述从节点为不具有所述属性的更新权限的微服务,其中,所述主节点对该属性进行读数据或更新数据的操作,所述从节点对该属性进行读数据操作。
另一方面,本发明实施例提供一种数据存储方法,所述方法适用于上述的计算机应用,包括:
主节点对主节点的微数据库中属性的记录进行更新操作;
主节点向至少一个从节点发送事件,所述事件包括所述主节点对所述属性的记录进行更新操作,使得所述从节点接收所述事件,根据所述事件,对从节点的微数据库进行同步更新。
另一方面,本发明实施例还提供一种微服务,包括存储器、处理器、总线以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以上方法。
另一方面,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710380672.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能设备数据可视化方法及系统
- 下一篇:一种白车身质量管理方法及系统
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置