zk---刨根问底3

AuthenticationProvider

 

 

/**

 * This interface is implemented by authentication providers to add new kinds of

 * authentication schemes to ZooKeeper.

 */

 

 

DigestAuthenticationProvider

 

DigestLoginModule

IPAuthenticationProvider

 

 

KerberosName

 

 

/**

 * This class implements parsing and handling of Kerberos principal names. In 

 * particular, it splits them apart and translates them down into local

 * operating system names.

 */

 

 

ProviderRegistry

 

SASLAuthenticationProvider

 

SaslServerCallbackHandler

 

 

 

 

FilePadding

FileSnap

 

 

/**

 * This class implements the snapshot interface.

 * it is responsible for storing, serializing

 * and deserializing the right snapshot.

 * and provides access to the snapshots.

 */

 

 

FileTxnLog

 

 

 

/**

 * This class implements the TxnLog interface. It provides api's

 * to access the txnlogs and add entries to it.

 * <p>

 * The format of a Transactional log is as follows:

 * <blockquote><pre>

 * LogFile:

 *     FileHeader TxnList ZeroPad

 * 

 * FileHeader: {

 *     magic 4bytes (ZKLG)

 *     version 4bytes

 *     dbid 8bytes

 *   }

 * 

 * TxnList:

 *     Txn || Txn TxnList

 *     

 * Txn:

 *     checksum Txnlen TxnHeader Record 0x42

 * 

 * checksum: 8bytes Adler32 is currently used

 *   calculated across payload -- Txnlen, TxnHeader, Record and 0x42

 * 

 * Txnlen:

 *     len 4bytes

 * 

 * TxnHeader: {

 *     sessionid 8bytes

 *     cxid 4bytes

 *     zxid 8bytes

 *     time 8bytes

 *     type 4bytes

 *   }

 *     

 * Record:

 *     See Jute definition file for details on the various record types

 *      

 * ZeroPad:

 *     0 padded to EOF (filled during preallocation stage)

 * </pre></blockquote> 

 */

 

 

 

 

FileTxnSnapLog

 

 

 

/**

 * This is a helper class 

 * above the implementations 

 * of txnlog and snapshot 

 * classes

 */

SnapShot

 

 

/**

 * snapshot interface for the persistence layer.

 * implement this interface for implementing 

 * snapshots.

 */

 

 

TxnLog

 

/**

 * Interface for reading transaction logs.

 *

 */

 

 

 

 

TxnLogToolkit

 

 

 

TxnLogToolkitCliParser

 

 

 

Util

 

 

/**

 * A collection of utility methods for dealing with file name parsing, 

 * low level I/O file operations and marshalling/unmarshalling.

 */

 

 

 

DataNodeV1

 

 

/**

 * This class contains the data for a node in the data tree.

 * <p>

 * A data node contains a reference to its parent, a byte array as its data, an

 * array of ACLs, a stat object, and a set of its children's paths.

 * 

 */

 

 

 

DataTreeV1

 

 

 

/**

 * This class maintains the tree data structure. It doesn't have any networking

 * or client connection code in it so that it can be tested in a stand alone

 * way.

 * <p>

 * The tree maintains two parallel data structures: a hashtable that maps from

 * full paths to DataNodes and a tree of DataNodes. All accesses to a path is

 * through the hashtable. The tree is traversed only when serializing to disk.

 */

 

 

UpgradeMain

 

 

 

/**

 * This class upgrades the older database 

 * to a new database for the zookeeper 

 * servers.

 * The way to run it is 

 * java -class path zookeeper.jar Upgrade dataDir snapShotDir

 * or using zookeeper scripts with zkServer -upgrade dataDir snapShotDir 

 * it creates a backup in the dataDir/.bkup and snapShotDir/.bkup which 

 * can be retrieved back to the snapShotDir and dataDir 

 */

 

 

UpgradeSnapShot

 

 

/**

 * interface for snapshot conversion.

 *

 */

 

UpgradeSnapShotV1

 

 

/**

 * This class gets the old snapshot 

 * and the old dataDir and creates 

 * an brand new snapshot that is 

 * then converted to the new snapshot

 * for upgrading.           

 */

 

 

 

KerberosUtil

 

 

 

OSMXBean

 

 

 

/**

 * This class is a wrapper for the implementation of

 * com.sun.management.UnixOperatingSystemMXBean

 * It will decide to use the sun api or its own implementation

 * depending on the runtime (vendor) used.

 */

 

 

Profiler

 

 

 

 

SerializeUtils

 

 

ZxidUtils

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值