day44_java_基础巩固

简介: 自己所掌握的基础知识加以巩固和记录!希望大家点赞收藏并能给予鼓励和支持!有任何建议或者帮助也可以来哦!!!虽然有些干货知识很通俗,但也是自己的必经之路i,加油!!!

SpringCloud 是什么?

SpringCloud 是一系列框架的集合,集成 SpringBoot,提供很多优秀服务:服务发现

和注册,统一配置中心, 负载均衡,网关, 熔断器等的一个微服务治理框架.

SpringCloud 的优势?

因为 SpringCloud 源于 Spring,所以它的质量,稳定性,持续性都是可以保证的。

SpringCloiud 天热支持 SpringBoot 框架,就可以提高开发效率,能够实现需求。

SpringCloud 更新很快,后期支持很给力。

SpringCloud 可以用来开发微服务。

SpringCloud 有哪些核心组件?

Eureka: 注册中心, 服务注册和发现

Ribbon: 负载均衡, 实现服务调用的负载均衡

Hystrix: 熔断器

Feign: 远程调用

Zuul: 网关

Spring Cloud Config: 配置中心

(1)Eureka

提供服务注册和发现, 是注册中心. 有两个组件: Eureka 服务端和 Eureka 客户端

Eureka 服务端: 作为服务的注册中心, 用来提供服务注册, 支持集群部署.

Eureka 客户端: 是一个 java 客户端, 将服务注册到服务端, 同事将服务端的信息缓存

到本地, 客户端和服务端定时交互.

Eureka-Server:就是服务注册中心(可以是一个集群),对外暴露自己的地址。

提供者:启动后向 Eureka 注册自己信息(地址,服务名称等),并且定期进行服务续

消费者:服务调用方,会定期去 Eureka 拉取服务列表,然后使用负载均衡算法选出一

个服务进行调用。

心跳(续约):提供者定期通过 http 方式向 Eureka 刷新自己的状态

2. 服务下线、失效剔除和自我保护

服务的注册和发现都是可控制的,可以关闭也可以开启。默认都是开启

注册后需要心跳,心跳周期默认 30 秒一次,超过 90 秒没发心跳认为宕机

服务拉取默认 30 秒拉取一次.

Eureka 每个 60 秒会剔除标记为宕机的服务

Eureka 会有自我保护,当心跳失败比例超过阈值(默认 85%),那么开启自我保护,不

再剔除服务。

Eureka 高可用就是多台 Eureka 互相注册在对方上.

(2)Ribbon

Ribbon 是 Netflix 发布的云中服务开源项目. 给客户端提供负载均衡, 也就是说

Ribbon 是作用在消费者方的.

简单来说, 它是一个客户端负载均衡器, 它会自动通过某种算法去分配你要连接的机

器.

SpringCloud 认为 Ribbon 这种功能很好, 就对它进行了封装, 从而完成负载均衡.

Ribbon 默认负责均衡策略是轮询策略.

(3)Hystrix 熔断器

有时候可能是网络问题, 一些其它问题, 导致代码无法正常运行, 这是服务就挂了, 崩

溃了. 熔断器就是为了解决无法正常访问服务的时, 提供的一种解决方案.

解决因为一个服务崩溃而引起的一系列问题, 使问题只局限于这个服务中,不会影响其

他服务.

Hystrix 提供了两种功能, 一种是服务降级, 一种是服务熔断.

1. 服务降级原理

Hystrix 为每个服务分配了小的线程池, 当用户发请求过来, 会通过线程池创建线

程来执行任务, 当创建的线程池已满或者请求超时(这里和多线程线程池不一样,不

存在任务队列), 则启动服务降级功能.

降级指的请求故障时, 不会阻塞, 会返回一个友好提示(可以自定义, 例如网站维

护中请稍后重试), 也就是说不会影响其他服务的运行.

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
10月前
|
前端开发 开发工具 开发者
避免使用!important 关键字带来潜在问题
【10月更文挑战第22天】通过以上对避免使用!important 关键字带来潜在问题的详细探讨,我们对其有了更深入的认识。在实际开发中,我们要时刻警惕!important 的使用可能带来的风险,并采取有效的措施加以避免。通过合理的设计、测试和规范,我们可以确保样式的稳定性和可维护性,避免因!important 而引发的各种问题。
306 62
|
5月前
|
运维 算法 安全
OSI 数据链路层详解
本文介绍了MAC地址的基本概念、结构及其在网络通信中的作用,同时详细解析了以太网帧的组成部分,包括前导码、目的地址、源地址、类型、数据和FCS等字段的功能与意义。此外,还阐述了CSMA/CD原理,涵盖载波监听、多路访问、冲突检测及冲突处理机制,帮助理解以太网在共享介质环境下的数据传输过程。
169 4
|
11月前
|
搜索推荐
LangChain-10 Agents langchainhub 共享的提示词Prompt
LangChain-10 Agents langchainhub 共享的提示词Prompt
167 3
|
11月前
|
XML 移动开发 前端开发
Canvas和SVG的区别
Canvas和SVG的区别
453 0
|
域名解析 Kubernetes 容器
【kubernetes】安装 krew 管理kubectl 插件
【kubernetes】安装 krew 管理kubectl 插件
729 2
【kubernetes】安装 krew 管理kubectl 插件
|
机器学习/深度学习 自然语言处理 机器人
「随笔」如何评价GPT-4o
GPT-4o,OpenAI的最新力作,以其巨大模型规模、海量训练数据及先进技术,刷新文本生成与理解的界限。它生成的文本更自然,理解力更深,支持多语言,能理解长文本上下文并整合广泛知识。同时,GPT系列展现创新与实用性,未来潜力无限,但也面临准确性、偏见等挑战。
183 0
|
消息中间件 NoSQL 安全
Redis突然报错 NOAUTH Authentication required
2016年年底有个项目需要用到redis,当时比较忙没有在新机器安装redis,就把我博客那台服务器上的redis地址给了技术的同事。第二天开发的同事告诉我redis连不上了,提示NOAUTH Authentication required,看了redis配置文件并没有设置密码,而且前一天使用的时候正常,我这台服务器也不会有人动。当时并没有深入分析,重启了redis后可以正常使用了。
1141 0
Redis突然报错 NOAUTH Authentication required
|
负载均衡
webclient负载均衡踩坑
webclient负载均衡踩坑
361 0
|
机器学习/深度学习 人工智能 算法
一文读懂目标检测AI算法:R-CNN,faster R-CNN,yolo,SSD,yoloV2
## 1 引言 深度学习目前已经应用到了各个领域,应用场景大体分为三类:物体识别,目标检测,自然语言处理。上文我们对物体识别领域的技术方案,也就是CNN进行了详细的分析,对LeNet-5 AlexNet VGG Inception ResNet MobileNet等各种优秀的模型框架有了深入理解。本文着重与分析目标检测领域的深度学习方法,对其中的经典模型框架进行深入分析。 目标检测可以
19245 0
|
机器学习/深度学习 缓存 数据可视化
点击jupyter notebook 没有反应,不会自动跳转浏览器,已解决。
点击jupyter notebook 没有反应,不会自动跳转浏览器,已解决。
476 0