Spring Cloud

nacos注册中心和配置中心

无人久伴 提交于 2021-02-17 21:49:06
pom: <!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-starter-alibaba-nacos-discovery 注册中心依赖--> < dependency > < groupId > com.alibaba.cloud </ groupId > < artifactId > spring-cloud-starter-alibaba-nacos-discovery </ artifactId > < version > 2.2.1.RELEASE </ version > </ dependency > <!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-starter-alibaba-nacos-discovery 配置中心依赖--> < dependency > < groupId > com.alibaba.cloud </ groupId > < artifactId > spring-cloud-starter-alibaba-nacos-config </ artifactId > < version > 2.2.1.RELEASE </ version > </

Consul替代Eureka

感情迁移 提交于 2021-02-17 21:19:01
原文:https://www.cnblogs.com/ityouknow/p/9340591.html 在上个月我们知道 Eureka 2.X 遇到困难停止开发了,但其实对国内的用户影响甚小,一方面国内大都使用的是 Eureka 1.X 系列,另一方面 Spring Cloud 支持很多服务发现的软件,Eureka 只是其中之一,下面是 Spring Cloud 支持的服务发现软件以及特性对比: Feature euerka Consul zookeeper etcd 服务健康检查 可配支持 服务状态,内存,硬盘等 (弱)长连接,keepalive 连接心跳 多数据中心 — 支持 — — kv 存储服务 — 支持 支持 支持 一致性 — raft paxos raft cap ap ca cp cp 使用接口(多语言能力) http(sidecar) 支持 http 和 dns 客户端 http/grpc watch 支持 支持 long polling/大部分增量 全量/支持long polling 支持 支持 long polling 自身监控 metrics metrics — metrics 安全 — acl /https acl https 支持(弱) spring cloud 集成 已支持 已支持 已支持 已支持 在以上服务发现的软件中,Euerka 和 Consul

国产微服务网关-Soul(真香)

旧街凉风 提交于 2021-02-17 13:13:14
What is the Soul? 一个异步的,高性能的,跨语言的,响应式的API网关。我希望能够有一样东西像灵魂一样,保护您的微服务。参考了Kong,Spring-Cloud-Gateway等优秀的网关后,站在巨人的肩膀上,Soul由此诞生! 是不是很吊的一句话,站在巨人身上那么这些巨人也就变成了矮子。 整体架构如下图所示: 是不是很炫反正我是没看懂 部署单机版 操作在windows环境 安装SoulAdmin souladmin:控制台,负责维护网关的 元数据 、配置等等,并提供给 SoulBootstrap 网关服务 读取。 在mysql数据库中执行下面图中sql,12张表 在浏览器输入 https://yu199195.github.io/jar/soul-admin.jar 回车下载即可,yml文件复制一份在外部启动,用自己的数据库 启动命令:java -jar soul-admin.jar --spring.config.location=xxxxx\application-local.yml 启动成功后 通过日志看到 Soul Admin 启动在 9095 端口。使用浏览器,访问 http://127.0.0.1:9095/ 地址,进入登录页,账号密码分别是:admin 和123456 安装SoulBootstrap SoulBootstrap:网关服务,负责启动网关

Spring Cloud Hystrix 熔断

烂漫一生 提交于 2021-02-17 08:22:53
一、什么是熔断 在一个家庭中有各种各样的家电,我们假设每个家电都没有保险丝,一旦有一天某个家电出现短路,造成整个电路短路然后很有可能就把整个家庭的电器及电路给烧坏了。但如果每个家电入口线路都有一个保险丝(断路器),那么不管那个家电发生短路这个家电的保险丝就会快速熔断(断开电路),从而保护了整个电路及电路上其它的家电的正常运行。 软件行业里面的熔断机制与这个一致,在整个微服务集群中,由于其中一个或者几个微服务出现故障或堵塞,若没有快速的熔断机制,就会造成整个微服务集群的拥堵最终整个微服务出现雪崩被拖死。熔断机制的核心机制就是在确保某个微服务出现故障的时候实现快速熔断(断路)或者服务降级快速失败,避免拥堵。从而保证其它业务其它服务的正常运行。 二、Hystrix 设计原则 防止单个服务的故障,耗尽整个系统服务的容器(比如tomcat)的线程资源,避免分布式环境里大量级联失败。通过第三方客户端访问(通常是通过网络)依赖服务出现失败、拒绝、超时或短路时执行回退逻辑。 用快速失败代替排队(每个依赖服务维护一个小的线程池或信号量,当线程池满或信号量满,会立即拒绝服务而不会排队等待)和优雅的服务降级;当依赖服务失效后又恢复正常,快速恢复。 提供接近实时的监控和警报,从而能够快速发现故障和修复。监控信息包括请求成功,失败(客户端抛出的异常),超时和线程拒绝。如果访问依赖服务的错误百分比超过阈值

Kubernetes 1.15版本正式发布,kubeadm喜提新logo

