hoho,这个线程模型有点意思 糖太宗 • 2022年5月14日 上午12:39 • 技术 • 阅读 29 Leader-Follower是一种经典的多线程模型。 上图就是L/F多线程模型的状态变迁图,这个线程模型有6个关键点。 关键点一:线程三种状态。 (1)领导中,leading; (2)处理中,processing; (3)追随中,following; 关键点二:N个线程状态各异。 (1)只有1个leading线程(等待任务); (2)有x个processing线程(处理); (3)有N-1-x个following线程(空闲); 关键点三:有一把锁,谁抢到就是leading。 关键点四:事件/任务来到时,leading线程会对其进行处理,从而转化为processing状态,处理完成之后,又转变为following。 关键点五:丢失leading后,following会尝试抢锁,抢到则变为leading,否则保持following。 关键点六:following不干事,就是抢锁,力图成为leading。 这个线程模型有什么优点? 不需要消息队列。 这个线程模型适用什么场景? 线程能够很快的完成工作任务。 有人说“并发量大时,L/F的锁容易成为系统瓶颈,需要引入一个消息队列解决。”此观点不对,一个消息队列,其仍是临界资源,仍需要一把锁来保证互斥,只是锁竞争从leading移到了消息队列上,此时消息队列仅仅只能起到消息缓冲的作用。 根本解决方案是降低锁粒度(例如多个队列)。 F-L线程模型,你有使用过么? 发布者:糖太宗,转载请注明出处:https://www.qztxs.com/archives/science/technology/6624 多线程 赞 (0) 打赏 微信扫一扫 支付宝扫一扫 糖太宗 0 0 生成海报 这次终于懂了,InnoDB的七种锁(收藏) 上一篇 2022年5月14日 上午12:38 我CA,一个SQL语句为啥只执行了一半? 下一篇 2022年5月14日 上午12:39 相关推荐 技术 IAST测试靶场搭建 0x00 前言 测试用例的选择尽量贴近真实业务使用的场景,覆盖常见的高危漏洞,以及各类请求形式。用于测试IAST产品支持检测漏洞类型、检出率、脏数据插入等等 0x01 靶场选择 靶场 DVWA Openrasp-testcases 技术栈 PHP/MYSQL JAVA/PHP/MYSQL 支持漏洞类型 https://github.com/di... 常山赵子龙 2022年6月13日 133000 技术 什么事Spark(轻松学习 Spark) 今天给大家分享一篇 Spark 核心知识点的梳理,对知识点的讲解秉承着能用图解的就不照本宣科地陈述,力求精简、通俗易懂。希望能为新手的入门学习扫清障碍,从基础概念入手、再到原理深入,由浅入深地轻松掌握 Spark。 1、初识 Spark Spark不仅能够在内存中进行高效运算,还是一个大一统的软件栈,可以适用于各种各样原本需要多种不同的分布式平台的场景。 背... 糖太宗 2022年5月22日 77000 技术 MySQL事务已提交,数据却丢了(MySQL事务提交,数据丢失) 有个水友提问: 老师,我们有一次MySQL崩溃,重启后发现有些已经提交的事务对数据的修改丢失了,不是说事务能保证ACID特性么,想问下什么情况下可能导致“事务已经提交,数据却丢失”呢? 这个问题有点复杂,得先从redo log说起。 为什么要有redo log? 事务提交后,必须将事务对数据页的修改刷(fsync)到磁盘上,才能保证事务的ACID特性... 糖太宗 2022年5月10日 41001 技术 帖子中心,1亿数据,架构如何设计? 帖子中心,是互联网业务中,一类典型的“1对多”业务,即:一个用户能发布多个帖子,一个帖子只有一个发布者。 随着数据量的逐步增大,并发量的逐步增大,帖子中心这种“1对多”业务,架构应该如何设计,有哪些因素需要考虑,是本文将要系统性讨论的问题。 什么是x对x? 所谓的“1对1”,“1对多”,“多对多”,来自数据库设计中的“实体-关系”ER模型,用来描述实体之... 糖太宗 2022年5月14日 21000 mysql-python安装时mysql_config not found 0x00 描述 mysql-python安装时提示mysql_config not found 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # pip install MySQL-python Collecting MySQL-python Using cached https://files.pythonhosted.org/pack... 常山赵子龙 技术 2022年5月27日 30000 发表回复 您的电子邮箱地址不会被公开。 必填项已用*标注*昵称: *邮箱: 网址: 记住昵称、邮箱和网址,下次评论免输入 提交