【大数据】事件驱动的微服务架构
最近小编一直在接微服务转型的咨询Case,有些企业已经开始着手了,但中途发现从各个微服务的数据库中做跨表查询是个大问题,尤其当数据库自动分表存储之后。其实从数据库设计的角度,独立的数据库固然可以更好地解耦微服务架构,但很难保证数据的一致性,而且每个微服务治理团队需要维护各自的数据库,例如备份、升级等等。相较而言,共享数据库可以统一所有微服务的录入标准,不会带来数据一致性问题。 今天我们讨论的不是这个,回到我们设计数据库的初衷,由于没法记录每一笔交易,我们需要一个数据库来记录数据的当前状态,但现在我们有了大数据平台和分布式的消息总线,我们已经有能力记录每条交易,通过简单的统计算法也可以得到实时的统计数据,那我们还需要数据库么? 小编认为伴随着微服务的应用思维,微服务的数据思维也应该有一个质的提升,作为松耦合的服务,微服务具有以下三个特点:独立部署有自己的数据架构(Schema)数据只能通过自己的微服务API接口访问 回到最初的话题:如果可以将服务的事件全部记录下来,那我们只需要存储事件就行了。 上图是一个微服务的数据存储模型,首先用户通过服务接口(一般是一个web图形界面)从前台交互操作...









