Java生态的总结
三层架构 + MVC
架构的目的:解耦
开发框架
1.Spring
IOC AOP
IOC:控制反转
AOP:切面,动态代理
为了解决不影响业务本来的情况下,实现动态增加功能,大量应用在日志,事务等。
Spring是一个轻量级的Java开源框架,容器
目的:解决企业开发的复杂性问题
Spring是春天,但也十分复杂,配置文件相当繁琐!!
2.SpringBoot
SpringBoot并不是一个新东西,就是Spring的升级版!
新一代JavaEE的开发标准,开箱即用!
它自动帮我们配置了非常多的东西,我们拿来即用!
特性:约定大于配置
3.微服务架构(新的架构)
模块化、功能化!
微服务架构问题:
分布式架构会遇到的四个核心问题?
1.这么多服务,客户端如何去访问?
2.这么多服务,服务之间如何通信?
3.这么多服务,如何治理?
4.服务器宕机,怎么办?
解决方案:
SpringCloud 是一套生态,就是来解决以上分布式架构的四个问题
想使用SpringCloud,必须要掌握SpringBoot,因为SpringCloud式基于SpringBoot;
1. Spring Cloud NetFlix,出来了第一套解决方案,一站式解决方案。
API网关:zuul组件
Feign-->HttpClient-->Http的通信方式,同步并阻塞
服务注册与发现:Eureka
熔断机制:Hystrix
2018年,NetFlix停止维护。
2. Apache Dubbo zookeeper,第二套解决方案
API:没有!要么找第三方,要么自己实现
Dubbo:高性能的基于java实现的RPC通信框架!
服务注册与发现:zookeeper
熔断机制:没有,借助了Hystrix
3. SpringCloud Alibaba 一站式解决方案
4.目前,又提出一种方案(未来):
服务网格:下一代微服务标准。Server Mesh
代表解决方案:istio
核心解决的问题:
1.API网关,服务路由
2.HTTP,RPC框架,异步调用
3.服务注册与发现,高可用
4.熔断机制,服务降级
解决以上问题的本质:网络不可靠。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战