
网络编程
文章平均质量分 81
网络编程
井九111
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
签名机制笔记
签名不是万能的安全手段,而是一环。你要把它放在:✅ 签名 + 鉴权(身份)+ 权限控制 + 传输加密 + 风控追责这五层组合下看待,才能构建真正稳固的安全体系。原创 2025-06-27 00:14:30 · 407 阅读 · 0 评论 -
异地租网笔记
异地租网不是“拉根线”那么简单,而是:跨公网建私通道、合理路由转发、IP规划配合,实现逻辑“同一局域网”的通信效果。原创 2025-06-24 12:49:57 · 487 阅读 · 0 评论 -
内网穿透的笔记
内网设备主动连接一个拥有公网 IP 的服务器,建立通道,使外网用户可通过该服务器访问内网服务。关键点说明主动连接内网无法被动接收外部请求,只能主动发起连接公网服务器作为“跳板机”或“中转服务器”,拥有公网IP注册映射关系内网服务注册其本地 IP + 端口,暴露给公网反向代理/转发公网服务器接收请求后,将请求“反向”通过已建立通道转发到内网内网穿透的核心不是“穿透”墙,而是内网主动打洞 + 公网转发代理,是逆向连接 + 动态反向代理的综合体。原创 2025-06-24 12:32:13 · 288 阅读 · 0 评论 -
本地回环 vs Unix 域套接字
本地回环是在“本地模拟网络”,而 Unix 域套接字是“内核内部直传”。所以在单机进程间通信时,Unix 域套接字显著更快。原创 2025-06-11 14:54:46 · 402 阅读 · 0 评论 -
对一部分框架的看法
(如Spring Boot、Spring Cloud)通过对Spring框架的封装,简化了开发,尤其是在微服务架构下提供了自动化配置、服务治理等功能。(如Kafka、RabbitMQ)是基于网络通信框架(如Netty)进行封装,提供了更高层次的功能,如消息队列、持久化、消息确认等。:Nacos不仅是配置中心,也是服务注册与发现中心,类似Spring的容器化管理,提供了动态配置、服务发现等功能。:对Netty进行更高层次的封装,提供消息传递、持久化、流量控制等功能,适用于分布式系统中的解耦与高吞吐量需求。原创 2025-06-06 17:19:17 · 277 阅读 · 0 评论 -
消息中间件的通信和丢失问题
网络通信和分布式系统的设计不能做到百分百不丢失数据,只能通过协议优化、容错机制、冗余设计等手段降低丢失的概率。特别是在分布式系统中,由于网络波动、节点宕机、磁盘故障等原因,数据丢失的概率始终存在。:Kafka等系统通过分区副本来保证数据的高可用性,即使某个节点宕机,数据也能从其他副本中恢复。,如增加更多的 Broker 节点、分区、副本等,以提高系统的可用性和稳定性。:没有重传机制,适用于对实时性要求较高的场景,但数据丢失的风险较大。等设计,提高了消息的可靠性,但仍无法避免在极端故障下的数据丢失。原创 2025-06-06 17:01:25 · 368 阅读 · 0 评论 -
MQTT 协议笔记
核心理念:引入中间件(Broker)思想MQTT 采用发布/订阅架构,消息通过 Broker 统一管理,发布者和订阅者之间解耦,简化设备通信复杂度,提升系统可扩展性和灵活性。极简消息格式,缩短消息体设计极简报头,最小报文仅2字节,减少网络传输数据量,降低低资源设备和低带宽网络的压力。消息级别的可靠传输机制(QoS)在基于 TCP 的可靠传输基础上,MQTT 定义三种 QoS 等级,确保消息“不丢失、不重复、不乱序”,特别是 QoS 2 保证消息恰好一次传递,满足物联网设备对消息语义的严格要求。原创 2025-06-04 11:39:22 · 803 阅读 · 0 评论 -
链路追踪的理解
链路追踪通过统一的 TraceId 贯穿所有服务调用,生成每个节点的 Span 并上报,实现完整调用链的跟踪与分析。它依赖于上下文传递机制,不干扰业务协议主体,通过请求头或元数据携带追踪信息,构建清晰的调用拓扑和性能视图。是现代分布式系统不可或缺的监控与诊断利器。原创 2025-06-04 11:20:12 · 719 阅读 · 0 评论 -
http演化过程
好的,我给你把HTTP演化过程梳理清楚,再详细讲多路复用的机制和它的传输特点。原创 2025-06-04 11:04:14 · 402 阅读 · 0 评论 -
rpc协议
在同一个物理连接(如 TCP 连接)上,同时并发传输多个独立的请求和响应消息流。原创 2025-06-04 10:51:42 · 919 阅读 · 0 评论 -
rpc框架主体思想
步骤接口级注册模块级注册1. 请求接收接收客户端请求接收客户端请求2. 服务定位从注册中心获取接口对应实现,或依赖Spring容器查找从本地维护的服务容器定位接口实现3. 方法调用反射调用接口实现方法容器内实例直接调用接口实现方法4. 返回结果返回调用结果返回调用结果客户端调用接口的代理方法。代理封装请求,查询注册中心获取服务地址。选取服务实例,发送网络请求。服务端处理请求,执行接口实现。返回结果给客户端代理。客户端代理返回结果给调用者。原创 2025-06-04 10:41:58 · 327 阅读 · 0 评论 -
rpc协议,rpc框架和openfeign
OpenFeign 曾在 Dubbo 尚未现代化时,用 HTTP + 注解的方式提升了微服务开发体验,解决了“RPC 框架不够好用”的问题;而现在 Dubbo 2.7+ 和 3.x 已全面升级,支持 Spring Boot、跨语言、现代协议和云原生,不仅不落后,反而在某些场景优于 OpenFeign。原创 2025-05-26 11:13:05 · 369 阅读 · 0 评论 -
Netty 核心原理与优化机制笔记
需要 2 次 CPU 拷贝(内核→用户,用户→内核)只需 1 次 CPU 拷贝(内核→堆外内存),避免了用户堆内存的额外拷贝0 次 CPU 拷贝,完全零拷贝,效率最高线程模型优化:多线程 + 多路复用(EventLoopGroup + Selector)责任链解耦:ChannelPipeline 管理编码、解码和业务处理器零拷贝技术:DirectByteBuffer 降低拷贝,FileRegion 利用 sendfile 彻底零拷贝。原创 2025-05-25 02:35:47 · 771 阅读 · 0 评论 -
网络通信-IP解析
IP 地址的网络号由子网掩码决定,不能单看前三段IP。判断两台设备是否在同一局域网,必须比较两者的子网掩码是否相同,且按掩码计算的网络号是否相同。了解私有地址段,便于识别局域网内部设备。原创 2025-05-22 18:47:28 · 584 阅读 · 0 评论 -
同步异步,阻塞非阻塞,以及BIO,NIO,AIO网络编程模型的演变过程。
你说得对,BIO模型的缺点并非因为线程池资源耗尽,而是因为每个连接都会创建一个线程,这在高并发时会导致大量线程的创建和资源浪费,线程池是在这个问题被发现后用来优化的。这样,应用程序不再需要等待,也不需要轮询状态。随着并发请求数的增多,系统会快速消耗大量的线程资源,这会导致严重的性能瓶颈。:为了避免每个连接创建一个线程的问题,线程池的引入可以让线程复用,这样系统不会为每个请求都创建新的线程。:由于线程的阻塞性质,在I/O操作完成之前,线程不能处理其他任务,因此BIO模型在高并发、大规模连接场景下的效率低下。原创 2025-05-10 16:43:52 · 769 阅读 · 0 评论 -
自定义WebSocKet的实现
在高并发、低延迟的网络通信框架中,应用层协议的设计和实现对系统的整体性能至关重要。本文将介绍一个基于自定义协议的WebSocket替代方案,讨论协议体的设计、消息字段定义、分片机制及并发支持等方面,并结合代码实例展示如何实现一个高效的协议解析和分片重组工具。原创 2025-05-09 19:27:37 · 1933 阅读 · 0 评论