故障假设与故障检测器 Election algorithm

要点 熟悉故障检测器有助于了解分布式系统中故障的本质 如何判断进程何时已经崩溃 首先,为了便于理解及阐述,做如下假设: 每对进程都通过可靠的通讯连接(尽管底层网络组件可能出现故障,但进程使用能屏蔽故障的可靠通讯协议)。 进程故障不隐含对其他进程的通信能力的威胁(没有进程依赖于其他进程来转发消息)。 进程只在崩溃时出的故障(这个假定对与很多系统来说足够来) WARNING: 一个可靠的通讯连接最终将消息传递到接收者的输入缓存区。在同步系统中,假设在必要的地方有硬件冗余,一遍底层出故障的时候,可靠通道不仅最终传递每个消息,而且是在指定时间内完成传递工作。 .名词诠释 [width=”100%”,options=”header,footer”] |==================== |中文|英文|定义 |网络分区|network partition|每个网络内的进程可以通信,但两对进程在路由故障的时候不可能通讯...

1 minute read

选举算法 Election algorithm

选择一个唯一的进程来扮演特定的角色的算法成为选举算法。 举例”中央服务器”互斥算法一个变种,从临界区的进程中选择一个进程作为”服务器”。这就需要选举算法来选举一个进程。基本要求是所有进程都同意,当进程不再相担任这个角色,需要重新选举。 .名词解释 [width=”100%”,options=”header,footer”] |==================== | 中文 | 英文 | | 召集选举 | call the...

1 minute read

分布式互斥

要点 临界区问题 解决分布式互斥问题的解决方案:基于消息传送的解决方案 这种解决方案独立于特定的资源管理方案,下面会具体描述其算法 部分算法后在还会进一步描述 [NOTE] 有些应用场景是没有服务器的,且需要协调它们(一对进程)对共享资源的访问。这种情况经常出现在以太网、”自组织”模式的IEEE 802.11 无线网等网络中,其中网络接口作为对等成分进行协作,使得在共享介质上一次只有一个节点进行传输。 [NOTE] 简单的解决方案是这些进程只要通过互相通信就能互斥,就能不需要服务器。 NFS文件服务器是无状态的,因此不支持文件加锁 UNIX系统提供由locked(守护进程)实现的一个文件加锁服务。 互斥算法 假设:...

2 minute read

垃圾回收

Heap: PSYoungGen: PS Eden Space: 新的对象会先生成在Young area,也就是PSYoungGen中。 新生代总大小为eden+from+to,与-Xmn相对应。例如:有个服务获取数据包,但是数据比较大,且需要并发读取,这时候新增对象会多。如果新生对象多到,新生代内存空间不够,则会转移到老生代。 from space: to space: PS Survivor Space:救助空间。...

1 minute read

JVM 相关

工具 jconsole:java自带图形化调试工具 命令:jstack(查看线程)、jmap(查看内存)和jstat(性能分析) 概要 Heap: PSYoungGen: PS Eden Space: 新的对象会先生成在Young area,也就是PSYoungGen中。 新生代总大小为eden+from+to,与-Xmn相对应。例如:有个服务获取数据包,但是数据比较大,且需要并发读取,这时候新增对象会多。如果新生对象多到,新生代内存空间不够,则会转移到老生代。 from space: to...

2 minute read

再看java中的弱引用

== WeakReference 为了更好的理解弱引用,务必对WeakReference有清晰的认识 [source,java] /** * Returns this reference object's referent. If this reference object...

2 minute read

JVM概念汇总

JVM 垃圾收集 它基本上通过暂停它周围的世界来操作,标记所有根对象(由运行线程直接引用的对象),并遵循它们的引用,标记它沿途看到的每个对象 Java基于分代假设-实现了一种称为分代垃圾收集器的东西,该假设表明创建的大多数对象被快速丢弃,而未快速收集的对象可能会存在一段时间 分代描述 Young Generation -这是对象的开始。它有两个子代 Eden Space -对象从这里开始。大多数物体都是在Eden Space中创造和销毁的。 在这里,GC执行Minor GCs,这是优化的垃圾收集。执行Minor GC时,对仍然需要的对象的任何引用都将迁移到其中一个survivors空间(S0或S1)。...

9 minute read