
网络编程 & NIO & Netty
文章平均质量分 94
点滴~
进阶中的工程师
展开
-
RPC相关知识点
目录RPC 相关的重要知识点常见的RPC框架Dubbo的原理RPC(Remote Procedure Call)即远程过程调用,是一种计算机通信协议,允许程序调用远程计算机上的过程或函数,而无需了解底层网络细节。以下是一些 RPC 相关的重要知识点:RPC 是分布式系统中实现服务间通信的重要技术,理解和掌握这些知识点对于开发高性能、可靠的分布式应用至关重要。核心架构与组件Dubbo 采用分层架构设计,主要组件包括服务提供者(Provider)、服务消费者(Consumer)、注册中心(Registry)、监原创 2025-02-20 22:38:38 · 138 阅读 · 0 评论 -
分布式任务调度实现原理
负责任务的注册、监控和状态管理,包括任务的提交、取消和重试等操作。根据系统资源的实时情况,决定任务应该在哪个节点上执行,以确保资源的最优利用。处理节点故障、或任务执行失败的情况,保证任务能够被、及时重新调度和执行。确保任务调度系统本身的高可用性,防止单点故障对整个系统造成影响。通常在分布式任务调度系统中,会涉及到以下三个重要的组件:Scheduler 负责任务的合理调度,Trigger 负责根据条件触发任务的执行,而 Job 则是具体的执行单元,执行任务的实际逻辑。原创 2024-11-05 23:22:07 · 828 阅读 · 0 评论 -
RPC核心实现原理
步骤1:服务提供方启动时将服务注册到注册中心。步骤2:服务消费方启动时从注册中心订阅自己需要服务的地址。步骤3:注册中心把已经注册的服务提供者地址,返回给消费方。步骤4:消费方根据路由规则与负载均衡策略,选择一个提供者地址进行调用。步骤5:调用双方与监控平台建立定时发送机制,用来统计调用次数与耗时等相关数据。原创 2024-11-05 22:43:40 · 1334 阅读 · 0 评论 -
Nginx线程模型
Nginx的线程模型具有其独特的设计特点,主要基于多进程和异步非阻塞的处理机制。原创 2024-11-05 00:06:29 · 656 阅读 · 0 评论 -
Redis线程模型
Redis基于Reactor模式开发了自己的网络事件处理器,即文件事件处理器(file event handler,FEH)。该处理器是单线程模式运行的,因此Redis的线程模型也被称为单线程模型。但Redis通过IO多路复用机制监听多个socket,可以实现高性能的网络通信模型,同时又能与内部其他单线程的模块进行对接,保证了Redis内部线程模型的简单性。原创 2024-11-04 23:49:30 · 1870 阅读 · 0 评论 -
Netty的线程模型
Netty是一个基于NIO(非阻塞I/O)的客户端-服务器框架,它使用Reactor模式来实现高并发处理。Netty的线程模型是其高性能、高并发处理能力的重要支撑。原创 2024-11-04 23:31:40 · 1384 阅读 · 0 评论 -
WebSocket、Socket和Netty的关系
WebSocket与Socket的关系WebSocket是一种网络通信协议,而Socket是一种网络通信的抽象层或接口。WebSocket利用了Socket的全双工通信特点,通过TCP协议实现了长连接和双向通信。在实现WebSocket服务器或客户端时,通常会使用Socket API进行底层的网络通信。Netty与Socket的关系Netty是一个基于NIO的Java网络编程框架,它封装了底层的Socket API,提供了更高层次的抽象和更多的功能。原创 2024-08-23 16:31:17 · 1939 阅读 · 0 评论 -
Java NIO系列1:从操作系统的角度剖析I/O
认识IO的本质一、IO对性能的影响首先来理解下IO对程序性能的影响:从上面的表中可以得出的结论是:处理时间与IO时间对吞吐率的影响:把单位处理时间减半,仅能提高吞吐率2.2%。而仅仅缩短I/O延迟10%,就可使吞吐率增加9.7%;把I/O时间减半,吞吐率几乎翻番。二、理解BIO的局限性BIO,也称为阻塞IO,是在jdk1.4之前使用的IO模型,BIO的局限可以从下面的叙述中理解:现在大多数基于Ja...转载 2018-04-14 17:11:55 · 156 阅读 · 0 评论