跟着狂神聊聊现在和未来

跟着狂神聊聊现在和未来

回顾以前,架构

架构--->解耦
开发框架
	Spring
		IOC		AOP
			IOC :控制反转
				约泡:
				泡温泉,泡茶..... 泡友
				附近的人,打招呼。加微信,聊天,天天聊,--->约泡
				浴场(容器) :温泉,茶庄,泡友
				直接进温泉,就有人和你- -起了!
			
				原来我们都是自己一步步操作,现在交给容器了!我们需要什么就去拿就可以了
			AOP :切面(本质,动态代理)
				为了解决什么?不影响业务本来的情况下,实现动态增加功能,大量应用在日志,事务...等等方面
		Spring是一个轻量级的Java开源框架, 容器
目的:解决企业开发的复杂性问题
		Spring是春天,觉得他是春天,也十分复杂,配置文件!
		
	SpringBoot
		SpringBoot并不是新东西,就是Spri ng的升级版!
		新一代JavaEE的开发标准,开箱即用! ->拿过来就可以用!
		它自动帮我们配置了非常多的东西,我们拿来即用!
		
		特性:约定大于配置
随着公司体系越来越大,用户越来越多!
微服务架构--->新架构

	模块化,功能化!
	用户,支付,签到,娱乐,..... ;
	人多余多: -台服务器解决不了;在增加服务器!
横向
	假设A服务器占用98%资源,B服务器只占用了10%--负载均衡;
	
	将原来的整体项目,分成模块化,用户就是一个单独的项目,签到也是- -个单独的项目,项目和项目之前需要通信,如何通信?
	用户非常多,而签到十分少!给用户多- -点服务器 ,给签到少 - -点服务器!


微服务架构问题?
	分布式架构会遇到的四个核心问题?
	1.这么多服务,客户端该如何去访问?
	2.这么多服务,服务之间如何进行通信?
	3.这么多服务,如何治理呢?
	4.服务挂了,怎么办?

解决方案:
	SpringCloud,是一套生态,就是来解决以上分布式架构的4个问题
	想使用SpringCloud,必须要掌握SpringBoot,因为SpringCloud是基于SpringBoot;
	1.Spring Cloud NetFlix,出来了一套解决方案! -站式解决方案。我们都可以直接去这里拿?
		Api网关,zuu1组件
		Feign --> HttpClient ---> HTTP的通信方式,同步并阻塞
		服务注册与发现,Eureka
		熔断机制,Hystrix
		
		2018年年底,NetFlix宣布无限期停止维护。生态不再维护,就会脱节。

	2. Apache Dubbo zookeeper, 第二套解决系统
		API :没有!要么找第三方组件,要么自己实现
		Dubbo是一个高性能的基于Java实现的RPC通信框架! 
		服务注册与发现,zookeeper:动物园管理者(Hadoop , Hive)
		没有:借助了Hystrix
		
		不完善,Dubbo.
	3. SpringCloud Alibaba - 站式解决方案!

目前,又提出了一种方案:
	服务网格:下一代微服务标准,Server Mesh
	代表解决方案: istio (你们未来可能需要掌握! )
万变不离其宗,-通百通!
	1.API网关,服务路由
	2.HTTP, RPC框架,异步调用
	3.服务注册与发现,高可用!
	4.熔断机制,服务降级

本质问题:网络是不可靠的

你可能感兴趣的:(跟着狂神聊聊现在和未来)