领导者-追随者模式

Linux服务器--两种高效的并发模式(半同步/半异步模式、领导者/追随者模式) 并发模式是指I/O处理单元和多个逻辑单元之间协调完成任务的方法1、半同步/半异步模式1.1半同步/半异步模式【1】同步:程序完全按照代码顺序执行;异步:程序的执行需要由系统事件来驱动。常见的系统事件包括中断,信号等。【2】同步线程:按照同步方式运行的线程;异步线程:按照异步方式运行的线程。 异步线程执行效率高,实时性强,但是程序相对负责,难以调试和扩展,不适合于大量的并发。 同步线程效率相 阅读详情

转自http://blog.youkuaiyun.com/lmh12506/article/details/8243044

领导者-追随者模型介绍

这几天翻了些文章,发现对领导者/追随者模型说的比较少,下面就这个模型打个比方:

1.话说一个地方有一群有组织无纪律的人从事山贼这个很有前途的职业。

2.一般就是有一个山贼在山路口察看,其他人在林子里面睡觉。

3.假如发现有落单的过往客商,望风的山贼就会弄醒一个睡觉的山贼,然后自己去打劫。

4.醒来的山贼接替作望风的事情。

5.打劫的山贼搞定以后,就会去睡觉,直到被其他望风的山贼叫醒来望风为止。

6.有时候过往客商太多,而山贼数量不够,有些客商就能侥幸平安通过山岭(所有山贼都去打劫其他客商了)。

下面是这个模式的计算机版本:

1.有若干个线程(一般组成线程池)用来处理大量的事件

2.有一个线程作为领导者,等待事件的发生;其他的线程作为追随者,仅仅是睡眠。

3.假如有事件需要处理,领导者会从追随者中指定一个新的领导者,自己去处理事件。

4.唤醒的追随者作为新的领导者等待事件的发生。

5.处理事件的线程处理完毕以后,就会成为追随者的一员,直到被唤醒成为领导者。

6.假如需要处理的事件太多,而线程数量不够(能够动态创建线程处理另当别论),则有的事件可能会得不到处理。

这个模型其实并不难于理解,但是我想假如是中国人给起的名字的话,也许会叫作 “皇帝轮流做,今年到我家” 模型更加贴切,因为领导者追随者之间是一种平等的关系。这不符合大部分人对于”领导者-追随者”的通常意义的理解。

21、斯塔克尔伯格领导者/追随者模型与距离几何研究 本博文探讨了斯塔克尔伯格领导者/追随者模型与距离几何(Distance Geometry)的理论基础及其应用。首先介绍了斯塔克尔伯格层级博弈模型,其中参与者按顺序行动并具有领导者与追随者的双重身份,讨论了其在顺序生产等场景的应用及未来研究方向。接着详细阐述了距离几何的基本概念、历史发展、问题变体以及在多个领域的应用,如网络同步、无线定位、蛋白质结构分析和机器人运动分析。此外,还总结了距离几何在大数据分析中的作用,包括多维尺度分析(MDS)和约翰逊-林登施特劳斯引理等关键技术。 阅读详情

相关推荐

两种高效的并发模式:半同步/半异步模式、领导者/追随者模式

半同步/半异步模式、半同步/半反应堆模式、相对高效的半同步/半异步模式、领导者/追随者模式

ZY-JIMMY 2201

leader-follower model

