Web 基础
文章平均质量分 90
谈谈1974
火萎了,我也准备走了
展开
-
SIP 协议路由规则详解
SIP 请求必须要经过的 SIP 服务器地址。SIP 协议实际上和 HTTP 类似,都是基于文本、可阅读的应用层协议。,二者的不同之处在于。原创 2023-08-27 16:20:13 · 1437 阅读 · 0 评论 -
排查 reactor-netty 报错 Connection reset by peer 的过程
文章目录1. 报错现象2. 排查过程2.1 Connection reset by peer 的原因2.2 syscall:read(..) failed: Connection reset by peer 错误3. 最终原因1. 报错现象组内一个服务从 spring-webmvc 框架切换到 spring-webflux,在线上跑了一段时间后偶现如下错误 log 。log 中 L:/10.0.168.212:8805 代表了本地服务所在的服务器 IP 和 端口,R:/10.0.168.38:473原创 2020-05-12 17:06:28 · 23294 阅读 · 2 评论 -
Java 文件下载名称为空问题解决 Access-Control-Expose-Headers
可以配置哪些响应头能够被外部客户端访问。所以想要让客户端可以访问到其他的响应头信息,服务端不仅要在 HTTP 响应里加入该响应头,还要通过额外的响应头。可以暴露给外部客户端访问,这 7 种响应头既可以在浏览器 Network 里看到,也可以在 JS 代码里获取。声明其可以被外部访问,最终生成可下载文件的 HTTP 响应的代码如下,这样前端就能够获取到。之所以会产生这种情况,是因为浏览器的安全功能限制。响应头,从浏览器的 Network 里也能看到。事实上,HTTP 协议的响应头。日常实现下载文件的需求,原创 2022-09-06 14:51:41 · 2686 阅读 · 0 评论 -
SkyWalking 实现跨线程 Trace 传递
在进程内采用异步多线程时,如果不做任何处理,SkyWalking 追踪执行链路的 trace 信息必然会出现中断。一般来说保证执行链路信息的完整是刚性需求,这时候为了实现 trace 信息的跨线程传递,就需要使用 SkyWalking 的异步任务包装类SkyWalking 的 Java 客户端提供了异步任务包装类用于完成多线程下 trace 的跨线程传递功能,目前有如下几个实现:以 为例,其使用示例如下:1.2 跨线程包装类的原理1.2.1 @TraceCrossThread 注解以下为 Suppl原创 2022-06-22 23:39:24 · 9495 阅读 · 0 评论 -
Linux 零拷贝机制的实现原理
文章目录前言1. DMA 的引入1.1 早期的文件 IO 处理过程1.2 DMA 发挥的作用2. 文件传输场景的技术实现2.1 传统 read / write 文件传输实现2.2 文件传输实现的改进2.2.1 虚拟内存映射 mmap / write 传输实现2.2.2 sendfile 实现的文件传输2.2.3 sendfile 结合 SG-DMA 实现的零拷贝前言所谓零拷贝并不是不复制数据,而是减少不必要的数据复制,甚至杜绝 CPU 参与的数据复制,进而将 CPU 从数据传输的工作负载中释放出来,提原创 2022-03-18 17:00:46 · 1446 阅读 · 0 评论 -
IO 多路复用 select / epoll 的原理
文章目录1. BIO 的基本流程2. select 的原理3. epoll 的实现1. BIO 的基本流程2. select 的原理3. epoll 的实现原创 2021-11-17 20:17:49 · 1208 阅读 · 0 评论 -
接口限流的常用算法
文章目录1. 漏桶算法2. 令牌桶算法1. 漏桶算法漏斗2. 令牌桶算法原创 2021-04-05 10:38:26 · 804 阅读 · 0 评论 -
HTTPS 原理解读
文章目录1. HTTPS 解决的问题2. HTTPS 安全实现2.1 服务器的身份认证2.2 客户端的安全识别1. HTTPS 解决的问题使用 非对称秘钥 传输用于加密数据的对称秘钥非对称加密效率不高,因为主要是大数乘法和大数取模运算对称加密效率较高,主要是位运算和移位操作2. HTTPS 安全实现2.1 服务器的身份认证2.2 客户端的安全识别......原创 2021-04-03 11:25:32 · 833 阅读 · 0 评论 -
TCP 拥塞控制
文章目录1. 拥塞控制的算法2. 拥塞控制的过程1. 拥塞控制的算法2. 拥塞控制的过程原创 2021-03-22 11:19:30 · 622 阅读 · 0 评论 -
Web 应用通信的演进-从 TCP 到 Service Mesh
文章目录1. Web 应用通信演进1.1 TCP 时代的到来1.2 微服务时代的演进1.3 Service Mesh 时代2. Service Mesh2.1 Service Mesh 的特点2.2 总结1. Web 应用通信演进要想理解 Service Mesh 到底是什么,那就有必要梳理一下在网络应用通信演进的历史,读者如有兴趣可以直接阅读 Pattern: Service Mesh,本节依据这篇文章梳理而来1.1 TCP 时代的到来在 TCP 协议出现之前,应用需要自己处理网络通信所面临的丢原创 2020-08-08 16:37:29 · 413 阅读 · 0 评论 -
Logback 日志过滤器的使用-日志分类归档方案
文章目录前言1. Logback 过滤器的分类2. 常规过滤器2.1 日志级别过滤器 LevelFilter2.2 日志评估过滤器 EvaluatorFilterJaninoEventEvaluator 的使用3. 全局过滤器4. 日志分类归档方案问题1方案问题2方案前言组内许多服务既有同步接口也有异步脚本,接口和脚本的日志都打印在同一个日志文件中,日志繁杂给排查问题带来不少的阻碍。为了解决这个问题,同事提了个按照接口分类日志文件的技术需求,也就是一个同步接口对应一个日志文件,从而将日志区分开。目前原创 2020-07-16 18:32:16 · 5030 阅读 · 2 评论 -
Java IO 模型及示例
文章目录1. BIO(同步阻塞IO)2. NIO(同步非阻塞IO)3. AIO(异步非阻塞IO)1. BIO(同步阻塞IO)2. NIO(同步非阻塞IO)3. AIO(异步非阻塞IO)原创 2020-03-08 16:08:49 · 622 阅读 · 0 评论 -
Reactor 与 Proactor 线程模型详解
文章目录1. Reactor 模式2. Proactor 模式1. Reactor 模式2. Proactor 模式原创 2020-06-17 17:10:47 · 2634 阅读 · 0 评论 -
TCP 拆包和粘包原因及解决方案
文章目录1. 拆包和粘包的概念2. 产生拆包和粘包的原因3. 解决方案1. 拆包和粘包的概念2. 产生拆包和粘包的原因3. 解决方案原创 2020-06-16 15:50:45 · 3377 阅读 · 0 评论 -
Slf4j 中的 MDC
文章目录1. MDC 的作用2. MDC 的使用1. MDC 的作用slf4j除了日常使用的几个日志接口外,还可以配合 MDC 将必要的数据写入日志,但它的使用方式与其他的日志接口不同。MDC 可以将一个处理线程中你想体现在日志文件中的数据统一管理起来,根据日志文件配置决定是否输出。比如以下场景可以考虑使用 MDC 来达到目的:在日志中体现请求用户IP地址记录一次处理线程的日志跟踪编号(...原创 2020-02-22 17:23:18 · 1466 阅读 · 0 评论 -
HTTP 协议简介
文章目录1. HTTP 协议简述2. HTTP 请求2.1 HTTP 请求消息的结构2.2 HTTP 请求的方法2.3 GET和POST请求的区别3. HTTP 响应3.1 HTTP 响应消息的结构3.2 HTTP 响应状态码4. HTTP 版本更迭4.1 HTTPS 与 HTTP4.2 HTTP1.1 的主要特性4.3 SPDY:HTTP1.X 的优化4.4 HTTP2.0 的特性1. HTT...原创 2019-10-06 15:21:49 · 901 阅读 · 0 评论 -
TCP 协议简介
文章目录1. TCP 连接建立1.1 三次握手过程1.2 相关状态2. TCP 连接释放2.1 四次挥手过程2.2 相关状态3. TCP 相关问题3.1 为什么连接的时候是三次握手,关闭的时候却是四次挥手3.2 为什么TIME_WAIT状态需要等待2MSL(最大报文段生存时间)3.3 MTU 与 MSS1. TCP 连接建立1.1 三次握手过程TCP 建立连接的过程被称为 三次握手客户端...原创 2019-09-21 21:31:41 · 465 阅读 · 0 评论 -
Web 细节汇总(1)-HTTP 与 RPC 的区别
文章目录1. Http 与 RPC 的区别1. Http 与 RPC 的区别原创 2019-09-21 10:27:52 · 651 阅读 · 0 评论 -
RPC 原理与实现
文章目录1. RPC 简介1.1 什么是RPCReference: LPC & IPC (本地过程调用)1.2 为什么要用RPC1.2.1 系统架构的演进1.2.2 Web 服务的技术结构1.2.2 SOAP ( Simple Object Access Protocol)1.2.2 REST(REpresentational State Transfort)SOAP & REST......原创 2019-08-28 21:58:18 · 4892 阅读 · 2 评论