![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
微服务
文章平均质量分 91
微服务
文晓武
专注搜索推荐问答推荐工程领域,涉及到的技术有:Java、ElasticSearch、SpringBoot、SpringCloud、Dubbo、Linux、Docker、Sql、Kafka、RabbitMQ、RocketMQ、MyBatis、XXl-Job、Zookeeper、Nginx、Redis、Tomcat、Git、SVN、Maven、K8S等,每周不定期更新精华文章!
展开
-
图解 SpringCloud 体系概览
架构的发展历程是从单体式架构,到分布式架构,到SOA架构,再到微服务架构。单体架构:未做任何拆分的Java Web程序分布式架构:按照业务垂直划分,每个业务都是单体架构,通过API互相调用。SOA架构:SOA是一种面向服务的架构。其应用程序的不同组件通过网络上的通信协议向其它组件提供服务或消费服务,所以也是分布式架构的一种。微服务架构在某种程度上是SOA架构的进一步的发展。微服务目前并没有比较官方的定义。微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下:微服务解决方案目前最流行的转载 2022-06-22 12:27:15 · 151 阅读 · 0 评论 -
架构相关:服务降级思路与方法
如果看过我前面对服务限流的分析,理解服务降级就很容易了,对于一个景区,平时随便进出,但是一到春节或者十一国庆这种情况客流量激增,那么景区会限制同时进去的人数,这叫限流,那么什么是服务降级呢?简单来说就是,将一些不太重要的景区项目砍掉,平时就那么三五八个人,景区可以开放湖中游泳啦,摸鱼啦,捉虾啦,有情况工作人员可以下湖捞你,但是现在客流量大了,工作人员关注不过来,都在湖里晃荡万一沉了不太安全,大手一挥,这个项目砍了,将工作人员分配在其他地方。在互联网中也有类似的降级措施,像之前双11, 有段时间是只允许下单不转载 2022-06-21 06:51:21 · 1740 阅读 · 0 评论 -
微服务和API网关限流熔断实现关键逻辑思路(深度好文)
今天准备谈下微服务架构和API网关中的限流熔断,当前可以看到对于Spring Cloud框架本身也提供了Hystrix,主流的开源API网关产品类似Kong网关本身也包括了限流熔断能力。当然也有完全较为独立的限流熔断开源实现,比如阿里的Sentinel即是我们经常会用到的限流熔断开源产品,而且可以和Dubbo,SpringCloud等各种微服务框架无缝集成。由于网上大家能够搜索到的关于各开源产品实现的限流熔断功能和使用的文章都很多,因此这篇文章不打算再去介绍这些开源产品,而是从业务场景出发来思考下一个限流熔转载 2022-06-21 06:43:23 · 688 阅读 · 0 评论 -
REST(一种URL接口设计风格)的前世今生
在学习RESTful 风格接口之前,即使你不知道它是什么,但你肯定会好奇它能解决什么问题?有什么应用场景?听完下面描述我想你就会明白:在互联网并没有完全流行的初期,移动端也没有那么盛行,页面请求和并发量也不高,那时候人们对接口的要求没那么高,一些动态页面(jsp)就能满足绝大多数的使用需求。 但是随着互联网和移动设备的发展,人们对Web应用的使用需求也增加,传统的动态页面由于低效率而渐渐被HTML+JavaScript(Ajax)的前后端分离所取代,并且安卓、IOS、小程序等形式客户端层出不穷,客户端的种转载 2022-06-20 17:51:36 · 969 阅读 · 0 评论 -
有了HTTP,为什么还要RPC?
目录OSI网络七层模型RPC服务RPC架构同步调用与异步调用流行的RPC框架HTTP服务总之RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看的话,RPC当然是要更胜一筹啦!下面来具体说一说RPC服务和HTTP服务。在说RPC和HTTP的区别之前,我觉的有必要了解一下OSI的七层网络结构模型(虽然实际应用中基本上都是四层),它可以分为以下几层:(从上到下)第一层:应用层。定义了用于在网络中进行通信和传输数据的接口;第二层转载 2022-06-20 17:17:28 · 139 阅读 · 0 评论 -
一文讲完 Spring Cloud,2W 字超详细总结
目录写在前面的话什么是Spring cloudSpring Cloud 的版本Spring Cloud 的服务发现框架——Eureka负载均衡之 Ribbon什么是 RestTemplate?为什么需要 Ribbon?Nginx 和 Ribbon 的对比Ribbon 的几种负载均衡算法什么是 Open Feign必不可少的 Hystrix什么是 Hystrix之熔断和降级什么是Hystrix之其他微服务网关——ZuulZuul 的路由功能Zuul 的过滤功能关于 Zuul 的其他Spring Cloud配转载 2022-06-16 19:36:14 · 172 阅读 · 0 评论 -
gRPC-Java:构建一个使用Java语言的gRPC工程
本文使用gRPC框架Java语言版本构建一个helloworld项目。涉及到的内容有:① 通过.proto文件生成Java代码的方法。② 以及服务端和客户端代码使用示例。本文先不讲解代码细节,只用来帮助自己构造一个Java版本的gRPC项目。后续系列文章再说,最后把代码放到github上。一、环境准备1.1 安装protocbuf首先需要安装protocbuf 3.x版本。本文中,我以3.17.2版本为例。把下面代码复制到一个shell脚本中,然后执行,就可以安装protocbuf-3.转载 2022-05-28 14:51:40 · 523 阅读 · 0 评论 -
序列化和反序列化详细介绍
凡事都要问为什么,在讲解序列化概念和原理前,我们先来了解一下为什么需要序列化。为什么要序列化?如果光看定义我想你很难一下子理解序列化的意义,那么我们可以从另一个角度来感受一下什么是序列化。都玩过游戏么?玩过的同学应该知道游戏里有一个叫『存档』的功能,每次不想玩的时候可以把当前进度存档,下次有时间想玩的时候,直接载入存档就可以接着玩了,这样的好处是之前的游戏进度不会丢失,要是每次打开都重新玩估计大家也没什么耐心了。如果把面向对象的思想带到游戏的世界,那在我们眼中不管是游戏角色还是游戏中的怪兽、转载 2022-02-22 16:41:49 · 469 阅读 · 0 评论 -
用通俗的语言介绍 RPC 框架的架构原理
动手实现一个简易的 RPC 轮子真的很难吗?no no no,很简单的,不信你把文章看完(doge)。RPC 框架典型的架构典型的 RPC 架构大致可以分为三个部分:(1)服务提供者(RPC Server):运行在服务器端,提供服务接口定义与服务实现类。(2)注册中心(Registry):运行在服务器端,负责将本地服务发布成远程服务,管理远程服务,提供给服务消费者使用。(3)服务消费者(RPC Client):运行在客户端,通过远程代理对象调用远程服务。通过上面的图可以看出,转载 2022-02-22 16:52:19 · 348 阅读 · 0 评论