领导者-跟随者模型如下: 有若干个线程(一般组成线程池)用来处理大量的事件有一个线程作为领导者,等待事件的发生;其他的线程作为追随者,仅仅是睡眠。假如有事件需要处理,领导者会从追随者中指定一个新的领导者,自己去处理事件。唤醒的追随者作为新的领导者等待事件的发生。处理事件的线程处理完毕以后,就会成为追随者的一员,直到被唤醒成为领导者。假如需要处理的事件太多,而线程数量不够(能够动态创建线程处理

onlyou2030的博客 1081

leader/followers pattern(领导者/跟随者模式)

开发高性能并发服务器的必学模式,文档中给出了很好的解决方案

高效并发模式之领导者/追随者模式

一、基本概念 领导者/追随者模式是多个工作线程轮流获得事件源集合,轮流监听、分发并处理事件的一种模式。在任何时间点,只要一个领导者线程,他负责监听I/O事件。而其他线程则都是追随者,他们休眠在线程池中等待称为新的领导者。当前领导者如果检测到I/O事件,首先从线程池中推选出新的领导者线程,处理I/O事件。此时新的领导者等待新的I/O事件,而就得领导者则处理I/O事件,从而实现了并发。 二、组成部...

柴犬小丸子的博客 895

opencv的cmake报错

1、下载 ippicv_2021.8_win_intel64_20230330_general.zip、v0.1.2a.zip、opencv_videoio_ffmpeg.dll、opencv_videoio_ffmpeg_64.dll、ffmpeg_version.cmake。由于下载源在https://raw.githubusercontent.com,由于网络原因下载不顺畅,可以先找到文件下载到对应文件夹下,或者更改网络环境。ffmpeg_version.cmake文件,打开后显示如下, 另存即可。

nownow_的博客 1298

Python数据爬取超详细讲解(零基础入门,老年人都看的懂)

Python数据爬取超详细讲解(零基础入门,老年人都看的懂)

python03011的博客 3751

领导者追随者模式

适用条件: 多线程处理任务 过程: 有一个线程作为领导者,等待事件的发生;其他的线程作为追随者,仅仅是睡眠。 假如有事件需要处理,领导者会从追随者中指定一个新的领导者,自己去处理事件。 唤醒的追随者作为新的领导者等待事件的发生。 处理事件的线程处理完毕以后,就会成为追随者的一员,直到被唤醒成为领导者。 假如需要处理的事件太多,而线程数量不够(能够动态创建线程处理另当别论),则有的

lq123的博客 1958

WPS JS宏实战:批量调整200个Word表格格式的避坑指南(附完整代码)

本文提供了一份详尽的WPS JS宏实战指南,针对批量调整大量Word表格格式的需求。文章深入解析了如何利用JS宏自动化设置字体、行距和边框,并重点解决了常见的“首行访问报错”等核心难题,附有可直接使用的完整代码,帮助用户显著提升文档处理效率。

weixin_29280219的博客 429

领导者-追随者模型介绍

领导者-追随者模型介绍 这几天翻了些文章,发现对领导者/追随者模型说的比较少,下面就这个模型打个比方: 话说一个地方有一群有组织无纪律的人从事山贼这个很有前途的职业。一般就是有一个山贼在山路口察看,其他人在林子里面睡觉。假如发现有落单的过往客商,望风的山贼就会弄醒一个睡觉的山贼,然后自己去打劫。醒来的山贼接替作望风的事情。打劫的山贼搞定以后,就会去睡觉,直到被其他望风的山贼叫醒来望

fei的专栏 3401

微信小程序云开发订单微信支付与小票和标签打印的完整高效流程

本片文章全文12000字,细致讲述从申请账户到小程序注册到打印机的选型最后到实现微信小程序云开发订单支付更新与小票,标签打印完整的高效流程。客户A在我们的点餐平台上点了一杯咖啡,所以客户要在选好后付款,在付款完成后商家的小票打印机和标签打印机打印出本订单的相关信息。

weixin_52312427的博客 3649

UE4虚拟现实实习总结---蓝图中的常用交互事件|人物行走|物体移动|动态触发|材质改变

这周是ue4实习周,老师给我们的任务就是基于中学物理和化学实验的虚拟实验室,要有交互事件,后期可以链接vr手柄进行操作。 但是实习开始老师影都没了,全靠自己学习。感觉自己学习了不少东西,这里就来总结一下!顺便感叹一下,ue4好玩又强大! 以下主要介绍蓝图中的几种交互事件1.新建游戏角色并且进行角色行走旋转,2.如何控制物体移动旋转,3.如何控制物体材质动态变化 大家可以举一反三,作出更好的作品 1.新建游戏角色并且进行角色行走旋转 步骤 在刚刚新建的文件夹中鼠标右击新建蓝图类,然后分别创建以下:chara

weixin_43902063的博客 6120

【Java设计模式】领导者 - 追随者模式

领导者 - 追随者模式的目的是有效地管理一组工作线程,使多个线程能够轮流共享一组事件源,与每个源使用一个线程的方法相比,优化了资源利用率并提高了性能。

道长的博客 1118

Diffusion Models扩散模型与深度学习(数学原理和代码解读)

​ 此前GANs霸占各大顶会很多年,DDPM的出现让人耳目一新!经过这两年的发展,Diffusion Models能在图像生成、超分辨率重建、点云生成、语音生成等领域达到SOTA。这篇文章旨在帮助没有了解过的读者入门,《Diffusion Models与深度学习专栏》已经写了将近三十篇文章,既有原理公式和必备基础知识的讲解,也有代码详细实战解读,还有前沿热门应用,欢迎读者订阅。

沉迷单车的追风少年 4万+

两种并发模式:半同步半异步 领导者追随者

介绍 半同步半异步 介绍 变体 半同步半反应堆 高效的半同步半反应堆领导者追随者 介绍 实现 组成 过程 优缺点 介绍 并发模式是指IO处理单元和多个逻辑单元之间协调完成任务的方法 主要有半同步半异步领导者追随者两种模式。 半同步半异步 介绍 同步线程是指线程程序完全按照代码序列...

vjhghjghj的博客 650

爆肝整理:微信公众号文章HTML编写完整规范,运营必备手册

微信公众号文章排版总是出错?📱 这份完整的HTML编写规范文档帮你彻底解决!文档包含所有支持的标签、CSS属性、实用代码模板和注意事项 📋,让你快速掌握微信文章的HTML编写技巧,告别第三方编辑器依赖 ✅

XiaoqiangClub的博客 2302

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

领导者-追随者 模式

领导者/追随者(Leader/Follower)1.问题 多线程是实现并发处理多事件的应用程序的一种常用技术。然而,很难实现高性能的多线程服务器应用程序。这些应用程序通常处理大量同时到达的多类型事件。为了有效地处理这种问题,有三个强制条件必须解决: 1)服务请求可以来自为每个已连接的客户机分配的多事件源(如多TCP/IP套接字句柄)。因此,一个关键设计强制条件是在线程和事件源间确定有效的多路分解

