摘要: 本节使用docker安装FastDFS。 本节是在node01和node02两台主机上安装部署FastDFS双节点。node01 ip:192.168.178.7 安装tracker1,storage1node02 ip:192.168.178.10 安装tracker2,storage2 若要扩展 阅读全文
posted @ 2020-01-19 16:45 codedot 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 一、背景 早期的网站,将静态文件(图片等)直接存放在项目文件夹内,优点(简单方便快捷),缺点(耦合度高,静态文件访问占用资源多); 后来将静态文件分离存储在一个单独的文件服务器上,优点(解耦,降低网站服务器压力,便于扩容、备份、负载均衡等),缺点(垂直扩展性、容灾差,单机性能瓶颈); 分布式文件存储 阅读全文
posted @ 2020-01-19 16:02 codedot 阅读(648) 评论(0) 推荐(0) 编辑
摘要: 文章链接:http://www.tianshouzhi.com/api/tutorials/netty/343 阅读全文
posted @ 2020-01-19 15:36 codedot 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 一、什么是Decoder和Encoder 在Netty里面,有四个核心概念,它们分别是: Channel:一个客户端与服务器通信的通道。 ChannelHandler:业务逻辑处理器, 通常情况下,业务逻辑都是存在于ChannelHandler之中。 ChannelInboundHandler:输入 阅读全文
posted @ 2020-01-19 14:53 codedot 阅读(2568) 评论(0) 推荐(0) 编辑
摘要: 一、Future Netty的Future接口继承了JDK的Future接口,同时提供了更多的方法: 任务成功完成后isSuccess()返回true任务执行过程中有异常,cause()会返回异常对象任务被取消执行,父接口方法isCancelled返回true以上3种情况isDone()均为true 阅读全文
posted @ 2020-01-19 14:48 codedot 阅读(1294) 评论(0) 推荐(0) 编辑
摘要: Channel是Netty网络通信的主体,由它负责同对端进行网络通信、注册和数据操作等功能。 AbstractChannel是Channel的一个抽象类。 1) 通道状态主要包括:打开、关闭、连接2) 通道主要的IO操作,读(read)、写(write)、连接(connect)、绑定(bind)。3 阅读全文
posted @ 2020-01-19 14:45 codedot 阅读(1010) 评论(0) 推荐(0) 编辑
摘要: ChannelInitializer的类图: 通道初始化器ChannelInitializer实际上为Inbound通道处理器,主要目的是为程序员提供了一个简单的工具,用于在某个Channel注册到EventLoop后,对这个Channel执行一些初始化操作。ChannelInitializer虽然 阅读全文
posted @ 2020-01-19 14:39 codedot 阅读(3057) 评论(0) 推荐(0) 编辑
摘要: ChannelHandler类似于Servlet的Filter过滤器,负责对I/O事件或者I/O操作进行拦截和处理,它可以选择性地拦截和处理自己感兴趣的事件,也可以透传和终止事件的传递。基于ChannelHandler接口,用户可以方便地进行业务逻辑定制,例如打印日志、统一封装异常信息、性能统计和消 阅读全文
posted @ 2020-01-19 14:33 codedot 阅读(646) 评论(1) 推荐(1) 编辑
摘要: ChannelOption的各种属性在套接字选项中都有对应,下面简单的总结一下ChannelOption的含义已及使用的场景。 (1) ChannelOption.SO_BACKLOG ChannelOption.SO_BACKLOG对应的是tcp/ip协议listen函数中的backlog参数,函 阅读全文
posted @ 2020-01-19 11:44 codedot 阅读(1314) 评论(0) 推荐(0) 编辑
摘要: ChannelPipeline不是单独存在,它肯定会和Channel、ChannelHandler、ChannelHandlerContext关联在一起。 一、ChannelHandler ChannelHandler下主要是两个子接口: ChannelInboundHandler(入站): 处理输 阅读全文
posted @ 2020-01-19 11:35 codedot 阅读(713) 评论(0) 推荐(1) 编辑
摘要: ServerBootStrap是Netty服务端启动配置类,BootStrap是Netty客户端启动配置类。 一、BootStrap 绑定线程组,设置react模式的主线程池 以及 IO 操作线程池:group(bossGroup, workerGroup) channel(Class<? exte 阅读全文
posted @ 2020-01-19 10:56 codedot 阅读(5048) 评论(0) 推荐(1) 编辑
摘要: 一、EventLoop和EventLoopGroup EventLoop如同它的名字,它是一个无限循环(Loop),在循环中不断处理接收到的事件(Event)。 Netty线程模型的基石是建立在EventLoop上的,从设计上来看,EventLoop采用了一种协同设计,它建立在两个基本的API之上: 阅读全文
posted @ 2020-01-19 10:54 codedot 阅读(7056) 评论(0) 推荐(0) 编辑
摘要: 对手新手而言,莫过于项学习一个框架,但是苦于框架的API一点都不认识,看别人写代码,又看不懂,真痛苦。 本节就列举一下Netty的API: 线程组:NioEventLoopGroup 【 https://www.cnblogs.com/myitnews/p/12212796.html】 启动配置类: 阅读全文
posted @ 2020-01-19 10:43 codedot 阅读(891) 评论(2) 推荐(1) 编辑