SpringCloud实战教程
文章平均质量分 93
Spring Cloud
哪 吒
2022博客之星Top1,现象级专栏 《Java基础教程系列》作者,专注Java硬核干货分享,立志做到Java赛道全网Top N
展开
-
解密Kafka主题的分区策略:提升实时数据处理的关键
理解Kafka主题的分区策略对于构建高性能的消息传递系统至关重要。深入探讨Kafka分区策略的重要性以及如何在分布式消息传递中使用它。Kafka是一个分布式消息传递系统,用于实现高吞吐量的数据流。消息传递系统的核心是主题(Topics),而这些主题可以包含多个分区(Partitions)。分区是Kafka的基本并行处理单位,允许数据并发处理。分区策略定义了消息在主题中如何分配到不同的分区。它决定了消息将被写入哪个分区,以及在消费时如何从不同分区读取消息。原创 2023-11-26 22:12:39 · 2506 阅读 · 20 评论 -
微服务 Spring Cloud 9,RPC框架,客户端和服务端如何建立网络连接?
通信框架,主要解决客户端和服务端如何建立连接、管理连接以及服务端如何处理请求的问题;通信协议,主要解决客户端和服务端采用哪种数据传输协议的问题;序列化和反序列化,主要解决客户端和服务端采用哪种数据编解码的问题。这三个部分就组成了一个完整的RPC调用框架,通信框架提供了基础的通信能力,通信协议描述了通信契约,而序列化和反序列化则用于数据的编/解码。原创 2023-11-23 08:29:58 · 1042 阅读 · 10 评论 -
微服务 Spring Cloud 8,开源RPC框架如何选型?
以上就是我对几种使用最广泛的开源RPC框架的选型建议,也是基于它们目前现状所作出的判断,从长远来看,支持多语言是RPC框架未来的发展趋势。正是基于此判断,各个RPC框架都提供了Sidecar组件来支持多语言平台之间的RPC调用。Dubbo在去年年底又重启了维护,并且宣称要引入Sidecar组件来构建Dubbo Mesh提供多语言支持。Motan也在去年对外开源了其内部的Sidecar组件:Motan-go,目前支持PHP、Java语言之间的相互调用。原创 2023-11-20 09:10:13 · 2210 阅读 · 23 评论 -
微服务 Spring Cloud 7,Nacos配置中心的Pull原理,附源码
华为OD机试 2023B卷题库疯狂收录中,刷题。原创 2023-11-17 07:55:13 · 1229 阅读 · 17 评论 -
微服务 Spring Cloud 6,用了这么多年Docker容器,殊不知你还有这么多弯弯绕
华为OD机试 2023B卷题库疯狂收录中,刷题。原创 2023-11-13 12:48:29 · 1788 阅读 · 15 评论 -
微服务 Spring Cloud 3,如何对微服务进行有效的监控?
服务监控在微服务改造过程中的重要性不言而喻,没有强大的监控能力,改造成微服务架构后,就无法掌控各个不同服务的情况,在遇到调用失败时,如果不能快速发现系统的问题,对于业务来说就是一场灾难。搭建一个服务监控系统,涉及数据采集、数据传输、数据处理、数据展示等多个环节,每个环节都需要根据自己的业务特点选择合适的解决方案。互联网资深技术专家,十多年技术老兵,目前带领多个研发团队,承担架构设计、架构重构、技术团队管理、技术培训等职责;原创 2023-11-06 21:41:38 · 7958 阅读 · 28 评论 -
微服务 Spring Cloud 2,一文讲透微服务核心架构(注册中心、服务通信、服务监控、服务追踪、服务治理)
注册中心可以说是微服务的关键,服务提供者和服务消费者不在同一个进程中运行,实现了解耦。服务提供者可以随意增加和删除节点,通过健康状态检测,注册中心可以保持最新的服务节点信息,并将变化通知给订阅服务的服务消费者。注册中心一般采用分布式集群部署,来保证高可用性,并且为了实现异地多活,有的注册中心还采用多IDC部署,这对数据一致性产生了很高的要求,这些都是注册中心在实现时必要要解决的问题。微服务架构之路1,服务如何拆分?使用微服务的注意事项?Java学习路线总结,搬砖工逆袭Java架构师。原创 2023-11-06 09:27:47 · 7782 阅读 · 18 评论 -
微服务 Spring Cloud 1,服务如何拆分?使用微服务的注意事项?
微服务已经是Java开发的必备技能,甲方不管项目大小,都想上微服务,感觉上了就高大上了,牛逼了。微服务确实给我们带来了一定的便利性,但是也带来了麻烦,比如学习成本高,存在很多不可预见的问题。原创 2023-11-02 09:33:35 · 5107 阅读 · 11 评论 -
Dubbo高手之路3,Dubbo服务消费详解
Dubbo 服务消费是 Dubbo 服务分布式架构的重要组成部分,它主要负责服务的消费和调用。在 Dubbo 中,服务消费是通过注册中心和发布中心来实现的。注册中心负责服务的注册和发现,发布中心负责服务的发布和广播。Dubbo 服务消费提供了多种消息代理技术,如 Apache Kafka、RabbitMQ 等,可以支持大规模的分布式系统的高效消费和发布。原创 2023-08-20 15:24:12 · 1023 阅读 · 1 评论 -
Dubbo高手之路2,6种扩展机制详解
Dubbo是一个高性能的分布式服务框架,广泛应用于各种规模和种类的企业级项目中。在实际应用过程中,Dubbo的核心能力是扩展机制,它可以让Dubbo具有更强的可定制化能力,也可以让Dubbo更好地适应各种应用场景。Dubbo的扩展机制主要包括:自适应扩展机制、SPI扩展机制、自定义扩展点机制、过滤器扩展机制、负载均衡扩展机制和容错机制扩展。这些机制使得Dubbo的使用更加灵活方便,可以满足不同需要的业务场景,也可以根据实际情况来选择合适的扩展机制。原创 2023-08-13 13:27:51 · 689 阅读 · 5 评论 -
Dubbo高手之路4,Dubbo服务提供者详解
服务提供者是 Dubbo 框架的核心组件之一,它是负责提供服务的应用程序。服务提供者是一个 Java 类,它实现了 Dubbo 服务接口。服务提供者必须实现DubboRPC接口,该接口定义了服务调用的基本逻辑。服务提供者必须实现方法,该方法返回服务实例的引用。在 Dubbo 中,服务暴露的方式有两种:广播式服务暴露和点式服务暴露。广播式服务暴露是指服务提供者向所有注册的客户端广播服务发布信息,客户端根据服务名称和版本号等信息自动发现服务。点式服务暴露。原创 2023-08-23 21:32:32 · 1334 阅读 · 22 评论 -
Dubbo高手之路1,Dubbo原理和机制,Dubbo的核心组件
Dubbo是一种高性能、轻量级的分布式服务框架,它的设计目标是为大规模分布式应用提供支持。原创 2023-08-08 19:22:27 · 3927 阅读 · 17 评论 -
Spring Cloud Alibaba 微服务2,注册中心演变 + Nacos注册中心与配置中心
Spring Cloud微服务实战系列,打造精品专栏。原创 2023-03-01 07:44:49 · 9066 阅读 · 70 评论 -
DevOps是什么?DevOps能够给我们带来什么?
Spring Cloud微服务实战系列,打造精品专栏。原创 2023-02-26 09:37:30 · 11301 阅读 · 42 评论 -
Spring Cloud Alibaba 微服务1,系统架构演变 + Nginx反向代理与负载均衡
Spring Cloud微服务实战系列,打造精品专栏。原创 2023-02-22 08:06:43 · 8626 阅读 · 46 评论 -
【进击全栈 2】项目开发中遇到的问题汇总
最近喜欢上了喝茶,慢慢的喝茶取代了饮料和速溶咖啡,也算是一种收获吧,现在来分享一下喝茶以来的一些感悟和心得吧。人生中买的第一款茶,因为之前家门口有一家天福茗茶店,感觉很不错,先入为主嘛,初次体验感觉还不错。第二次买的是这款,温心铁观音, 悠然铁观音的升级款,喝起来差不多,尴尬!接下来都是按时间顺序来说的!绣球茉莉,这款茉莉花茶喝起来真心不错,球状的,感觉很上档次,感觉比之后买的张一元家的低端茉莉花强很多,以后这款会是以后茉莉花的首选!凤凰单枞,岩茶, 感觉盒子挺上档次的.原创 2020-05-16 12:09:02 · 2259 阅读 · 0 评论 -
【Spring Cloud 1】分布式架构入门
一、CDN加速静态文件访问CDN是Content Delivery Network的简称,即“内容分发网络”的意思,一般是指网站加速或用户下载速度加速。简单来说CDN相当于一个中间代理,原来我们请求百度时,请求会直接发送到百度的服务器,加入请求者在大连,但百度的服务器在北京,这样的话请求和响应都会受到距离的影响而变得慢一些,但有了CDN之后,请求先发到距离请求IP定位最近的CDN服务器上,该服务器缓存了百度页面的一些静态文件,比如CSS、JS、html、图片等,这样对用户来说,获取这些静态资源就比较原创 2021-01-03 15:15:41 · 7855 阅读 · 3 评论 -
【Spring Cloud 11】软件架构设计
一、分层架构分层架构是运用最为广泛的架构模式,几乎每个软件系统都需要经过层来隔离不同的关注点,以此应对不同需求的变化,使得这种变化可以独立进行;各个层、甚至同一层中的各个组件都会以不同速率发生变化。这里所谓的“以不同速率发生变化”,其实就是引起变化的原因各有不同,这正好是单一职责原则(Single-Responsibility Principle,SRP)的体现。即“一个类应该只有一个引起它变化的原因”,换言之,如果有两个引起类变化的原因,就需要分离。单一职责原则可以理解为架构原则,这时要考虑的转载 2021-01-02 11:08:46 · 3274 阅读 · 0 评论 -
【Spring Cloud 2】注册中心Eureka
一、什么是EurekaEureka是Netflix公司开源的产品,它是一种基于REST(Representational State Transfer)的服务,主要用于AWS云。 Eureka提供了完整的Service Registry和Service Discovery实现实现,也是Spring Cloud体系中最重要的组件之一。简单来说Eureka就是Netflix开源的一款提供服务注册和发现的产品,并且提供了java客户端。当然,springcloud大力优化后的Eureka,可以应用在任..原创 2020-06-03 15:16:16 · 5313 阅读 · 4 评论 -
【Spring Cloud 3】限流、降级和熔断Hystrix
一、前言分布式系统环境中,服务间类似依赖非常常见,一个业余调用通常依赖多个基础服务。如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。并且这种不可用可能沿请求调用链向上传递,这种现象称为雪崩效应。二、雪崩效应1、常见场景(1)硬件故障如服务器宕机,机房断电,光纤被挖断等。(2)流量激增如异常流量,重试加大流量等。(3)缓存穿透一般发生在应用重启,所有缓存失效时,以及短原创 2020-07-07 12:58:41 · 5089 阅读 · 0 评论 -
【Spring Cloud 12】分布式架构下的高可用设计与可伸缩设计
https://blog.csdn.net/cyl101816/article/details/107629246转载 2021-01-02 19:15:03 · 3414 阅读 · 0 评论 -
【Spring Cloud 13】构建高性能的大型分布式网站
一、大型网站的特点用户多,分布广泛 大流量,高并发 海量数据,服务高可用 安全环境恶劣,易受网络攻击 功能多,变得快,频繁发布 从小到大,渐进发展 以用户为中心 免费服务,付费体验二、大型网站架构目标大型网站的架构目标有如下几个:高性能:提供快速的访问体验。 高可用:网站服务一直可以正常访问。 可伸缩:通过硬件增加/减少,提高/降低处理能力。 扩展性:方便地通过新增/移除方式,增加/减少新的功能/模块。 安全性:提供网站安全访问和数据加密、安全存储等策略。 敏捷性:转载 2021-01-03 09:36:08 · 3508 阅读 · 0 评论 -
【Spring Cloud 14】SOA架构和微服务架构之间的关系
一、系统架构演变随着互联网的发展,网站应用的规模不断扩大。需求的激增,带来的是技术上的压力。系统架构也因此也不断的演进、升级、迭代。从单一应用,到垂直拆分,到分布式服务,到SOA,以及现在火热的微服务架构,还有在Google带领下来势汹涌的Service Mesh。我们到底是该乘坐微服务的船只驶向远方,还是偏安一隅得过且过?其实生活不止眼前的苟且,还有诗和远方。所以我们今天就回顾历史,看一看系统架构演变的历程;把握现在,学习现在最火的技术架构;展望未来,争取成为一名优秀的Java工程师。1、集中转载 2021-01-03 14:49:35 · 3554 阅读 · 0 评论 -
微服务与SOA架构
一、前言 面向服务架构(SOA)已经存在很多年了,这是一种用于设计软件的伟大原则。在SOA中,所有组件都是独立自主的,并能为其它组件提供服务。要替换掉系统中的某些部分而不对整个系统造成较...转载 2020-02-24 13:00:00 · 5761 阅读 · 1 评论 -
Ribbion之手写轮询算法
最近想系统的学习SpringCloud,发现视频中有一小段代码,很不错,分享给大家。Ribbion之手写轮询算法public interface LoadBalancer{ ServiceInstance instances(List<ServiceInstance> serviceInstances);}@Componentpublic class MyLB implements LoadBalancer{ private AtomicInteger atomicInte原创 2021-01-23 16:52:55 · 1052 阅读 · 0 评论 -
tomcat的maxThreads、acceptCount,对高并发的影响
一、tomcat并发测试当一个进程有 500 个线程在跑的话,那性能已经是很低很低了。Tomcat 默认配置的最大请求数是 150,也就是说同时支持 150 个并发,当然了,也可以将其改大。当某个应用拥有 250 个以上并发的时候,应考虑应用服务器的集群。具体能承载多少并发,需要看硬件的配置,CPU 越多性能越高,分配给 JVM 的内存越多性能也就越高,但也会加重 GC 的负担。操作系统对于进程中的线程数有一定的限制:Windows 每个进程中的线程数不允许超过 2000。 Linux转载 2021-03-23 21:28:23 · 2814 阅读 · 1 评论