logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Java字节代码的操纵

     在一般的Java应用开发过程中,开发人员使用Java的方式比较简单。打开惯用的IDE,编写Java源代码,再利用IDE提供的功能直接运行Java程序就可以了。这种开发模式背后的过程是:开发人员编写的是Java源代码文件(.java),IDE会负责调用Java的编译器把Java源代码编译成平台无关的字节代码(bytecode),以类文件的形式保存在磁盘上(.class)。Java虚拟机(J

#java#jvm
Observers: 让ZooKeeper更具可伸缩性

ZooKeeper是一个分布式协作服务,用于实现锁和并发事务排队等协作原语。ZooKeeper 的一个优势是可伸缩性(Scalability)。五台或七台机器集群可以满足很多大型应用的需求。最近我们给ZooKeeper增加了一个新的特性,进一步增强了它可伸缩性——一种新的称为

#服务器#集群
Zookeeper中的FastLeaderElection算法

我们知道,在经典的paxos算法中每一个peer都是proposer,但是这就不可避免的产生提案冲突,为了减少这种冲突带来的系统消耗与时间延迟,就产生了Leader这个角色,整个系统中,就只允许Leader可以发出提案。ZooKeeper就是按照这个思路来实现的。本文主要讨论Zo

#算法#网络#生活
ZooKeeper中的节点故障处理机制(2)

上一篇主要简单的讲述了ZooKeeper是如何处理来自客户端的写请求的。本文主要集中讨论ZooKeeper客户端节点发生故障的处理情况。若ZooKeeper客户端节点发生故障时,他正处于空闲状态,则按照session失效处理。而复杂的情况是ZooKeeper客户端节点发生故障是,

#服务器
ZooKeeper中的写操作细节(一)

ZooKeeper是专门为分布式系统提供高可用的、高性能的协作服务的,因此为了保证它的写操作,ZooKeeper采用的经典的两阶段提交协议,把写操作当作一个事务来处理。本文主要讨论该协议中的第一阶段,即事务的准备阶段。ZooKeeper的准备阶段主要就是判断该操作在当前环境下能否

zookeeper3.3.3源码分析(一)工作原理概述

简单的说一下zookeeper工作的过程,如果对这个过程还不太清楚,或者说对它如何使用等不太清楚的,可以参考一下其他的文章,比如这篇,这一系列的文章将不讲解它如何使用(实际上我也没有在具体项目中使用过,只是简单的配置运行起来大概晓得如何工作而已).zookeeper有两种工作的模

#服务器#集群
zookeeper代码浅析

本文转自:http://blog.csdn.net/xgbjmxn/article/details/6200738ZooKeeper是近期比较热门的一个类Paxos实现。也是一个逐渐得到广泛应用的开源的分布式锁服务实现。被认为是Chubby的开源版,虽然具体实现有很多差异。ZooKeeper概要的介绍可以看官方文档:http://hadoop.apache.org/zookeepe

#算法#集群
zookeeper3.3.3源码分析(二)FastLeader选举算法

如何在zookeeper集群中选举出一个leader,zookeeper使用了三种算法,具体使用哪种算法,在配置文件中是可以配置的,对应的配置项是”electionAlg”,其中1对应的是LeaderElection算法,2对应的是AuthFastLeaderElection算法,3对应的是FastLeaderElection算法.默认使用FastLeaderElection算法.其他两种算法我没

#服务器#算法#集群
单机上多JVM同步控制的一种方法

     在一个JVM进程中的同步控制,无非就是线程之间的同步问题,但要想在多JVM进程之间实现访问本地系统资源的同步,却并非JVM所擅长的了。当然,若依赖第三方Master主控进程,这个问题还是可以解决的。多于简单的系统而言,这样做无疑会增加系统的复杂性,从而导致整个系统的不稳定性和潜在的不安全。所以,下面就如何在单机上实现多JVM进程之间的同步控制,给出了一个简单的方法。     JD

#jvm#java
到底了