标签:网络
-
阿里terway源码分析
背景 随着公司业务的发展,底层容器环境也需要在各个区域部署,实现多云架构, 使用各个云厂商提供的CNI插件是k8s多云环境下网络架构的一种高效的解法。我们在阿里云的方案中,便用到了…
-
【面试】一篇文章帮你彻底搞清楚“I-O多路复用”和“异步I-O”的前世今生
曾经的VIP服务 在网络的初期,网民很少,服务器完全无压力,那时的技术也没有现在先进,通常用一个线程来全程跟踪处理一个请求。因为这样最简单。 其实代码实现大家都知道,就是服务器上有…
-
网络:TCP、IP协议族(二)HTTP报文头解析
本篇博客我们就来详细的聊一下HTTP协议的常用头部字段,当然我们将其分为请求头和响应头进行阐述。下方是报文头每个字段的格式,首先是头部字段的名称,如Accept,冒号后方紧跟的是该…
-
网络:TCP、IP协议族(三)数字签名与HTTPS详解
前面几篇博客聊了HTTP的相关东西,今天就来聊一聊HTTPS的东西。因为HTTP协议本身存在着明文传输、不能很好的验证通信方的身份和无法验证报文的完整性等一些安全方面的确点,所以才…
-
网络:TCP、IP协议族(一)HTTP简介、请求方法与响应状态码
接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的。接下来的几篇博客都是关于TCP/IP协议族…
-
第5篇:Java IO 网络
原文链接 作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) 校对:方腾飞 Java中网络的内容或多或少的超出了Java IO的范畴。…
-
02-二、NoSQL 简介
引言 NoSQL (NoSQL = Not Only SQL ),意即"不仅仅是SQL" 在现代的计算系统上每天网络上都会产生庞大的数据量 这些数据有很大一部分…
-
000-网络编程系列(一)
多线程文章链接 [1.网络编程之多线程Runnable](https://www.ycbbs.vip/?p=320 "1.网络编程之多线程Runnable") …
-
019-十九、网络编程Netty 粘包 & 拆包 & 编码 & 解码 & 序列化
前言 Netty 作为一个网络框架,对 TCP 连接中的问题都做了全面的考虑,比如粘包拆包导致的半包问题,如何编解码,如何实现私有协议,序列化等等。 本文主要针对这些问题做一个简单…
-
018-十八、网络编程Netty 解码器抽象父类 ByteToMessageDecoder 源码解析
前言 Netty 的解码器有很多种,比如基于长度的,基于分割符的,私有协议的。但是,总体的思路都是一致的。 拆包思路:当数据满足了 解码条件时,将其拆开。放到数组。然后发送到业务 …
-
017-十七、网络编程Netty实现一个简单的 RPC
前言 众所周知,dubbo 底层使用了 Netty 作为网络通讯框架,而 Netty 的高性能我们之前也分析过源码,对他也算还是比较了解了。今天我们就自己用 Netty 实现一个简…
-
016-十六、网络编程-NIO、BIO、AIO
引言 java.nio全称java non-blocking IO,是指jdk1.4 及以上版本里提供的新api(New IO),为所有的原始类型(boolean类型除外)提供缓存…
-
015-十五、网络编程-ServerSocket(二)
引言 前面已经讲过线程池和ServerSocket的编程了,这一节讲讲怎么在ServerSocket中结合线程池使用。 现在服务器端采用的实现方式是:一个客户端对应一个线程。但是,…
-
014-十四、网络编程-ServerSocket(一)
引言 上一节讲解socket的基本使用,这一节来顺带着讲讲socket的一个自认为重要的设置选项的方法,哈哈,多多少少会在今后的开发中使用到。还是比较好用的。 public voi…
-
013-十三、网络编程-Socket(二)
引言 java.net.Socket 类代表客户端和服务器都用来互相沟通的套接字。客户端要获取一个 Socket 对象通过实例化 ,而 服务器获得一个 Socket 对象则通过ac…
-
012-十二、网络编程-Socket(一)
引言 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。 java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直…
-
011-十一、网络编程之网络编程-UDP
引言 UDP 是 User Datagram Protocol的简称, 中文名是用户数据报协议,是 OSI(Open System Interconnection,开放式系统互联)…
-
010-十、网络编程多线程之线程池
引言 线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。线程池线程都是后台线程。每个线程都使用默认的堆栈大小,以默认的优先级运行,并处于多线…
-
009-九、网络编程之多线程之单例模式
引言 java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例、登记式单例。 单例模式有以下特点: 1、单例类只能有一个实例。 2、…
-
008-八、网络编程之多线程之管道流
引言 在java语言中提供了很多输入与输出流,使我们方便了对数据进行操作,其中管道流是一种特殊的流,用于在不同线程间直接传输数据。一个线程发送到输出管道,另一个线程从输入管道中读取…