
分布式与微服务架构
文章平均质量分 76
分布式与微服务
Artisan_w
这个作者很懒,什么都没留下…
展开
-
RocketMQ安装与基本使用
在RocketMQ中有NameServer、Broker、生产者、消费者四种角色。而生产者和消费者实际上就是业务系统,所以这里不需要搭建,真正要搭建的就是NameServer和Broker。原创 2024-02-04 11:09:34 · 625 阅读 · 0 评论 -
SpringCloud引入父项目需要注意的地方
组件依赖关系详细可查看:https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E。要引入两个组件,一个是SpringCloud一个是SpringCloudAlibaba。注意:父项目要加 pom,父项目中意味着可以被子项目共享。子项目要加 jar,子项目需要加个来引用父项目的资源。也可以是war,看打包方式。原创 2024-01-31 17:19:35 · 301 阅读 · 0 评论 -
RocketMQ入门--安装与简单使用
在RocketMQ中有NameServer、Broker、生产者、消费者四种角色。而生产者和消费者实际上就是业务系统,所以这里不需要搭建,真正要搭建的就是NameServer和Broker。原创 2024-01-18 16:36:28 · 454 阅读 · 0 评论 -
CAP与BASE理论
一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项。C一致性:状态的一致性,缓存,数据库,集群等A可用性:要求系统内的节点们接收到了无论是写请求还是读请求,都要能处理并给回响应结果P分区容错性:在分布式系统中,节点通信出现了问题,那么就出现了分区。:能容忍网络分区,在网络断开的情况下,被分隔的节点仍能正常对外提供服务。原创 2024-01-13 17:03:02 · 478 阅读 · 0 评论 -
读书笔记--微服务架构
客户端与微服务直接通信GateWay:API 网关是一个服务器,是系统的单入口点。它类似于面向对象设计模式中的门面(Facade)模式。API 网关封装了内部系统架构,并针对每个客户端提供一个定制 API。它还可用于认证、监控、负载均衡、缓存和静态响应处理。例如nginx,node.jsAPI 网关作为系统的单入口点,并且负责请求路由,组合和协议转换。它为每个应用客户端提供了一个自定义 API。API 网关还可以通过返回缓存或默认数据来掩盖后端服务故障。原创 2024-01-12 16:49:49 · 491 阅读 · 0 评论 -
RabbitMQ安装与应用
交换机的作用是什么?接收publisher发送的消息将消息按照规则路由到与之绑定的队列不能缓存消息,路由失败,消息丢失FanoutExchange的会将消息路由到每个绑定的队列声明队列、交换机、绑定关系的Bean是什么?原创 2024-01-04 23:25:26 · 944 阅读 · 0 评论 -
Gateway服务网关
需求:定义全局过滤器,拦截请求,判断请求的参数是否满足下面条件:参数中是否有authorization,authorization参数值是否为admin如果同时满足则放行,否则拦截实现:@Order(-1)@Component@Override// 1.获取请求参数// 2.获取authorization参数// 3.校验// 放行// 4.拦截// 4.1.禁止访问,设置状态码// 4.2.结束处理各种过滤器执行顺序:排序的规则是什么呢?原创 2024-01-04 23:20:58 · 1337 阅读 · 0 评论 -
Feign远程调用
Fegin的使用步骤如下:1)引入依赖我们在order-service服务的pom文件中引入feign的依赖:2)引入注解3)编写Feign的客户端在order-service中新建一个接口,内容如下:这个客户端主要是基于SpringMVC的注解来声明远程调用的信息,比如:服务名称:userservice请求方式:GET请求路径:/user/{id}请求参数:Long id返回值类型:User这样,Feign就可以帮助我们发送http请求,无需自己使用RestTemplate来发送了。原创 2024-01-04 23:18:26 · 929 阅读 · 0 评论 -
Nacos配置管理
{spring.profiles.active}.${spring.cloud.nacos.config.file-extension}作为文件id,来读取配置。[spring.application.name]-[spring.profiles.active].yaml,例如:userservice-dev.yaml。[spring.application.name].yaml,例如:userservice.yaml。然后,在user-service中添加一个bootstrap.yaml文件,内容如下。原创 2024-01-04 23:17:29 · 1341 阅读 · 0 评论 -
注册中心与服务发现环境搭建实例--Eureka和Nacos
通过定义IRule实现可以修改负载均衡规则,有两种方式:@Beanuserservice: # 给某个微服务配置负载均衡规则,这里是userservice服务ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 负载均衡规则注意,一般用默认的负载均衡规则,不做修改。原创 2024-01-04 23:11:58 · 1315 阅读 · 0 评论 -
Consule安装与SpringBoot集成
Consul 是由 HashiCorp 开发的一款软件工具,提供了一组功能,用于服务发现、配置管理和网络基础设施自动化。它旨在帮助组织管理现代分布式和微服务架构系统的复杂性。以下是Consul的一些关键方面和功能:服务发现:Consul 允许服务自行注册并以动态和自动化的方式发现其他服务。这在微服务架构中特别重要,因为服务需要定位并与其他服务通信。健康检查:Consul 可以对已注册的服务执行健康检查。原创 2024-01-04 23:02:47 · 1595 阅读 · 0 评论 -
软件层面缓存基本概念与分类
缓存(cache),原始意义是指访问速度比一般随机存取存储器(RAM)快的一种高速存储器,通常它不像系统主存那样使用DRAM技术,而使用昂贵但较快速的SRAM技术。缓存的设置是所有现代计算机系统发挥高性能的重要因素之一。缓存的工作原理是当CPU要读取一个数据时,首先从CPU缓存中查找,找到就立即读取并送给CPU处理;没有找到,就从速率相对较慢的内存中读取并送给CPU处理,同时把这个数据所在的数据块调入缓存中,可以使得以后对整块数据的读取都从缓存中进行,不必再调用内存。原创 2023-09-05 19:48:52 · 705 阅读 · 0 评论 -
服务注册与服务发现
Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务发现功能。1.Eureka包含两个组件:Eureka Server和Eureka Client。原创 2023-09-05 19:44:56 · 1060 阅读 · 0 评论 -
Consul
通过前面,consul架构章节consul说明,我们知道consul主要分server和client两个组件,server负责核心数据的存储和处理数据的读写,通过client可以操作server提供的接口。consul将server和client两个组件的实现都融合在一个叫consul的命令程序中,所以我们安装consul后,只有一个consul命令。在consul中,无论server还是client都叫做agent,通过命令参数区分,我们运行的是server还是client。原创 2023-09-05 19:53:49 · 147 阅读 · 0 评论 -
分布式入门--分布式与集群区别
看到一篇通俗易懂的分布式与集群区别的文章转载链接:链接分布式和集群的区别究竟是什么?IDF05(Intel Developer Forum 2005)上,Intel首席执行官Craig Barrett就取消4GHz芯片计划一事,半开玩笑当众单膝下跪致歉,给广大软件开发者一个明显的信号,单纯依靠垂直提升硬件性能来提高系统性能的时代已结束,分布式开发的时代实际上早已悄悄地成为了时代的主流。吵得很热的云计算实际上只是包装在分布式之外的商业概念,很多开发者(包括我)都想加入研究云计算这个潮流,在google转载 2022-03-05 11:33:39 · 123 阅读 · 0 评论