╄→尐↘猪︶ㄣ 提交于 2021-02-17 07:12:23
导读: 美国时间 2019 年 6 月 19 日,Kubernetes发布了今年第二大版本 Kubernetes 1.15 ,此次版本共更新加强了 25 个相关功能,其中 2 个升级到 GA 版本, 13 个升级到 beta 版, 10 个 alpha 版。 1.15 版本的发布主题是:持续改进和可扩展性。 持续改进: 项目可持续性不仅仅与功能有关。许多SIG一直致力于提高测试覆盖率,确保基础功能持续可靠,核心功能持续稳定。 可扩展性: Kubernetes 社区一直致力于支持可扩展性。 1.15 版本发布周期中包含更多关于CRD和 API Machinery 的工作。此次周期中的大多数增强功能来自SIG API Machinery及相关领域。 更深入了解此次版本主要功能: 围绕核心 Kubernetes API的可扩展性 在 CRD 新开发的主题是围绕者数据一致性和原生性。用户考虑重点不会放在是CustomResource还是使用 Golang 原生资源。在下个版本或后续版本中,将会升级 CRD 和 admissio webhooks 到 GA 版本。 在这个方向上,社区重新考虑了CRD中基于 OpenAPI 的验证模式,并且从 1.15 开始,我们根据称为“ structural schema ”的限制检查每个资源

12张手绘图,终于搞懂了微服务架构

萝らか妹 提交于 2021-02-17 07:08:43
作者 | tengshe789 来 源 | https://juejin.im/post/5c0ba2bef265da614d08fefe 微服务的概念最早在 2012 年提出,在 Martin Fowler 的大力推广下,微服务在 2014 年后得到了大力发展。 今天我们通过一组手绘图来梳理下微服务的核心架构。 什么是微服务? 微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下: 就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise definition of this architectural style ) 。 但通常在其而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行独立的自己的进程中,服务之间互相协调、互相配合,为用户提供最终价值。 服务之间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API ) 。 每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。 另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建,可以有一个非常轻量级的集中式管理来协调这些服务。 可以使用不同的语言来编写服务,也可以使用不同的数据存储。

这12张手绘图,让我彻底搞懂了微服务架构!

放肆的年华 提交于 2021-02-17 07:08:10
作者:tengshe789 juejin.im/post/5c0ba2bef265da614d08fefe 微服务的概念最早在 2012 年提出,在 Martin Fowler 的大力推广下,微服务在 2014 年后得到了大力发展。 今天我们通过一组手绘图来梳理下微服务的核心架构。 什么是微服务? 微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下: 就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise definition of this architectural style ) 。 但通常在其而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行独立的自己的进程中,服务之间互相协调、互相配合,为用户提供最终价值。 服务之间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API ) 。 每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。 另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建,可以有一个非常轻量级的集中式管理来协调这些服务。 可以使用不同的语言来编写服务,也可以使用不同的数据存储。 根据马丁.福勒的描述

这12张手绘图,让我彻底搞懂了微服务架构!

…衆ロ難τιáo~ 提交于 2021-02-17 07:07:38
点击上方 “ Java专栏 ”, 选择“置顶或者星标” 第一时间阅读精彩文章! 1、☞ 程序员进阶必备资源免费送「21种技术方向!」 点击查看☜ 2、☞ 《Java面试手册》.PDF 点击查看 作者:tengshe789 juejin.im/post/5c0ba2bef265da614d08fefe 微服务的概念最早在 2012 年提出,在 Martin Fowler 的大力推广下,微服务在 2014 年后得到了大力发展。 今天我们通过一组手绘图来梳理下微服务的核心架构。 什么是微服务? 微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下: 就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise definition of this architectural style ) 。 但通常在其而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行独立的自己的进程中,服务之间互相协调、互相配合,为用户提供最终价值。 服务之间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API ) 。 每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。 另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言

java8的parallelStream提升数倍查询效率

≡放荡痞女 提交于 2021-02-16 08:12:17
点击上方 蓝色字体 ,选择“标星公众号” 优质文章,第一时间送达 作 者 | 我恰芙蓉王 来源 | cnblogs.com/-tang/p/13283216.html 业务场景 在很多项目中,都有类似数据汇总的业务场景,查询今日注册会员数,在线会员数,订单总金额,支出总金额等。。。这些业务通常都不是存在同一张表中,我们需要依次查询出来然后封装成所需要的对象返回给前端。那么在此过程中,就可以把这个接口中“大任务”拆分成N个小任务,异步执行这些小任务,等到最后一个小任务执行完,把所有任务的执行结果封装到返回结果中,统一返回到前端展示。 同 步执行 首先看看同步执行的代码 public class Test { @Data @NoArgsConstructor @AllArgsConstructor @ToString class Result { /** * 在线人数 */ Integer onlineUser; /** * 注册人数 */ Integer registered; /** * 订单总额 */ BigDecimal orderAmount; /** * 支出总额 */ BigDecimal outlayAmount; } @org.junit. Test public void collect ( ) { System. out .println( "数据汇总开始" );

面试必问的SpringCloud实现原理图

别说谁变了你拦得住时间么 提交于 2021-02-15 04:04:46
引言 面试中面试官喜欢问组件的实现原理,尤其是常用技术,我们平时使用了SpringCloud还需要了解它的实现原理,这样不仅起到举一反三的作用,还能帮助轻松应对各种问题及有针对的进行扩展。 以下是 课程讲到的部分原理附图,现在免费开放给大家,让大家轻松应对原理面试题。 服务注册发现组件Eureka工作原理 服务网关组件Zuul工作原理 跨域时序图 Eureka与Ribbon整合工作原理 解决分布式一致性 级联故障流程 断路器组件Hystrix工作原理 分布式追踪Sleuth工作原理 SpringBoot自动配置工作原理 是一门基于SpringCloud技术栈的微服务真实实战课程,里面涵盖了SpringCloud的大部分技术点,对SpringCloud技术进行深度探险,不仅学习到SpringCloud组件的实现原理,学完以后还可以将该项目完美包装到你的简历中,让您在众多竞争者脱颖而出。 来源: oschina 链接: https://my.oschina.net/u/4358782/blog/3884865