02 2021 档案

摘要:1. RabbitMQ Plugins使用 RabbitMQ自带插件管理系统,可以使用工具[rabbitmq-plugins]进行管理和使用。 查看当前插件状态 [tRabbitMQ@iZ250x18mnzZ ~]$ rabbitmq-plugins list Configured: E = exp 阅读全文
posted @ 2021-02-25 14:23 YoungDeng 阅读(592) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ 这个消息中间件,其实公司最近的项目中有用到,但是一直没有系统的整理,最近看完了《RabbitMQ实战 高效部署分布式消息队列》这本书,所以顺便写写。 那么关于 RabbitMQ 是什么?大家可以首先参考官网:http://www.rabbitmq.com 。这里我大概的介绍一下: 阅读全文
posted @ 2021-02-25 13:55 YoungDeng 阅读(146) 评论(0) 推荐(0) 编辑
摘要:说到消息通信,可能我们首先会想到的是邮箱,QQ,微信,短信等等这些通信方式,这些通信方式都有发送者,接收者,还有一个中间存储离线消息的容器。但是这些通信方式和我们要讲的 RabbitMQ 的通信模型是不一样的,比如和邮件的通信方式相比,邮件服务器基于 POP3/SMTP 协议,通信双方需要明确指定, 阅读全文
posted @ 2021-02-25 13:47 YoungDeng 阅读(197) 评论(0) 推荐(0) 编辑
摘要:1、简单队列 其实上篇文章末尾给出的代码就是简单队列。 一个生产者对应一个消费者!!! 生产者将消息发送到“hello”队列。消费者从该队列接收消息。 ①、pom文件 必须导入rabbitmq 依赖包 <dependency> <groupId>com.rabbitmq</groupId> <art 阅读全文
posted @ 2021-02-25 13:38 YoungDeng 阅读(1644) 评论(0) 推荐(0) 编辑
摘要://进行链接常见 // xfRabbitTemplate 自定义的链接创建类 Channel channel = xfRabbitTemplate.getChannel(); //消费者定义 channel.queueDeclare(Queue.TEXT_MESSAGE, true, false, 阅读全文
posted @ 2021-02-25 11:06 YoungDeng 阅读(1240) 评论(0) 推荐(0) 编辑
摘要:1、配置rabbitmq <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSc 阅读全文
posted @ 2021-02-25 10:57 YoungDeng 阅读(12679) 评论(0) 推荐(0) 编辑
摘要:1. 概述 本文使用RabbitMQ实现RPC的调用方式,主要包括如下内容: 回调队列(Callback queue) RPC调用相关的消息参数:replyTo和correlationId RPC调用的客户端和服务端的demo代码 2. 本文实现功能说明 本文使用RabbitMQ实现RPC的调用方式 阅读全文
posted @ 2021-02-25 10:44 YoungDeng 阅读(1281) 评论(0) 推荐(0) 编辑
摘要:Spring Boot2 + Redis + RabbitMQ + Elasticsearch 视频 https://edu.csdn.net/course/detail/20536?utm_medium=distribute.pc_relevant.none-task-course-BlogCom 阅读全文
posted @ 2021-02-25 10:15 YoungDeng 阅读(181) 评论(0) 推荐(0) 编辑
摘要:在分布式系统中,设计思路很重要 先来讲讲大概思路,代码都是可以改的但思路大同小异。先缓存商品,加载到redis,秒杀场景下如果直接访问关系型数据库,会引起雪崩效应,系统瘫痪,所以就改为访问redis,这里是减库存的时候先减redis,然后异步去减DB。就可以防止系统崩溃。 正题 先看工程目录 pom 阅读全文
posted @ 2021-02-25 10:11 YoungDeng 阅读(769) 评论(0) 推荐(1) 编辑
摘要:概要 在大数据量高并发访问时,经常会出现服务或接口面对暴涨的请求而不可用的情况,甚至引发连锁反映导致整个系统崩溃。此时你需要使用的技术手段之一就是限流,当请求达到一定的并发数或速率,就进行等待、排队、降级、拒绝服务等。在限流时,常见的两种算法是漏桶和令牌桶算法算法。 限流算法 令牌桶(Token B 阅读全文
posted @ 2021-02-25 09:55 YoungDeng 阅读(5035) 评论(0) 推荐(0) 编辑
摘要:1.安装RabbitMQ docker安装:https://blog.csdn.net/qq_33612228/article/details/103732890 windows安装:https://blog.csdn.net/m0_37034294/article/details/82839494 阅读全文
posted @ 2021-02-25 09:42 YoungDeng 阅读(2439) 评论(0) 推荐(0) 编辑
摘要:秒杀存在的问题: 1、短时间内大量请求发送到服务器,很可能会造成服务器崩溃; 2、商品超卖; 3、服务器响应时间过久(频繁读写数据库,耗时长),用户体验性差。 解决思路: 1、为解决频繁读数据库问题以及减轻数据库压力,使用 Redis ,项目初始化时先将商品信息缓存起来,请求过来时先查Redis,根 阅读全文
posted @ 2021-02-25 09:30 YoungDeng 阅读(966) 评论(0) 推荐(0) 编辑
摘要:1. 创建镜像队列模式 注意,到此步骤,我们假设是你已经创建好了RabbitMQ集群。 1.1 增加镜像队列的Policy 打开你的RabbitMQ管理首页,在Admin->Policy链接下开始创建Policy: Name: 你配置的Policy名称; Pattern: 匹配模式,图片的是匹配te 阅读全文
posted @ 2021-02-25 09:08 YoungDeng 阅读(644) 评论(0) 推荐(1) 编辑
摘要:异常信息:ERROR [amqpReceiver.01] org.mule.exception.DefaultSystemExceptionStrategy: Caught exception inflowConstructt&org/mule/api/construct/FlowConstruct 阅读全文
posted @ 2021-02-25 09:04 YoungDeng 阅读(111) 评论(0) 推荐(0) 编辑
摘要:在一般使用RabbitMQ做RPC很容易。客户端发送一个请求消息然后服务器回复一个响应消息。为了收到一个响应,我们需要发送一个'回调'的请求的队列地址。我们可以使用默认队列(在Java客户端除外)。 AMQP协议给消息定义了14个属性。大部分的属性很少使用,除了下面几个: deliveryMode: 阅读全文
posted @ 2021-02-25 08:58 YoungDeng 阅读(302) 评论(0) 推荐(0) 编辑
摘要:如果我们需要在远程计算机上运行一个函数并等待结果,这种模式通常被称为远程过程调用或RPC。 在本教程中,我们将使用RabbitMQ构建一个RPC系统:一个客户端和一个RPC服务器。我们将创建一个返回斐波那契数字的模拟RPC服务。 整个过程示意图如下:客户端将请求发送至rpc_queue(我们定义的消 阅读全文
posted @ 2021-02-24 15:48 YoungDeng 阅读(362) 评论(0) 推荐(0) 编辑
摘要:一、RPC 1. RPC是什么 RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型 阅读全文
posted @ 2021-02-24 15:38 YoungDeng 阅读(2390) 评论(0) 推荐(0) 编辑
摘要:一、TCP/IP 建立TCP需要三次握手才能建立(客户端发起SYN,服务端SYN+ACK,客户端ACK), 断开连接则需要四次握手(客户端和服务端都可以发起,FIN-ACK-FIN-ACK)。 1、为什么连接的时候是三次握手,关闭的时候却是四次握手? 答: 因为当Server端收到Client端的S 阅读全文
posted @ 2021-02-24 15:34 YoungDeng 阅读(832) 评论(0) 推荐(0) 编辑
摘要:TCP/IP 建立TCP需要三次握手才能建立(客户端发起SYN,服务端SYN+ACK,客户端ACK), 断开连接则需要四次握手(客户端和服务端都可以发起,FIN-ACK-FIN-ACK)。 为什么连接的时候是三次握手,关闭的时候却是四次握手?答:因为当Server端收到Client端的SYN连接请求 阅读全文
posted @ 2021-02-24 15:27 YoungDeng 阅读(379) 评论(0) 推荐(0) 编辑
摘要:前言 erlang是一门面向并发的编程语言,流行的消息队列rabbitMQ是基于erlang环境运行的; 下载安装erlang语言环境 源码安装 # 从官网下载,在任何目录下,使用root权限 wget http://www.erlang.org/download/otp_src_20.0.tar. 阅读全文
posted @ 2021-02-24 15:08 YoungDeng 阅读(250) 评论(0) 推荐(0) 编辑
摘要:一、背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现。AMQP 的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有很多公开标准(如 COBAR的 IIOP ,或者是 SOAP 等),但是在异步消息处理中却不是这样,只 阅读全文
posted @ 2021-02-24 14:47 YoungDeng 阅读(50) 评论(0) 推荐(0) 编辑
摘要:MQ全称为Message Queue, 是一种分布式应用程序的的通信方法,它是消费-生产者模型的一个典型的代表,producer往消息队列中不断写入消息,而另一端consumer则可以读取或者订阅队列中的消息。RabbitMQ是MQ产品的典型代表,是一款基于AMQP协议可复用的企业消息系统。业务上, 阅读全文
posted @ 2021-02-24 14:13 YoungDeng 阅读(187) 评论(0) 推荐(0) 编辑
摘要:1.背景 RabbitMQ是一个由erlang开发的AMQP(Advanved Message Queue)的开源实现。 2.应用场景 2.1异步处理 场景说明:用户注册后,需要发注册邮件和注册短信,传统的做法有两种1.串行的方式;2.并行的方式(1)串行方式:将注册信息写入数据库后,发送注册邮件, 阅读全文
posted @ 2021-02-24 10:26 YoungDeng 阅读(230) 评论(0) 推荐(0) 编辑
摘要:AMQP AMQP协议是一个高级抽象层消息通信协议,RabbitMQ是AMQP协议的实现。它主要包括以下组件: 1.Server(broker): 接受客户端连接,实现AMQP消息队列和路由功能的进程。 2.Virtual Host:其实是一个虚拟概念,类似于权限控制组,一个Virtual Host 阅读全文
posted @ 2021-02-24 10:23 YoungDeng 阅读(765) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示