自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

刘本龙的专栏

个人邮箱:3089008201@qq.com. 技术交流群:684457529

原创 rabbitmq 事务消息

文章目录AMQP 事务消息confirm 事务消息生产者纯异步操作 rabbitmq支持两种模式的事务消息: AMQP confirm AMQP 事务消息 代码比较简单,开启事务txSelect,提交txCommit,回滚txRollback。 实例: 生产者 public class S...

2020-02-21 16:08:59 280 0

原创 rabbitmq消息可靠性之消息应答与持久化

文章目录消息应答ack持久化 消息应答ack 前面介绍了rabbitmq有两种ack模式 自动ack:消息从rabbitmq队列中发送给消费者则从队列内存中删除该消息。此时如果消费者宕机等原因未来得及消费完消息,则该消息丢失。 手动ack:消费者在去确定消费完消息以后再ack,rabbitmq服...

2020-02-19 22:06:43 237 0

原创 rabbitmq 7种队列实现java版

文章目录搭建maven项目引入依赖创建连接简单队列消息生产者消息消费者 搭建maven项目 引入依赖 <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-clie...

2020-02-19 21:02:59 300 0

原创 rabbitmq用户及vhost配置

文章目录用户添加用户配置virtual hosts授权用户访问vhost 用户 上一节我们是通过guest用户登录的,但是实际工作中肯定不能以该账户使用,通常是会设置多个账户供不同的业务方使用。 下图中可以看到guest是administrator权限。 添加用户 我这里作为演示,添加一个adm...

2020-02-19 20:12:20 320 0

原创 windows10安装rabbitmq

文章目录安装Erlang安装rabbitmq 安装Erlang 由于rabbitMQ是Erlang语言编写的,所以要先安装Erlang语言环境,与安装java类似。 rabbitmq官网安装教程:https://www.rabbitmq.com/install-windows.html。 官网已...

2020-02-19 19:32:28 268 0

原创 java11:NoClassDefFoundError: javax/activation/MimetypesFileTypeMap

文章目录错误描述解决办法 错误描述 在 netty4.1实现http文件服务器 一文中我们有使用到javax.activation.MimetypesFileTypeMap。但是java9+对Java实行了模块化处理,有一些模块没有默认加载,所以在使用这些模块时,需要我们主动的引入。 错误信息:N...

2020-02-16 18:51:44 498 0

原创 Netty实现聊天室

文章目录 本文内容基于上一篇博客 netty实现WebSocket协议,一些基本使用请参考该博客。 本例实现的功能: 有新成员加入时,群广播消息,欢迎加入 有成员退出时,群广播消息,退出 每个成员都可以发送消息,消息广播给群内的每个人 完整的服务器代码如下: package com.examp...

2020-02-13 16:09:19 539 0

原创 netty实现WebSocket协议

文章目录WebSocket协议服务端开发客户端运行测试全双工 WebSocket协议 一般web应用都是使用的HTTP协议。HTTP协议有以下特点: 支持客户端-服务端模式 使用简单:只需要知道服务端URL,携带参数发送请求即可 支持多种传输数据类型,由消息头中content-type标识 无状...

2020-02-11 11:48:49 607 0

转载 网关基于Netty 在Http 协议的实践

文章目录网关基于Netty 在Http 协议的实践http编解码Head 请求ByteBuf 释放,防止内存泄漏引用计数PoolThreadCache连接池连接复用接入端用Netty完全异步Tomcat 做容器Netty 实现 网关基于Netty 在Http 协议的实践 我们网关现在完全基于net...

2020-02-10 20:54:23 369 0

原创 netty4.1实现http文件服务器

概述 netty版本:4.1.45 使用netty搭建一个简单的文件服务器,使用HTTP协议对外提供服务。 如果文件不存在,返回403响应码。如果是文件夹,以超链接展示,如果是文件,支持下载。 服务器编码 /** * netty http 文件下载 服务器 */ public class ...

2020-02-10 20:30:49 331 0

原创 netty实现HTTP服务器

文章目录概述HTTP服务器代码实现验证 概述 目前主流的Java web服务器还是采用springboot+Tomcat来实现的,底层还是基于servlet开发的。servlet不是异步的,所以性能并不是很理性,无法满足当下的快速服务器的要求。 目前spring5已经实现了基于reactor的we...

2020-02-10 15:07:07 205 0

原创 Mac升级系统后,idea中Git无法使用:xcrun: error: invalid active developer path

Mac升级了最新的系统,idea右下角提示Git无法使用的错误。完整错误信息: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library...

2020-02-10 10:34:47 207 0

原创 Mac安装protobuf

Mac上安装软件通常使用brew来安装,类似于Linux平台上的yum. 本文使用brew安装protobuf 两条命令: brew install protobuf protoc --version

2020-02-09 11:53:17 141 0

原创 mac 安装 brew(homebrew)

brew是MacOS上的包管理工具。类似RHEL/CentOS上的yum或者Ubuntu上的apt-get一样。 确认你的Mac电脑安装了ruby: ruby -v ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-dar...

2020-02-09 11:47:35 229 0

原创 netty 4.1.45 protobuf 编解码实现

文章目录PB协议简单使用netty使用PB协议进行编解码 PB协议简单使用 关于PB协议的使用介绍请移步至: protocol buffer 3 (Protobuf3) ( java 版本 ) 使用入门。 netty使用PB协议进行编解码 ...

2020-02-09 10:30:13 137 0

原创 netty 4.1.45自定义编解码器

概述 前面介绍了使用netty本身提供的LineBasedFrameDecoder、DelimiterBasedFrameDecoder、FixedLengthFrameDecoder三种编解码方案。不过实际工作中直接使用这几种编解码的还是比较少的。比如处于安全、性能、私有网络等。 这里介绍简单的...

2020-02-08 21:41:42 228 0

原创 netty 4.1.45 TCP拆包粘包原因及解决办法

文章目录异常情况模拟服务器改造客户端改造运行结果拆包粘包原因分析拆包粘包解决办法LineBasedFrameDecoder 换行符分隔消息服务端修改客户端修改运行结果原理分析DelimiterBasedFrameDecoder 固定分隔符解码器服务端修改客户端修改FixedLengthFrameD...

2020-02-08 17:31:33 324 0

原创 netty 4.1.45 第一个netty程序

概述 本系列文章介绍netty的学习。使用的版本是4.1.45 jdk采用Java11 本系列文章由浅入深,先学习使用,再研究其实现原理。 本节编写一个最简单的netty服务器。 maven依赖 <dependency> <groupId>io.netty</...

2020-02-08 15:54:51 737 0

提示
确定要删除当前文章?
取消 删除