网络编程
SimpleProgramming17
Java,大数据,Python喜欢算法。
分享一些后端知识,记录学习过程。
软件工作遵循骑行自行车第一定律:不论你去哪,你都会顶风骑上坡。
展开
-
5.Java AIO编程
NIO 跳转到NIO -不是真异步,是一个同步的通讯模式 举例:假如你去饭店吃饭 同步阻塞:当你下完单,你只能等在饭店里面,啥事也不能做,等待厨师完成,并亲自和饭店完成交接。 同步非阻塞:你下完单以后,可以外出,不用一直等待。但是会采用定期轮询的方法,随时来看饭菜是否完成。如果已制作完成,也需要亲自和饭店完成交接。 异步非阻塞:下完单后,可以外出,也不要定期查看厨师是否做好了(不用定期轮询)。而是交代下来,制作完成后,自动送到家里。(即制作完成后,自动进行一个回调函数执行(自动送达操作)) 并发编程的同原创 2020-05-24 00:10:31 · 170 阅读 · 0 评论 -
4.Java NIO编程
BIO 传统的TCP和UDP通讯:Blocking I/O I/O设备一边在写数据,由于写的速度过慢,另一边读的话必须要等待,出现阻塞,导致性能较差(两边速度不匹配,相差较大就会出现阻塞)。 Non-Blocking I/O 提供非阻塞通讯等方式 避免同步I/O通讯效率过低 一个线程管理多个连接 减少线程多的压力 Non-Blocking I/O,非阻塞I/O,(又名 New I/O) JDK1.4引入,1.7升级NIO 2.0(包括AIO) 主要类 Buffer 缓存区 Channel 通道 Sel原创 2020-05-22 12:47:23 · 182 阅读 · 0 评论 -
1.网络编程UDP
端口:0~65535 0~1023已经被OS(操作系统)占用了,80是Web,23是telnet 1024~65535,一般程序可使用(谨防冲突) 两台机器通讯就是在IP+Port上进行的 在Windows/Linux/Mac上都可以通过netstat -an来查询(netstat -an命令:统计当前这个网卡和外部之间的数据交换的数据netstat=network(网络)+statistics(统计)) 保留ip:127.01.01本机 公网:(万维网/互联网)和内网(局域网) 网络是分层的 最外层是原创 2020-05-17 13:23:01 · 293 阅读 · 0 评论