自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

孤落

大漠孤烟直,长河落日圆。

  • 博客(9)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java 动态代理

Java 动态代理1 普通代理代理模式是经典的设计模式,主要是:在客户不能够直接访问到目标对象的时候,设计一个代理对象(该代理对象可以直接访问真实对象),客户借助于代理对象去访问真实对象;或者是在调用目标方法的时候,想添加一些额外的操作,但是有不想改变原有的业务逻辑。代理模式实际上屏蔽了内部访问的细节,客户不管你内不是如何运行的,只要返回给我最终的结果即可。代理模式应用还是非常广泛的,Spri...

2018-09-24 13:47:17 140

原创 netty(六) ByteBuf学习.md

ByteBuf学习基于Java Nio的网络通信,必须依赖于ByteBuffer,从程序实际上是借助于ByteBuffer来与Channel进行交互的,可以向Channel读写数据,但是Java Nio原生的ByteBuffer存在一些问题。ByteBuffer有两种模式:读模式和写模式,写模式切换到读模式的时候,必须显示地调用flip()方法,否则从缓冲区中读数据会出现异常。这就要求程序猿必...

2018-09-17 22:23:17 1979

原创 netty(五) ChannelPipeLine和ChannelHandler学习

ChannelPipeline和ChannelHandler学习根据java NIO思想,不管是从文件中读写数据还是从网络中读写数据,都是借助于一个Channel来进行的。 即:File <–> Channel <–> 程序 在netty框架中,netty将Channel的数据管道(Channel中包含很多信息)抽象成一个ChannelPipeline,用于描述数据...

2018-09-12 22:46:46 564

原创 netty(四)ServerBootstrap学习

ServerBootstrap学习github:ServerBootstrap学习ServerBootstrap是一个启动辅助类,和普通Java网络编程一样,它的服务端和客户端所有的启动类是有一点差别的。Java网络编程中服务端用的是ServerSocket,而客户端使用的是Socket。和这个进行类比,netty框架的服务端和客户端使用的启动类辅助分别是:ServerBootstra...

2018-09-08 16:57:39 376

原创 netty(三) NioEventLoop再学习

NioEventLoop再次学习昨天开始学习了NioEventLoop,今天详细看了NioEventLoop的底层实现。NioEventLoop的继承关系如图所示: 从图中可以看出来,NioEventLoop的终极父类是Executor,也就是是说NioEventLoop是一个线程池(但是它也可以看做一个线程)。在程序中并没有使用NioEventLoop,而是通过使用NioEvent...

2018-09-07 22:36:14 275

原创 netty(二) NioEventLoop学习

EventLoop学习昨天我开始学习netty框架,写了一个小例子,今天学习下其中比较重要的技术之一:EventLoop。netty是基于Java NIO的框架,昨天学习的时候(包括前天学习Java NIO的时候)一直在想,当服务器线程没有客户端连接请求或者通道中没有IO操作的时候,就会陷入阻塞,一旦有感兴趣的动作发生的时候,线程就会被重新唤醒,继续执行,那么阻塞的线程为什么能够在事件发生...

2018-09-06 23:33:33 311

原创 netty 入门

netty 入门guthub: netty 入门使用Java NIO就可以进行高性能网络编程,但是利用jdk原生的NIO API的话,在编程的时候必须很小心,需要自己来规避一些可能的异常情况,如:epoll bug问题就是其中之一,理论上想Selector注册的所有Channel都没有IO操作的话,Selector.select()将会被阻塞,直至有Channel有IO操作,但是...

2018-09-05 19:47:23 684 1

原创 Java NIO

Java NIOgithub:Java NIO: https://github.com/guluo2016/studyNote/blob/RPC/RPC/java%20NIO.md昨天学习的Java IO是传统的IO,使得程序与存放在磁盘上的文件能够很方便的进行交互。但是它也存在一定的问题,问题的根源在于速度,由于磁盘IO速度远远小于CPU处理速度,这导致程序在进行IO操作的时候,不得不...

2018-09-05 19:44:52 461

原创 Java IO

Java IOgithub:Java IO: https://github.com/guluo2016/studyNote/blob/RPC/RPC/java%20IO.md程序运行过程中不可避免的需要同磁盘打交道,有的时候资源可能还不在本地,这个时候还可能借助于网络,不管是和本地磁盘还是通过网络与远程磁盘交互,有必须用到IO,因此Java IO还是非常重要的。 另外,基于Java ...

2018-09-05 19:43:02 175

hadoop权威指南第4版(中文版)

hadoop权威指南第4版(中文版),带目录,比较清晰的。

2019-02-26

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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