【技术小说连载】新三国外传——献连环计
小说连载系列是我第一次尝试的新的技术讲解方式,希望通过小说的形式将技术细节讲解清楚。
第二篇中长篇连载小说《新三国外传》,主要讲解一些架构、新技术以及程序员工作中的一些轶事,希望大家能够喜欢。
郑重声明:小说人物和故事情节取材自三国演义,作者融入了技术元素,做了大量修改,未经同意禁止任何形式的转载,侵权将进入法律程序。大佬除外。
欢迎大家转发文章,谢谢!
前情回顾
东吴那边,诸葛亮和周瑜已经制定了周详的作战计划。
话分两头说,曹操这边倒是正在发愁。
曹营
曹操:“我虽有百万大军,但是大部分是北方人士,到这东吴水土不服,特别是在水上作战,不像在陆地这般平稳,大批将士一到水上就脑袋发晕,这可如何是好呀?”
谋士荀彧率先开口:“主公所言极是,依我看来,咱们的部队兵力过于分散,搞python的、搞php的、搞ruby的、搞php的、搞c++的,就像一片大海中的五个孤岛一样,无法联合作战啊。”
曹操:“爱卿所言正是我之担忧,我扩张太快,内部尚未磨合好,战斗力怕是要打些折扣啊。汝等有何良策?”
谋士程昱说道:“主公可听说过万能的重写?”
曹操:“这是何意?”
程昱:“我们可以选择一种语言,比如php,将其他语言实现的系统全部用这种语言重写一遍。这样大家都用一种语言,相互之间能够紧密配合。”
曹操:“这需要多长时间才能完成?”
程昱:“大概需要两年时间。”
曹操:“这可不行啊,兵贵神速,等上两年时间,那刘备和孙权都不知道能发展成什么样了。”
正在这时,曹营中一个声音说道:“我有一计,可以不用重写系统。”
庞统
曹操寻声望去,只见坐下一人,样貌极丑,却一副胸有成竹的样子。
曹操:“哦?你说说看!”
庞统上前说到:“主公可听说过RPC?”
曹操:“RPC?什么东西?”
庞统:“就是远程调用的意思,虽然每个系统实现的语言不一样,但是只要遵循某种协议对外提供接口,比如都对外提供http的接口,它们便可以相互调用。”
曹操:“这样就不用重写系统?来,你来给我详细说说。”
庞统:“比如那用ruby写的系统,将自身能够提供的服务用http接口封装一层,用php写的系统只需要发起一个http的请求,便可以调用那ruby系统提供的服务了。”
曹操:“嗯,明白了,这样改造需要多长时间?”
庞统:“因为不用重写,业务代码也不用大改,只需要用http将某些服务包装,不出一周便能完成。”
曹操一听大喜:“行,就按照你的方案来,你来实施吧。”
庞统带领曹操的将士们对系统进行了改造,让原本割裂的五个不同语言的系统相互依赖,全部连了起来,完美地实现了曹操所需要的所有功能。
改罢,庞统暗自欣喜:“连环计已经完成,我现在该赶紧逃离曹营了。”
庞统想要坐筏渡江,只听后面有人拍了他的肩膀:“系统之间相互耦合,此乃软件设计之大忌,汝献此计策,不怕项上人头不保吗?”
徐庶
庞统一听计策被识破,大惊失色,回头一看,原来是徐庶,提到嗓子眼的心又放了下来:“哎呀,元直兄,你这样吓人可不好啊,我心脏病都快被你吓出来了。”
这徐庶正是向刘备间接推荐诸葛亮之人,只是母亲被曹操控制,不得已而在曹营,发誓终生不为曹操献一计。
徐庶:“基于远程调用的分布式系统,我很早就在研究,这里面的复杂度可是单机程序所不能比拟的。”
庞统:“哦?愿闻其详。”
徐庶:“首先你要考虑被调用方挂了怎么办,要做限流和降级方案,还要考虑调用的负载均衡问题,还有服务的自动注册和发现,要有注册中心。你现在只是带领将士们实现了功能,根本没有考虑系统的稳定性和容灾情况,这不是把曹操往火坑里推?”
庞统一听哈哈大笑:“不愧是元直兄,不过老板们只要实现功能就行,谁会管什么容灾和稳定性?”
徐庶:“看来曹操天数将尽,你走吧,就当没见过我。”
庞统坐上竹筏往东吴而去。
庞统连环计真的能发挥作用吗?那相互耦合的系统,会有什么问题?欲知后事如何,请听下回分解。
第一次尝试写技术小说,如果你喜欢这种形式,麻烦动动手指转发一下,你不经意间的动作,可能就会给大家带来一部伟大的技术小说。