github_33736971的博客 5824

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

两种高效的并发模式——半同步/半异步、领导者/追随者模式

一、并发模式中的同步和异步的区别 1、同步:程序完全按照代码顺序执行(简单理解就是,我调用一个功能该功能没有结束前,我就一直死等结果) 2、异步:程序的执行需要由系统事件来驱动,常见的系统事件包括中断、信号等(简单理解为:调用一个功能,不需要指代该功能最后执行的结果,该功能有结果后再通知我就行(回调通知)。也可以理解为:数据拷贝的时候,进程是否阻塞来作为同步和异步的区别)。常见的系统事件包括中...

Y~哈哈哈的博客 575

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

半同步/半异步模式和领导者/追随者模式

半同步半异步模式:出现原因: 异步线程执行效率高,但是编写复杂,同步线程效率低,但是逻辑简单。服务器要求好的实时性和同时处理多用户的请求,英雌采用两者结合的形式。 具体情况: 过程: 异步线程见听到客户请求后,将其封装成请求对象插入请求队列,请求队列将通过通知某个工作在同步模式下的工作线程来读取并处理该请求对象。具体选择哪一个工作线程来服务这个客户请求,取决于请求队列的设计。变体:半同步半反

zhuziyu1157817544 2224

【Linux高性能服务器编程】两种高性能并发模式剖析——领导者/追随者模式

