阅读历史 |

第116章 要不这就算我的检查吧(数据再掉就恢复两更。)(1 / 2)

加入书签

请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。

实验室在顶楼走廊的最深处。

一进门就听到嗡嗡的服务器风扇声。

几台昂贵的SunUltra工作站一字排开。

七八个博士生围在一个屏幕前,个个面如土色。

胡鹏趴在键盘前,手指飞快地敲击着,调取系统底层的CoreDu文件。

“Segntationfault……”

胡鹏看着屏幕上的报错,眉头锁成了一个“川”字。

“又是段错误。

线程之间的资源争抢太严重了。

咱们用的CORBA标准,底层的ORB通讯机制在处理大量短连接的时候效率太低了。”

“要不加硬件?”

刚才那个报信的男生小声提议。

“再申请两台服务器做负载均衡?”

“加个屁!”

胡鹏骂道。

“这是软件架构的硬伤,你就是把机房堆满服务器,锁竞争的问题解决不了,一样得崩!

国家给的指标是单机5000并发,现在连一半都跑不到,下个月验收怎么交代?”

众人一片死寂,不敢接话。

陈浩站在人群最后面,目光扫过屏幕上的架构图和那几行关键的C++代码。

他立刻看明白了。

这套系统采用的是典型的“Thread-er-Request”(每个请求一个线程)模型。

这是当时CORBA架构的标准做法。

每一个客户端连接进来,服务器就分配一个独立的线程去处理。

在并发量小的时候,这种模型简单高效。

但一旦并发量上来,成千上万个线程同时在操作系统里抢占CPU时间片,光是线程上下文切换的开销就能把CPU吃光。

再加上他们为了保证数据一致性,在共享内存区加了大量的互斥锁。

这不崩才怪。

“胡院长。”

一个突兀的声音打破了沉默。

众人回头,看到那个本该在写检查的大二学生,正双手插兜站在后面。

胡鹏看到陈浩,火气又要上来:

“谁让你进来的?出去!”

“如果是CORBA架构下的线程阻塞,加再多服务器也没用。”

陈浩没有动,而是指了指屏幕上的一行代码。

“你们用的是同步阻塞I

O模型(BIO)。

这种模型下,线程在等待网络数据的时候是挂起的,不仅占内存,还不干活。”

胡鹏愣了一下,开始重新打量起陈浩。

这番话切中要害,而且专业术语用得极准,绝不是一个大二学生能说出来的。

“你懂CORBA?”

胡鹏的声音沉了下来。

“略懂一点。”

陈浩走到屏幕前。

“我兼职的公司就是做高并发互联网应用的。

前段时间我跟着出差到硅谷,跟Sun公司负责JavaEE规范制定的一帮工程师聊过。

现在的趋势是,瓶颈不在硬件,而在I

O模型。”

陈浩顿了顿,看着胡鹏:

“胡院长,能给我个白板吗?”

周围的博士生面面相觑。

一个大二的要在国家级实验室里给他们这些博士生讲课?

“给他。”

胡鹏盯着陈浩看了几秒,鬼使神差地挥了挥手。

一个博士生从角落里推过来一块白板。

陈浩拿起马克笔,没有废话,直接在白板上画了一个图。

一个圆圈,周围连着无数线条,中间是一个单向的箭头。

“既然多线程容易崩,那我们就不要用多线程。”

陈浩一边画一边说。

“目前的架构是,来一个客人,我们就派一个服务员全程跟着。

客人点菜、吃饭、买单,服务员都得等着。

客人多了,服务员就不够用了。”

他在旁边画了另一个图。

“我们可以换个思路。

只留一个前台接待员。

所有客人的请求先到前台登记。

前台把请求分类,扔到后面的队列里。

厨房做好了,再通知前台叫号。

这就是IO多路复用。”

陈浩写下几个英文单词:I

OMultilexg。

“利用UNIX系统底层的select或者oll机制,一个线程就可以监控成千上万个socket连接的状态。

只有当socket真的有数据可读写时,才分配资源去处理。”

陈浩转过身,看着胡鹏:

“还需要把这块的同步锁去掉,换成无锁队列。”

实验室里没人回应,博士生们有的皱眉沉思,有的还在发懵。

在2000年,NIO(非阻塞I

O)和Reactor模式在学术界已经有了雏形,但在国内的工程实践中,还属于非常前沿甚至激进的技术。

大部分人还在死磕多线程优化。

胡鹏的眼睛却亮了。

他是行家。

↑返回顶部↑

书页/目录

武侠修真相关阅读: 一亩灵田种长生 毕业后我摆摊,娶了高中英语老师 无人知晓的百年,我成了大帝 我是德皇我怕谁? 首长家的傻儿媳原来是装傻啊! 满级大佬闯五哈,马甲掉一地 丁小乐的妖孽人生 末世菟丝花:姐夫你倒是说句话啊 入狱第一天,我绑定了自强系统! 我只想学习,怎么就电竞封神了 恶人通关后,仙子找上门了! 70重生归来:渣夫贱妹一起踹 让你写恐惧,你咋把全网吓哭了? 名义:工作的时候称职务 高手下山:我以无敌镇世间 三角洲:跑刀爆寿命,我万格保险 国术:每日结算,从黄包车夫开始 万倍返还:我,圣母,逆伐斩杀线 让你修仙,没让你成为宗门钉子户 顶级妇医:开局查出名媛怀外教种 说好退休呢?执法官你怎么回来了 末日边缘 sss级仙医出狱 我都成超人了,灵气才复苏? 太尊! 江左伪郎 全球灾变后,我在荒野有一片桃源 真龙出狱,医武震全球! 江山绝色榜 太监凶猛 医武双绝:下山捡个总裁当老婆 凡人:从拔刀三十万次开始 斗罗V:趁小舞青涩,忽悠她做老婆 炮灰丫鬟的升职路 斩妖变强,我靠修改命数无敌 SSS级狂龙出狱,全球拉响警报! 徒儿你已无敌,下山找你未婚妻去吧 1985:开局大雪封门 快穿之对炮灰的强取豪夺 归国留洋水货?叫我芯片之父! 肥妻万人嫌?赘婿首辅拒绝和离 十方剑主 八年深情作践,她离婚携千亿闪婚大佬 三岁萌娃会算卦,勇闯军区找爸爸 吾乃高武神人 神女录,我以阴阳证大道! 谍战代号:申公豹 旁门左道,修仙靠富婆 路明非从斗罗开始 刚离婚,被白富美拉去领证 星空合成手册 老夫今年七十,你让我多子多福? 将作妖 帝皇在上 盗墓:区区20,不在话下! 仙侠世界 宅山海 五十年代:带着随身空间进城奔小康 魔修也要上班打卡吗? 长生:从神秘小黑鼎开始