备战金九银十:4000道Java面试真题合集,助你搞定面试官( 二 )


(2)Eureka详解
备战金九银十:4000道Java面试真题合集,助你搞定面试官
文章图片
备战金九银十:4000道Java面试真题合集,助你搞定面试官
文章图片
备战金九银十:4000道Java面试真题合集,助你搞定面试官】Zookeeper.
zookeeper , 其实很早就计划写关于它的?章 , 但是由于各种原因?直推到了今天 。 本?会以类?的?式循序渐进、层层展开 。 各位坐稳了 , 让我们开启?段?脑的旅程 。
边界的产生与突破:
不觉间孩?已经上?学了 , 前段时间还参加了?次家?会 , 那就以学校和开会来说吧 , 这?家都很熟悉 。
如果?个班要想开班会 , 那随时开都? , 不需要提前安排与通知 , 因为?个班级从内部看就是?个整体 , 在班级内 ,
同学之间以及与?师之间都可以随意交流 , 没有任何隔阂与阻碍 。
?个班级从外部看就是?个独?的个体 , 因为班级与班级之间是完全独?的 , 因此?个班级的学?和?师都不会随便跑到其它班级去 。 这是因为存在着?个边界 , 即班级边界 。
正是这个班级边界把班级隔开了 , 边界之内的事情 , 如班会 , 可以随便开展 , 因为它和边界之外的?切都?关 。 但是?旦涉及到边界之外 , 也就是跨边界 , 那么问题就产?了 。
?如学校要开?个全体班级?会 , 肯定会提前安排好时间地点 , 以及各个班级在操场上的排列顺序 , 还要提前进?相应的通知 。
为什么?个班的班会可以随时随地进? , ?全体班级?会就要提前安排与通知呢?就是因为它跨了班级边界 , 是?个跨边界问题 。
?且班级与班级之间互相独? , 互相不太熟悉 , 可能沟通起来也不容易 , 因此需要提前安排好 。
那如何通知呢?可以让班级之间互相通知 , 如?班通知?班 , ?班通知三班等等 。 也可以由?个独?于所有班级之外的? , 如教务处或学?处的? , 来依次通知所有班级 。
这两种通知?法在现实中都有使? , 所有没有绝对的好与坏之分 , 视情况?定即可 。
计算机相关的边界产生与突破
上??节的描述?常简单 , 相信所有?都能明? 。 接着就来说说和计算机相关的边界 。 其实有很多 , 我们就说?两种吧 。
操作系统??有内核空间和??空间 , 它们之间是有边界的 , 但是它们之间依然是可以交流的 , 因为操作系统的开发者已经做好了交流的?式?法 。
每个应?程序通常都是?个进程 , 由于应?之间通常差别较? , ?且还有?些其它??的考虑 , 如安全问题 , 所以进程之间是有边界的 , 即进程边界 。
操作系统是按进程分配资源的 , 因此?个进程内部的线程共享这些资源 。 由于进程边界的存在 , 这些资源不能被别的进程使? 。 所以进程就像是?个班级 。
由于不同进?之间通常不需要交流 , 就像班级之间通常也不怎么交流?样 , 所以默认情况下进程之间?法交流 , 这与操作系统的内核和??空间是不同的 。
但总归有特殊情况吧 , 如果进程间需要交流怎么办?那只能由开发?员??想办法 , 如通过Socket , 来实现 。 这种情况在中间件?很常? , 如Nginx就涉及多个进程 。
因为中间件的开发者?般都是?X的? , 他们能够搞定 。 但问题是绝?多数开发?员都是搞业务开发的 , 他们受能?、时间或?钱限制 , 往往做不出来?产级别的交流?法 。
可是有时候业务?员开发的应?程序的进程之间也是需要交流的 , 就像要开全体班级?会那样 , 我们可以类?着来寻求解决?案 。