Fork me on GitHub
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 49 下一页
摘要: 简介 什么是Base64编码呢?在回答这个问题之前,我们需要了解一下计算机中文件的分类,对于计算机来说文件可以分为两类,一类是文本文件,一类是二进制文件。 对于二进制文件来说,其内容是用二进制来表示的,对于人类是不可立马理解的。如果你尝试用文本编辑器打开二进制文件,可能会看到乱码。这是因为二进制文件 阅读全文
posted @ 2022-04-08 18:06 flydean 阅读(531) 评论(0) 推荐(0) 编辑
摘要: 简介 之前的文章我们讲到了Socket中的Stream Socket和Datagram Socket,这两种Socket通常分别是基于tcp和udp协议来进行数据的传输。这两种Socket都有一个共同的特点,那就是需要一个IP地址和端口来建立客户端和服务器端的连接。 那么今天我们会来讲解一个特殊的s 阅读全文
posted @ 2022-04-06 15:06 flydean 阅读(1129) 评论(1) 推荐(1) 编辑
摘要: 简介 上一篇文章我们讲解了Socket的分类和最常用到的Stream Socket,Stream Socket一般是基于TCP协议的,所以我们经常在web服务中能够看到他们的身影。当然TCP协议有个孪生兄弟叫做UDP,那么基于UDP来做传输协议的socket协议就叫做Datagram Socket, 阅读全文
posted @ 2022-04-01 18:33 flydean 阅读(834) 评论(0) 推荐(1) 编辑
摘要: 简介 不管是在普通的网络编程中还是在netty中,都经常会提到一个词叫做socket,好像socket是一个神奇的东西,使用socket我们可以建立客户端到服务器端的连接,并且和进行客户端和服务器端的通讯,那么socket到底是什么呢?它有哪些分类呢?一起来看看吧。 Socket是什么 socket 阅读全文
posted @ 2022-03-30 20:39 flydean 阅读(1123) 评论(1) 推荐(1) 编辑
摘要: 简介 JAVA是可以调用本地方法的,官方提供的调用方式叫做JNI,全称叫做java native interface。要想使用JNI,我们需要在JAVA代码中定义native方法,然后通过javah命令创建C语言的头文件,接着使用C或者C++语言来实现这个头文件中的方法,编译源代码,最后将编译后的文 阅读全文
posted @ 2022-03-28 20:23 flydean 阅读(2806) 评论(1) 推荐(0) 编辑
摘要: 简介 相信每个程序员都有一个成为C大师的梦想,毕竟C程序员处于程序员鄙视链的顶端,他可以俯视任何其他语言的程序员。 但事实情况是,无数的程序员从小白到放弃,鉴于C的难度,最后都投入了java的怀抱。JAVA以他宽广的胸怀接纳了一众无法登顶C的程序员。 开个玩笑,C和C++的优势在于和系统底层的交互和 阅读全文
posted @ 2022-03-23 20:05 flydean 阅读(498) 评论(2) 推荐(0) 编辑
摘要: 简介 任何一个程序都离不开IO,有些是很明显的IO,比如文件的读写,也有一些是不明显的IO,比如网络数据的传输等。那么这些IO都有那些模式呢?我们在使用中应该如何选择呢?高级的IO模型kqueue和epoll是怎么工作的呢?一起来看看吧。 block IO和nonblocking IO 大家先来了解 阅读全文
posted @ 2022-03-21 20:37 flydean 阅读(335) 评论(1) 推荐(0) 编辑
摘要: 简介 github是大家常用的代码管理工具,也被戏称为世界上最大的程序员交友网站,它的每次升级都会影响很多用户。在我的个人github网站上,之前在做JAVA NIO demo的时候上传了一个自制的大文件,最近对这个项目进行了一些修改,但是却上传不上github网站了,查看报错的原因,就是说项目中有 阅读全文
posted @ 2022-03-18 12:54 flydean 阅读(1217) 评论(2) 推荐(0) 编辑
摘要: 简介 channel是连接客户端和服务器端的桥梁,在netty中我们最常用的就是NIO,一般和NioEventLoopGroup配套使用的就是NioServerSocketChannel和NioSocketChannel,如果是UDP协议,那么配套使用的就是NioDatagramChannel,如果 阅读全文
posted @ 2022-03-16 09:47 flydean 阅读(735) 评论(0) 推荐(0) 编辑
摘要: 简介 不同的系统或者协议可以接受的数据类型是不同的,如果要在那些不支持现有数据格式的系统或者协议中进行数据传输的话,就需要进行数据转换。 IANA的全称是The Internet Assigned Numbers Authority,也叫做互联网数字分配机构,是一个负责协调互联网的事务让Intern 阅读全文
posted @ 2022-03-14 17:01 flydean 阅读(494) 评论(1) 推荐(1) 编辑
摘要: 简介 无规矩不成方圆,无标准不成网络通信。正是在各种网络协议和标准的基础之上,才构建了我们现在流行的互联网。今天给大家介绍的就是一个网络标准格式,叫做MIME,它的全称是Multipurpose Internet Mail Extensions,翻译过来就是多用途Internet邮件扩展。 那么有小 阅读全文
posted @ 2022-03-11 07:31 flydean 阅读(739) 评论(1) 推荐(3) 编辑
摘要: 简介 netty为什么快呢?这是因为netty底层使用了JAVA的NIO技术,并在其基础上进行了性能的优化,虽然netty不是单纯的JAVA nio,但是netty的底层还是基于的是nio技术。 nio是JDK1.4中引入的,用于区别于传统的IO,所以nio也可以称之为new io。 nio的三大核 阅读全文
posted @ 2022-03-09 18:50 flydean 阅读(2584) 评论(0) 推荐(0) 编辑
摘要: 简介 在netty中不管是服务器端的ServerBootstrap还是客户端的Bootstrap,在创建的时候都需要在group方法中传入一个EventLoopGroup参数,用来处理所有的ServerChannel和Channel中所有的IO操作和event。 可能有的小伙伴还稍微看了一下nett 阅读全文
posted @ 2022-03-07 21:17 flydean 阅读(718) 评论(1) 推荐(0) 编辑
摘要: 简介 netty作为一个异步NIO框架,多线程肯定是它的基础,但是对于netty的实际使用者来说,一般是不需要接触到多线程的,我们只需要按照netty框架规定的流程走下去,自定义handler来处理对应的消息即可。 那么有朋友会问了,作为一个NIO框架,netty的多线程到底体现在什么地方呢?它的底 阅读全文
posted @ 2022-03-04 13:50 flydean 阅读(771) 评论(1) 推荐(1) 编辑
摘要: 简介 我们知道ChannelHandler有两个非常重要的子接口,分别是ChannelOutboundHandler和ChannelInboundHandler,基本上这两个handler接口定义了所有channel inbound和outbound的处理逻辑。 不管是ChannelHandler还 阅读全文
posted @ 2022-03-02 14:05 flydean 阅读(2040) 评论(1) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 49 下一页