前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学习Spring Boot 2.0 和大数据治理课程,送51CTO定制T恤!

学习Spring Boot 2.0 和大数据治理课程,送51CTO定制T恤!

作者头像
纯洁的微笑
发布2018-07-20 10:29:42
4000
发布2018-07-20 10:29:42
举报
文章被收录于专栏:纯洁的微笑纯洁的微笑

随着微服务架构的落地,人们发现微服务架构虽然改进了开发模式,但同时也引入了一些问题,在这所有的问题中,最重要的也是马上要面临的一个问题就是数据的问题。在微服务架构中我们强调彻底的组件化和服务化,每个微服务都可以独立的部署和投产,其实也就意味着很多的微服务有自己独立的数据库。

整个业务数据被分散在各个子服务之后会带来两个最明显的问题:

1、业务管理系统对数据完整的查询,比如分页查询、多条件查询等,数据被割裂后如何来整合?

2、如何对数据进一步的分析挖掘?这些需求可能需要分析全量的数据,并且在分析时不能影响到当前业务。

从技术方案来讲,我们一般有两种选择来处理这些问题,第一种是在线处理数据,第二种是离线处理数据。

在线处理数据的方案就是按照微服务的标准接口来进行,后端需要哪个系统的数据就去调用某个微服务提供的接口来获取。后端管理平台根据前端的需求去不同的微服务系统去获取数据,然后将返回的数据进行处理后将数据返回。

这种方案有两个弊端:1)一方面微服务数据方需要提供数据接口,一方面数据的使用者需要去写调用方法,并且调用者需要编写大量的代码进行数据处理;2)在对各个微服务进行调取数据时会影响微服务的正常业务处理性能。

离线处理数据方案,就是将业务数据准实时的同步到另外一个数据库中,在同步的过程中进行数据整合处理,以满足业务方对数据的需求,数据同步过来后,再提供另外一个服务接口专业负责对外输出数据信息。

这种方案有两个特点:

1)数据同步方案是关键,技术选型有很多,如何选择切合公司业务的技术方案;

2)离线数据处理对微服务正常业务处理没有影响。

在我以往的工作中两种方案都实施过,个人更倾向于使用第二种方案。

当然如果我们对微服务架构、Spring Boot 、MongoDB 不熟悉的话,可能需要走很多的弯路。错误的技术方案会对后期的微服务落地带来非常大的困扰,增加额外的开发工作量,我自己深有体会,合适的技术方案可以节省60%以上的工作量。

了解 Spring Boot 的同学都知道,Spring Boot 是 Java 领域最优秀的微服务架构落地技术,没有之一。MongoDB 称之为对开发人员最友好的数据库,在大量数据查询下有着良好的性能表现,同时 MongoDB 也是最像关系数据库的 Nosql 数据库,非常方便掌握使用。利用 Spring Boot 2.0、MongoDB 来解决微服务架构下数据治理的问题是最佳选择之一。

当然如果我们对微服务架构、Spring Boot 、MongoDB 不熟悉的话,可能需要走很多的弯路。错误的技术方案会对后期的微服务落地带来非常大的困扰,增加额外的开发工作量,我自己深有体会,合适的技术方案可以节省60%以上的工作量。

为此我特意写了一个专栏《微服务技术架构和大数据治理实战》,讲解微服务架构和大数据治理的技术落地。将工作中实践过最具实战代表性的一些内容整理出来,以 51CTO 专栏的形式来展现。课程内容将站在全局的角度去看待微服务实践和数据分析,讲解微服务架构、Spring Boot、MongoDB、同步方案、数据分析等内容,帮助广大的技术朋友们少走弯路,掌握微服务和数据分析的技术。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-07-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 纯洁的微笑 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档