领导者/追随者模式是多个工作线程轮流获得事件源集合,轮流监听、分发并处理事件的一种模式。在任意时间点,程序都仅有一个领导者线程,它负责监听I/O事件。而其他线程则都是追随者,它们休眠在线程池中等待成为新的领导者。当前的领导者如果检测到IIO事件,首先要从线程池中推选出新的领导者线程,然后处理I/O事件。此时,新的领导者等待新的I/O事件,而原来的领导者则处理I/O 事件,二者实现了并发。

weixin_73951752的博客 1568

Linux网络编程 | 并发模式:半同步/半异步模式、领导者/追随者模式

文章目录同步与异步半同步/半异步模式变体:半同步/半反应堆模式改进:更高效的半同步/半异步模式领导者/追随者模式组件 :句柄集、线程集、事件处理器 并发模式是指I/O处理单元和多个逻辑单元之间协调完成任务的方法。服务器主要有两种并发编程模式:半同步/半异步模式(half-sync/half-async)模式和领导者/追随者(Leader/Followers)模式 同步与异步 首先在这里要指出,这里的"同步"和“异步”与I/O模型中的”同步I/O“与“异步I/O”是两个完全不同的概念,不能将其混淆。 在I

凌桓丶的博客 1738

高并发模式———领导者/追随者模式和半同步/半异步模式

高并发模式  高并发模式的意义:对于IO密集型的操作,因为IO操作速度远远小于CPU的计算速度,所以,如果程序阻塞于IO操作将大量浪费CPU。但是如果多线程的情况下,被IO阻塞的线程可以放弃CPU(或操作系统调度),将执行权限转移给其他线程。高效率的使用CPU。 半同步/半异步模式   这里的同步模式是指程序按照代码序列的顺序执行,异步是指程序执行需要由系统事件来驱动 ...

qq_41885826的博客 416

两种高效的并发模式(半同步/半异步模式 领导者/追随者模式)

半同步/半异步模式: 首先要区别于I/O模型中的同步异步: I/O模型中: 同步和异步是指内核向应用程序通知的是何种I/O事件(就绪事件/完成事件),以及该由谁来完成I/O读写(应用程序/内核);I/O模型中的同步和异步是用来形容I/O事件的完成。 半同步与半异步模式中: 同步主要是指程序完全按照代码序列的顺序执行;异步是指程序的执行需要由系统事件来驱动(常见的系统事件:中断,信号...

qq_41899255的博客 807

Linux服务器编程实践104-领导者/追随者模式:线程轮流监听与处理事件的机制

本文介绍了Linux服务器编程中的领导者/追随者并发模式,该模式通过线程轮流担任"领导者"角色监听I/O事件,其余线程作为"追随者"等待处理任务,有效降低了线程同步开销和数据传递成本。文章详细剖析了该模式的四大核心组件(句柄集、线程集、事件处理器等)及其协作机制,提供了基于Linux系统调用(pthread、epoll)的完整实现示例,包括TCP连接处理等具体应用场景。与半同步/半异步模式相比,该模式更适合I/O密集型、低延迟要求的服务场景,但需注意其单一事件源限制和

文石_2009的博客 1033

Linux服务器编程实践105 - 领导者/追随者模式的组件:句柄集、线程集与事件处理器

本文深入解析了高并发服务器中的领导者/追随者模式,重点介绍了三大核心组件(句柄集、线程集、事件处理器)的设计与实现。该模式通过轮换领导者角色监听I/O事件,避免了线程间数据传递和锁竞争,特别适合高并发I/O场景。文章详细阐述了各组件功能、接口设计及实现要点,包括基于epoll的句柄集管理、线程状态切换机制和事件处理器的模板方法模式。同时提供了完整工作流程说明、典型应用场景和性能优化建议,并与其他并发模式进行对比,指出其在I/O密集型服务中的优势。最后总结了该模式的关键实现要点,为构建高性能Linux服务器提

文石_2009的博客 899
上一篇: reactor模式与proactor模式
下一篇: 领导者-追随者 模式
lm_123_456
博客等级 码龄11年 35粉丝 86原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值