开发者学堂课程干货总结——Spring Cloud微服务架构设计与开发实战(十二)

哈喽各位同学们大家好呀,今天是开发者学院中课程“Spring Cloud微服务架构设计与开发实战”的章节二的为什么选择Java Spring Cloud”干货总结~是一起学习新课程吧!

课程链接以及图谱地址小编已经为大家指路了,搭配学习效果更佳????

课程名称:为什么选择Java Spring Cloud

课程地址:https://developer.aliyun.com/learning/course/60/detail/1083

图谱名称:Alibaba Java 技术图谱

图谱地址:https://developer.aliyun.com/graph/java


为什么选择Java Spring Cloud

、Spring cloud 的使用现状  

我们这节课继续讲解Spring cloud的微服务架构设计,在上节课已经要求大家去安装Spring cloud的开发工具和环境。这节课我们来讲一下选择Spring cloud的一个原因,就是告诉大家的我们为什么要选Spring cloud。我们前面已经强调过多次,Spring cloud它是出现最早并且生态最完善的这样的一套微服务架构的解决方案,它不仅仅是一个框架,它是一系列框架。 

开发者学堂课程干货总结——Spring Cloud微服务架构设计与开发实战(十二) 

现在的话大家能看到的Spring cloud官网,我们整个的框架体系达到数10个应该超过30个以上。大家应该了解过Spring cloud,实际是奈飞公司内部实践的一套微服务架构的逻辑框架,然后贡献给社区2014年开源在之前已经经过很长时间的落地实践。它在社区里面贡献出来以后,是对整个的一个微服务架构的发展做出了巨大贡献,许多公司使用Spring cloud做微服务架构的一个落地和开发工作 

这里面我们选Spring cloud很重要的一个原因,就是因为它非常的成熟,非常的完善,并且也是非常的流行使用范围最广泛。这里面使用的公司很多,我们在现在能看到的这些,头部互联公司里面几乎都有Spring cloud微服务架构的这种项目 

开发者学堂课程干货总结——Spring Cloud微服务架构设计与开发实战(十二) 

 

 

Spring cloud的优势 

无论是在国内还是在国外,基本上都是首当其冲是属于排名第一的微服务架构的整套解决方案,其他的语言一般的微服务架构的方案的是仿Spring cloud但是还不够完善,像公语言、或者C#都有后续的一些仿制,但是我们在生态上都是有所欠缺其它语言的话本身语法上可能是比java语言更好开发,工具可能更好用一点,但是在这个企业级架构实际上 Java是没有对手的, Java强在生态、架构这一块,这一点是Java它最大的一个优势 

开发者学堂课程干货总结——Spring Cloud微服务架构设计与开发实战(十二) 

当然我们说实际上公语言作为后起之秀,也有自己的一些设计方面的一些优点。比如说他有携程的概念,已经把微服、现成的概念进一步进行封装。当然后面改进版本的这种 Java的详细编程,实际在吞吐量这一块的话性能有大幅提升。 

另外一个问题,技术选型很重要一点,作为技术专家或者项目负责人,架构师选一个框架能解决问题,还要考虑一个框架的成熟度、社区是不是完善文档是不是完善、好不好招人。如果是选择这个框架基本找不到人用,这个就要考虑一个研发成本,自己掉坑踩坑的一个成本,公司是不是允许,所以这里面的大家也要稍微注意一下。 

 

三、学会Spring cloud对就业的好处 

Spring cloud目前在国内的这种头部互联网公司,不光是BAT了,其他这些大公司的招聘,基本上 Spring cloud都是作为技术专家和架构师招聘的一个必备要求,可能很多同学的话过段时间要换工作,所以你要花时间去准备一下这些知识 

这些知识咱们在前面几节课里给大家大量讲了一些我们做微服务架构的关键的面试题、拆分原则,微服架构哪些设计模式。我们今天讲这些落地的话,告诉大家如何通过具体的框架去开发微服务,怎么样去把微服务架构搭建起来,并且进行落地实践。这里面咱们需要架构师或者技术专家一定要能力上一定能够做到了这样的一个很重要的考量的标准。 

之前我们提到过,很多公司大家可能遇到过这种所谓的架构师或者技术专家,什么技术架构都懂,但是自己你让他去配一个框架,它框架都不会用,开发工具都不会配。 在座的各位一定要能够做既懂理论又懂实践这样的一个架构师,叫真专家、真架构师而不是伪专家,只会吹牛逼的这种是非常招人烦的。 

但我们希望各位的能力的话能够匹配自己的岗位,目前无论在国外还是在国内,实际上十分可靠的公司是非常多。虽然有些公司以某些语言为主,但是咱们也说一个问题,很多公司它其实是并没有这种技术实力,绝大部分公司没有这种技术实力自己去搞研发的,比如你自己做一套微服务框架出来,成本非常高。因为绝大部分公司都是在中国互联网公司里面,主要都是业务驱动,大家看这些公司主要关注业务,比如说怎么样去把做电商平台,怎么样做个游戏平台,怎么做个社交平台,同质化的东西很多,主要靠运营。怎么把这个产品做大,做强用户量做起来,交易额做起来,然后上市圈一笔钱赚一把,基本上都这个套路。 

国内的这些大银行或者这种金融公司,像平安做的不错。像我之前也去平安、中国银行、中国银联、花旗银行做过这种架构的分享的课程,大家也可以看一下,这里面比较有意思。比较注重技术的这些金融证券公司银行,也是在紧跟时代的潮流,当然我们说现在这些公司基本上也是以Java为主。互联公司比如滴滴、美团、四通一达,这些也都是典型的代表,这都是基本上也都是Java技术架构为主。 

说明一个问题,在中国公司里面阿里可能做创新做的还好一点。他有达摩院招了一批科学家去研究各种新的技术,但是实际对于小互联网公司来说生存都是问题。所以基本上用成熟的方案是最好的选择。避免公司踩坑,前面有人带路已经把路给踩通了,比如奈飞。阿里巴巴已经把技术架构方案给验证过了,并且完全是能够满足我们当前的这种业务架构的需要,直接参考它来做这是最好的。并且像阿里开展了很多框架,而且是它的架构方案的话也会在网上进行分享,大家也能看到很多这种文章,包括一些技术大会的讲座。 

当然另外一个就是我们选Spring cloud的原因就是Spring cloud本身做微服务架构生态非常完善。提供的微服务开发框架是超过35个以上,有一系列框架对,对接不同的数据源。包括Spring bottle也非常好用,简化了整个开发过程但是另外一点也稍微注意一下,作为一个Java开发者,有些人是用框架很熟,不懂底层。尤其是新入行的一些成员可能会被Spring bottle给迷惑住 

后面的开发企业越来越简单封装的越来越好,很多人就不懂底层原理了,需要稍微注意一下。在座的各位花时间可以抽空研究一下底层原理。Spring cloud是植根于Spring平台之上,并且可以很好的和一些Spring cloud框架进行集成,我们可以快速的去落地我们微服务架构的一个方案 

大家在搭建微服务过程中,前面已经强调很多次,维护结构本身的坑比较多,或者叫挑战性问题比较多,架构师的职责是非常重的。之前的话,大家很容易就说自己是一个架构师。比如我会设计一个三层,或者设计一个四层,打个安全卡的集群,我就认为我是个架构师,在一个公司里面就可以混得很好。 

但是咱们讲一个问题,你现在吹自己是架构师,微服架构师的话,在这里面就有点麻烦了。前面已经讨论过很多次了,很多公司都有这种就声称自己技术很牛逼,或者声称自己是技术非常厉害的人,但是你让他写代码或者让他自己去搭一套框架,他基本上搭不出来。有些只是会画大饼,这种其实是比较遭人反感。 

微服架构师一般人不敢随便说,很多原因就是因为他知识点太多了,容易说错,你说你是微服架构,我就问其中那个框架你是怎么用的,你解释不出来,你这就丢人了,所以现在的话大家也可以看到在技术圈里面装逼的话是不轻易装大数据架构师,也不轻易装微服务架构师,因为这两个体系都足够复杂,这也是比较逗的一个现象,当然你说你是一个普通的Java架构师,这就不好衡量你是一个3层架构师,还是一个4层架构师,那就不好说了,所以如果你说你是微服架构师的话,我就问一下其中的某一个点你是怎么做的,怎么解决这个问题,那就不一样。衡量的难度一下尺度就上来了,我们说是这对架构师来说能力要求是上了几个台阶,而不是一个台阶。微服务架构里面,拆分以后有许多的问题,列入应用、服务注册发现等这种单点问题。 

在昨天我们装的工具基础上,开始搭建微服务架构,我们先来以注册中心为例,大家先把注册中心给搭建起来,在讲为什么选十分架构的时候,也把理由充分给电压进行了一些讲解,主要还是为了后面的学习。另外就是大家的以后在汇报微服务架构的技术选型是不是可以和领导讲得比较全面透彻,这也是给大家做了这样一个总结性的第二阶段的那一刻。 

咱们下节课来讲,数字中心的落地和实践由大家去写代码,我们希望大家是属于能够懂理论,又能够进行时间架构设计落地的这样的一个名副其实的架构师。 

上一篇:《Effective C#》读书笔记——条目1:使用属性而不是可访问的数据成员


下一篇:Java的激荡发展史。一部激情昂扬的血泪史。技术的发展离不开商业的追逐,商业利益的追逐诞生更多的技术