<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oracle Berkeley DB 中国研发团队的博客 &#187; HA</title>
	<atom:link href="http://www.bdbchina.com/tag/ha/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bdbchina.com</link>
	<description>Oracle Berkeley DB 中国研发团队的博客</description>
	<lastBuildDate>Thu, 15 Dec 2011 10:35:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Berkeley DB Java Edition 高可用性介绍</title>
		<link>http://www.bdbchina.com/2011/09/berkeley-db-java-edition-%e9%ab%98%e5%8f%af%e7%94%a8%e6%80%a7%e4%bb%8b%e7%bb%8d/</link>
		<comments>http://www.bdbchina.com/2011/09/berkeley-db-java-edition-%e9%ab%98%e5%8f%af%e7%94%a8%e6%80%a7%e4%bb%8b%e7%bb%8d/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 09:19:07 +0000</pubDate>
		<dc:creator>chaohuang</dc:creator>
				<category><![CDATA[Berkeley DB JE]]></category>
		<category><![CDATA[Chao Huang]]></category>
		<category><![CDATA[bdb]]></category>
		<category><![CDATA[HA]]></category>
		<category><![CDATA[JE]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=1694</guid>
		<description><![CDATA[这是一篇译文，现在贴过来。原文见JE官网http://www.oracle.com/technetwork/database/berkeleydb/overview/index-093405.html的底部“Berkeley DB Java Edition High Availability”一栏。
概览
Oracle Berkeley DB Java版高可用性（JE HA）是一个支持replication特性的事务性数据管理系统。JE HA提供的高可用特性可以极大提升数据读操作的可扩展性（scalability）及其性能。
这份白皮书将详细介绍JE HA的关键概念和主要特性，从而让开发人员和应用软件设计者理解如何最好地利用JE HA解决软件开发中特有的数据管理问题。
本白皮书同时也讨论了软件架构师在设计基于JE HA的应用时，如何从技术的角度权衡各方面的性能与资源。

基本介绍
Oracle Berkeley DB Java版本（JE）在最新的发布版本中引进了一个新特性，即高可用性（high availability，简称为HA）。JE是一个事务性的数据管理系统，最新版本的JE 便是在之前版本的基础上做了扩展，加入了HA的特性。
用户在应用程序中可以利用JE的直接持久层（DPL）创建用于存储Java对象的索引数据库。在JE中，多个数据库操作可以包含进一个事务（transaction）中，从而得到事务所提供的原子性、一致性、分离性和持久性（ACID）等事务特性。如果应用程序或者系统发生故障，JE的故障恢复机制（recovery）可以使应用程序的数据恢复到一致的状态。
JE HA是一个嵌入式数据管理系统，它在具备JE全部功能的基础上，为JE提供replication规则，即“主节点（master）可以执行读/写操作，副节点（replica）只能执行读操作”。这种规则意味着数据库读与写操作都可以在单个主节点中进行，而在副节点上只能进行读操作。如果主节点发生故障被关闭，那么JEHA将在所有副节点中自动选择其中一个作为新的主节点，这样，所有的读写操作就可以在新的主节点中进行。作为一个嵌入式的类库，JE HA可以广泛应用在各种硬件配置和环境中。
JE HA主要解决以下三个应用上所面临的难题：

在不允许宕机的应用场景中，能够迅速进行热备切换（failover）；
通过配置多个只读副节点以提供读操作的可扩展性；
在实现数据持久性（durability）时，允许应用程序将数据提交到（快速的）网络，而不是（缓慢的）磁盘，从而使事务的提交更加高效。

然而，JE HA不适用于需要对写操作进行扩展的应用场景。这类应用场景需要数据分区（data partition），然后在每一个数据分区中运行一个JE HA的环境。同样，JE HA也不提供与其他数据库进行数据同步的功能。本白皮书不再赘述这两方面的应用。
除去上述两个应用场景，JE HA可以广泛应用在各种环境中。下面分别进行简单的介绍。

基于小型局域网的数据复制备份：基于数据中心的服务可以向本地的多个机器提供数据，比如一个公司网站。这种服务由几台安放在同一个数据中心的服务器提供，这些服务器通过高速的局域网互联。
广域数据存储：广域数据存储服务可以存储大量的账户信息，用户可以在全球任何地方访问这些信息。这种服务由许多分布在全球多个地方的数据中心的服务器提供。这些服务器通过数据中心之间的高速网络进行通信。
主节点/从节点：提供主从节点机器的热备切换。

JE HA可以在广泛的应用环境中对数据进行replication，而单独一种数据管理和replication机制并不能适用于所有环境。因此，JE HA可以让应用程序控制主副节点之间的数据一致性程度，事务持久性，以及提供了其他可以提升性能、可靠性以及数据可用性的各种设计选择。这份白皮书的目的就是介绍这些选择和配置，并且提供足够的细节便于用户的理解，这样用户在设计应用程序时可以做出正确的选择和取舍。
JE HA概述
这一章节将描述JE HA的总体架构和关键概念。
下文中，术语“数据库”（Database） 用于表示一组键/值对（key/value pair）数据集，这些键/值对数据集共享一个索引数据结构，它对应于关系型数据库管理系统（RDBMS）中表（table）的概念。术语“环境”（Environment）用于表示一组具有逻辑关系的Berkeley DB数据库集合，以及相关的元数据（meta-data）和内部文件。每个环境用一个文件目录命名。可以看出，环境就是RDBMS中数据库的概念。也就是说，下文中涉及的数据库就是RDBMS中的表，而环境就是RDBMS中的数据库。
JE HA将一个环境在一个replication group中的各个节点之间进行replication操作。一个环境就是一个replication单元。在一个replication的环境中，所有数据库都支持replication操作和满足事务性。
Replication group
一个replication group是一个节点集合。这些节点都将参与到环境的replication过程中。一个replication group由两种节点组成：可选（Electable）节点和监测（Monitor）节点。
每个可选节点都拥有一份可进行replication的环境副本，它既可作为主节点，也可作为副节点。一个可选节点将通过一种分布式的两阶段投票协议（distributed two-phase voting protocol）而被选举成为一个主节点。这种投票协议将可以保证每次仅选举出一个主节点。所有参与选举的节点中，拥有最新环境数据的节点将被选为主节点。一个可选节点可以进入以下几种状态（但每个时间点只能进入一种状态）：

主节点（Master）状态：一个节点将通过简单多数（或者叫过半数，simple majority）原则，在众多可选节点中被选举为主节点。一个节点变成主节点后可以进行读和写操作。
副节点（Replica）状态：副节点通过replication stream与主节点进行通信。Replication stream用于跟踪记录在主节点中所做的任何更新。在后续章节中将会对replication stream做详细的介绍。副节点只支持读操作。
未知（Unknown）状态：一个节点处于未知状态意味着此节点不能识别主节点，并不断尝试着寻找主节点，或者联系其他成员节点来进行主节点选举。处于未知状态的节点将不断尝试过渡到主节点或者副节点状态。这种状态的节点如果能满足事务性的一致性要求（下文将详细描述），那么它仍然可以进行读操作。
分离（Detached）状态：一个节点处于分离状态意味着此节点已经被关闭（shutdown）。处于分离状态的节点仍然属于replication group中的成员，但它并不是一个活跃节点（active node）。同样，如果一个节点不处于分离状态，则意味着它是活跃节点。

注：为了简略，术语“主节点”和“副节点”在以下的讨论中将用于表示replication group中的某节点正处于主节点状态和副节点状态。
监测节点（monitor node）用于跟踪和监视一个replication group中所有可选节点的当前状态。所有新节点的加入和当前节点的删除所引起的replication group结构的变化都会被监测节点监听到。监测节点同时也能监听所有可选节点的动态状态变化（即此节点处于活跃状态抑或分离状态）。监测节点没有任何持久的状态，也不拥有可进行replication的环境副本。应用程序可以利用监测节点将所有的写请求路由到replication group当前的主节点中，同时将读请求路由到replication group的副节点中。另外，只有应用程序需要调用监测节点，监测节点才会被replication group所创建。也就是说，监测节点并不是必需的。
一个replication [...]]]></description>
			<content:encoded><![CDATA[<p><em>这是一篇译文，现在贴过来。原文见JE官网http://www.oracle.com/technetwork/database/berkeleydb/overview/index-093405.html的底部“Berkeley DB Java Edition High Availability”一栏。</em></p>
<h1>概览</h1>
<p>Oracle Berkeley DB Java版高可用性（JE HA）是一个支持replication特性的事务性数据管理系统。JE HA提供的高可用特性可以极大提升数据读操作的可扩展性（scalability）及其性能。</p>
<p>这份白皮书将详细介绍JE HA的关键概念和主要特性，从而让开发人员和应用软件设计者理解如何最好地利用JE HA解决软件开发中特有的数据管理问题。</p>
<p>本白皮书同时也讨论了软件架构师在设计基于JE HA的应用时，如何从技术的角度权衡各方面的性能与资源。</p>
<p><span id="more-1694"></span></p>
<h1>基本介绍</h1>
<p>Oracle Berkeley DB Java版本（JE）在最新的发布版本中引进了一个新特性，即高可用性（high availability，简称为HA）。JE是一个事务性的数据管理系统，最新版本的JE 便是在之前版本的基础上做了扩展，加入了HA的特性。</p>
<p>用户在应用程序中可以利用JE的直接持久层（DPL）创建用于存储Java对象的索引数据库。在JE中，多个数据库操作可以包含进一个事务（transaction）中，从而得到事务所提供的原子性、一致性、分离性和持久性（ACID）等事务特性。如果应用程序或者系统发生故障，JE的故障恢复机制（recovery）可以使应用程序的数据恢复到一致的状态。</p>
<p>JE HA是一个嵌入式数据管理系统，它在具备JE全部功能的基础上，为JE提供replication规则，即“主节点（master）可以执行读/写操作，副节点（replica）只能执行读操作”。这种规则意味着数据库读与写操作都可以在单个主节点中进行，而在副节点上只能进行读操作。如果主节点发生故障被关闭，那么JEHA将在所有副节点中自动选择其中一个作为新的主节点，这样，所有的读写操作就可以在新的主节点中进行。作为一个嵌入式的类库，JE HA可以广泛应用在各种硬件配置和环境中。</p>
<p>JE HA主要解决以下三个应用上所面临的难题：</p>
<ul>
<li>在不允许宕机的应用场景中，能够迅速进行热备切换（failover）；</li>
<li>通过配置多个只读副节点以提供读操作的可扩展性；</li>
<li>在实现数据持久性（durability）时，允许应用程序将数据提交到（快速的）网络，而不是（缓慢的）磁盘，从而使事务的提交更加高效。</li>
</ul>
<p>然而，JE HA不适用于需要对写操作进行扩展的应用场景。这类应用场景需要数据分区（data partition），然后在每一个数据分区中运行一个JE HA的环境。同样，JE HA也不提供与其他数据库进行数据同步的功能。本白皮书不再赘述这两方面的应用。</p>
<p>除去上述两个应用场景，JE HA可以广泛应用在各种环境中。下面分别进行简单的介绍。</p>
<ul>
<li>基于小型局域网的数据复制备份：基于数据中心的服务可以向本地的多个机器提供数据，比如一个公司网站。这种服务由几台安放在同一个数据中心的服务器提供，这些服务器通过高速的局域网互联。</li>
<li>广域数据存储：广域数据存储服务可以存储大量的账户信息，用户可以在全球任何地方访问这些信息。这种服务由许多分布在全球多个地方的数据中心的服务器提供。这些服务器通过数据中心之间的高速网络进行通信。</li>
<li>主节点/从节点：提供主从节点机器的热备切换。</li>
</ul>
<p>JE HA可以在广泛的应用环境中对数据进行replication，而单独一种数据管理和replication机制并不能适用于所有环境。因此，JE HA可以让应用程序控制主副节点之间的数据一致性程度，事务持久性，以及提供了其他可以提升性能、可靠性以及数据可用性的各种设计选择。这份白皮书的目的就是介绍这些选择和配置，并且提供足够的细节便于用户的理解，这样用户在设计应用程序时可以做出正确的选择和取舍。</p>
<h1>JE HA概述</h1>
<p>这一章节将描述JE HA的总体架构和关键概念。</p>
<p>下文中，术语“数据库”（Database） 用于表示一组键/值对（key/value pair）数据集，这些键/值对数据集共享一个索引数据结构，它对应于关系型数据库管理系统（RDBMS）中表（table）的概念。术语“环境”（Environment）用于表示一组具有逻辑关系的Berkeley DB数据库集合，以及相关的元数据（meta-data）和内部文件。每个环境用一个文件目录命名。可以看出，环境就是RDBMS中数据库的概念。也就是说，下文中涉及的数据库就是RDBMS中的表，而环境就是RDBMS中的数据库。</p>
<p>JE HA将一个环境在一个replication group中的各个节点之间进行replication操作。一个环境就是一个replication单元。在一个replication的环境中，所有数据库都支持replication操作和满足事务性。</p>
<h2>Replication group</h2>
<p>一个replication group是一个节点集合。这些节点都将参与到环境的replication过程中。一个replication group由两种节点组成：可选（Electable）节点和监测（Monitor）节点。</p>
<p>每个可选节点都拥有一份可进行replication的环境副本，它既可作为主节点，也可作为副节点。一个可选节点将通过一种分布式的两阶段投票协议（distributed two-phase voting protocol）而被选举成为一个主节点。这种投票协议将可以保证每次仅选举出一个主节点。所有参与选举的节点中，拥有最新环境数据的节点将被选为主节点。一个可选节点可以进入以下几种状态（但每个时间点只能进入一种状态）：</p>
<ul>
<li>主节点（Master）状态：一个节点将通过简单多数（或者叫过半数，simple majority）原则，在众多可选节点中被选举为主节点。一个节点变成主节点后可以进行读和写操作。</li>
<li>副节点（Replica）状态：副节点通过replication stream与主节点进行通信。Replication stream用于跟踪记录在主节点中所做的任何更新。在后续章节中将会对replication stream做详细的介绍。副节点只支持读操作。</li>
<li>未知（Unknown）状态：一个节点处于未知状态意味着此节点不能识别主节点，并不断尝试着寻找主节点，或者联系其他成员节点来进行主节点选举。处于未知状态的节点将不断尝试过渡到主节点或者副节点状态。这种状态的节点如果能满足事务性的一致性要求（下文将详细描述），那么它仍然可以进行读操作。</li>
<li>分离（Detached）状态：一个节点处于分离状态意味着此节点已经被关闭（shutdown）。处于分离状态的节点仍然属于replication group中的成员，但它并不是一个活跃节点（active node）。同样，如果一个节点不处于分离状态，则意味着它是活跃节点。</li>
</ul>
<p>注：为了简略，术语“主节点”和“副节点”在以下的讨论中将用于表示replication group中的某节点正处于主节点状态和副节点状态。</p>
<p>监测节点（monitor node）用于跟踪和监视一个replication group中所有可选节点的当前状态。所有新节点的加入和当前节点的删除所引起的replication group结构的变化都会被监测节点监听到。监测节点同时也能监听所有可选节点的动态状态变化（即此节点处于活跃状态抑或分离状态）。监测节点没有任何持久的状态，也不拥有可进行replication的环境副本。应用程序可以利用监测节点将所有的写请求路由到replication group当前的主节点中，同时将读请求路由到replication group的副节点中。另外，只有应用程序需要调用监测节点，监测节点才会被replication group所创建。也就是说，监测节点并不是必需的。</p>
<p>一个replication group中的多个副节点可以分布到多台物理机器中，这样可以保证单个机器上的故障或者宕机不会影响到同组中的其他节点。但不同replication group中的多个副节点运行在同一个物理机器中的情形也并不少见。这种配置在某些应用场景中是十分有用的。例如，实现数据分区，这种应用场景在后面章节会有详细描述。</p>
<p>图一清楚描述了一个replication group G中的主要元素：三个可选节点（N1，N2 和N3）以及两个监测节点（M1和M2）。</p>
<p><img class="aligncenter" src="data:image/png;base64,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" alt="" width="394" height="282" /></p>
<p><strong>（图一）</strong><strong> </strong><strong>Replication group G</strong><strong>。可选节点：</strong><strong>G</strong><strong>（</strong><strong>N1</strong><strong>），</strong><strong>G</strong><strong>（</strong><strong>N2</strong><strong>）</strong><strong> </strong><strong>和</strong><strong>G</strong><strong>（</strong><strong>N3</strong><strong>）。两个监测节点：</strong><strong>G</strong><strong>（</strong><strong>M1</strong><strong>）和</strong><strong>G</strong><strong>（</strong><strong>M2</strong><strong>）。</strong><strong> </strong></p>
<p><strong> </strong></p>
<p><strong>Replication  group</strong><strong>的生命周期</strong></p>
<p>一个replication group总是从一个节点开始，这第一个节点会被默认成为主节点。一个可进行replication的环境可以是空的，或者是一个已存在的独立（standalone）的环境。但这个环境被转换成一个可进行replication的环境格式之后，可以往这个replication group中加入新的可选节点，这样会增加组的大小，同时也会增加主节点选举和数据持久性所需要的有效可选节点的数目（quorum）。</p>
<p>一个新的可选的节点通常需要经过以下几步才能真正参与到replication group中（即成为活跃节点）：</p>
<ul>
<li>新节点找到主节点，并且提供自身的配置信息。</li>
<li>主节点把新节点的信息存储到内部一个用于记录组节点信息的可进行replication的数据库中。其他可选举节点将通过replication stream获知新节点的信息。至此，新节点可被视为是replication group中的一名成员节点。</li>
<li>此新成员节点开始初始化它所拥有replication环境副本。如果某些日志文件已经被JE 的日志清除器（log      cleaner）所回收，那么新节点将调用一个叫做Network Restore的操作，从组内某一个成员节点中直接拷贝一份日志文件，并且用这份日志副本作为重演（replay）replication stream的起始点。</li>
<li>新节点重演replication      stream，直到它满足一致性的要求为止。</li>
</ul>
<p>满足一致性要求之后，新成员节点就成为一个活跃的副节点。它将可以为应用程序提供读操作，并且可以在热备切换过程中被选为主节点。</p>
<p>由于监测节点不需要为应用程序提供数据的读写服务，所以它并不拥有可进行replication的环境副本。因此加入一个监测节点很简单，只需要在主节点所拥有的环境副本中加入此监测节点的信息。这样，其他成员节点可以利用该信息与监测节点通信，向监测节点通知有关组内的变化，例如某次选举，或者组内成员的组成变化（新增节点或者删除节点）。同样，由于没有环境副本，当监测节点在每次启动的时候，它必须查询其他可选节点以判定组内当前成员节点的构成和状态。</p>
<p>如果节点运行的机器发生故障或宕机时，replication group有可能会由于组内节点数目无法达到有效可选节点数而无法运行。这些发生故障的节点可以通过JE HA提供的API显式地进行删除，这样余下的成员节点数目便可以满足有效可选节点数的要求，从而replication group可以恢复到正常的运行状态。当然，节点的删除往往意味着数据可持久性的降低。</p>
<h2>Replication stream</h2>
<p>所有发生在主节点上的写事务操作都将通过一种逻辑意义上的replication stream被复制到所有副节点中。这种replication stream是建立在TCP/IP连接之上，这种连接是主节点和每个副节点之间的专用连接。Replication stream包含主节点上的一些逻辑变化，这些逻辑变化是各种发生在环境中的数据库事务操作，如插入（insert）、更新（update）、删除（delete）、提交（commit）和中止（abort）等等。这些逻辑操作将从当前主节点日志文件中的日志条目（log entry）计算出来并且复制到各个副节点中，然后在每个副节点中通过高效的内部重演机制执行这些操作。</p>
<p>为了能让副节点能成功重演replication stream，这些日志条目必须是连续的。它们不能是一些被JE的日志清除器删除掉的条目。</p>
<p>为了保证这一点，JE HA把日志分成两部分：</p>
<ul>
<li>可移除日志，一般在日志的前端，由过时的数据组成，日志清除器可以将其删除。</li>
<li>不可移除日志，一般在日志的末端，所有在这部分的日志都是新的，日志清除器不可以将其删除。只有这部分日志才能用于构造replication      stream。这部分日志会随着新条目的加入而不断增大。一旦不可移除日志在所有副节点上重演，就会转换为可移除日志。</li>
</ul>
<p>下图描述了一个具有三个节点的replication group：节点1是主节点，节点2在重演日志时落后最多，所以节点2被用于决定可移除和不可移除日志。所有没有被节点2重演过的日志条目都会组成不可移除日志。在这个例子中，节点1的日志文件5和日志文件6，以及节点3的日志文件4和日志文件5组成了不可移除日志。这些文件在节点2进行更多重演之前都不能被回收。</p>
<p><img class="aligncenter" src="data:image/png;base64,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m729vdbW1ikpKRqNpqqqysLCorKycmtrKyUlxcbGpru7Wy6X+/r6IglGS3uRSCSTyUZHR21tbePj49VqdUNDw+3bt0tLS9VqdXZ2trm5eU9Pz8bGRmhoKB6Pn5+fX1pacnV1/eGHH2JiYjQazR5/cy/Hzs5OSkrKmTNn0tPTtVptUVER8o1sb2/HxcXZ2dn19vai32MGg7GwsIASI318fBQKRX9/v7W1dXJyskajqa6uvnPnTlVVlVqtTk1NRd3ZNzY2/P39KRTKzMzM4uIii8USiURyuXx0dNTGxiYmJkatVjc1Nd25c6e0tBTtYN+5c6ezs3NjYyMsLAyPx8/MzCwvL/N4PA6Ho1Ao0O8xKiHZ1NRkY2OTlZW1s7OTm5trbW1dX1+vVqsjIiKIROLQ0JBMJuPz+c7OzsvLy3NzcyQSKTg4WKlUdnd33717Nzs7W6lU3rhxg0gkqtXqjd8zSqUyMjISVULe6xtqv6PRaObn552dnZEB+rySjdyyQqEQlbjcD/j4+NDp9IMHDx47duzs2bMHDx78y1/+cu7cuZMnT7777rvvv/++mZnZ0aNH33777U8//fTixYtHjhw5cODAkSNHLly48Pnnn7/55pvHjx8/d+7chx9++Oc///nMmTOnTp16991333vvPTMzsx9++OHtt9/++OOPL168+M033xw4cODw4cMXLlz48ssvDxw4cPTo0fPnz6OBJ0+ePHPmzF//+tf33nvv3LlzJ06cePvttz/66CN09DfeeOOrr74yMzP76quv3njjjaNHj547d+6TTz45cODAqVOnzpw58/7777/zzjvnz5//8ccf33nnnQ8//PDChQvff//9gQMHvvjiiwsXLhw+fPjNN9/89ttvzczMPv300wMHDvz444/nzp17//33//KXv5w5c+bkyZPvvPPOwYMHzczMjh079tZbb3322WfofN98803T+R44cOCvf/3rjRs3fHx89s+X+Cvw9fW9devW+++/f+bMmcev9rFjx954441Dhw6ZmZl9/fXXT1ztM2fOnD59+omr/cEHH6Cr/dZbb33xxRcXL148fPjwgQMHvvnmmwsXLqCrjW6SgwcPvvPOO+gm+c///M8PPvgAHfHNN980Xe033njj8av9ww8/oLvrL3/5y+nTp0+fPv3uu+/+7W9/O3/+/PHjx996661PPvnEzMzsu+++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" alt="" width="486" height="314" /></p>
<p><strong>（图二）可移除和不可移除日志</strong><strong> </strong></p>
<p>只要副节点能进行处理，主节点将一直异步地向副节点发送数据的日志信息，即使主节点中的事务还在进行或者这些事务还未提交。如果主节点中的某个事务最后被取消（abort），副节点中的同个事务同样会被取消。然而，应用程序的某个线程有可能会为了满足某个特殊事务对持久性的要求，会进行等待直至该特定事务在一个或多个副节点上提交。对于这类事务，副节点将通过向主节点发送确认响应明该事务已在副节点上提交。但这并不意味着主节点中的后续操作会被阻止，因为主节点在等待响应的过程中可以继续进行其他事务性操作。</p>
<p>对于主节点和副节点来说，主节点往replication stream发送写操作信息和副节点从replication stream读取（并且重演）这些操作是异步的。一旦应用程序创建了一个新日志条目，主节点就能将该日志条目写入复制流。副节点一旦从replication stream读取了这个操作信息，就可以重演该操作。并且，如果主节点需要，副节点可以在重演操作之后向主节点发送一个确认操作已经提交的应答信息。</p>
<p><strong>Heartbeat</strong></p>
<p>除了向副节点发送日志信息，主节点还会定期向副节点发送<strong>heartbeat</strong>。如果没有收到主节点发来的<strong>heartbeat</strong>，副节点将认为主节点或网络可能出现故障，并且发起一次主节点选举来解决这次潜在的问题。在任意的时间点，副节点在重演replication stream时都有可能滞后于主节点，所以在那一时刻副节点的环境可能会与主节点不一样（尽管在副节点赶上主节点之后，这些环境最终都将一致）。副节点将会利用<strong>heartbeat</strong>中的信息来判断在重演replication stream的时候它落后于主节点的程度，从而可以让副节点满足读一致性的要求（读一致性的要求决定了什么样的滞后程度是可以接受的）。</p>
<h1>应用程序架构</h1>
<p>JE HA建立在JE的基础之上，所以共用了JE大部分的API。然而，基于JE HA的应用程序是一个分布式的应用程序，这会带来一些额外的问题，而解决这些问题的最佳时机是在对应用程序的架构进行初始设计的时候。在这一章节中，我们将对JE HA的一些主要特性做一个概述，这些特性会对基于JE  HA的应用程序的架构设计有直接的影响。</p>
<h2>在应用程序中嵌入数据管理</h2>
<p>这一小节将会基于JE来讨论什么是在应用程序中“嵌入”数据管理，并且会将此讨论延伸到JE HA中。</p>
<p>在谈论JE的时候，我们通常用术语“嵌入式（embedded）”来描述应用程序和数据管理能力之间的关系。这些通过JE的类库实现的数据管理能力是被嵌入到应用程序中的。由于JE是被应用程序直接使用和管理的，所以应用程序的用户或者管理员都不需要注意到JE的存在。这种应用程序有可能运行在一个嵌入式设备中，比如一台手持设备，一台桌面机器或者一个数据中心。事实上，JE提供的是存储层的功能，因此它往往是作为存储引擎来为应用程序提供数据管理服务。</p>
<p>对比其他传统的客户端-服务器端（client-server）数据管理架构，嵌入式的数据管理架构有以下一些优点：</p>
<ul>
<li>数据将以原始的形式进行存储和读取，而不需要在不同的数据模型（比如，关系型（relational）数据模型）之间进行转换。应用程序可以将一些结构体或者复杂的对象直接进行序列化后存储进JE的数据库中。</li>
<li>不需要数据库管理员（DBA）。相反，应用程序将数据库配置和管理直接纳入到它自身的配置和管理中，其结果仅需在应用程序中增加几个新的配置。</li>
<li>数据库能够自动恢复（recovery）。终端用户不会注意到任何单独的数据库恢复过程。相反，应用程序在打开一个数据库的时候，JE只在必要的时候会自动并且透明地进行数据库恢复。类似的，当应用程序关闭时，数据库也会被自动关闭。</li>
<li>性能会优于传统的客户端-服务器端架构，其原因是嵌入式结构将消除进程之间通信的额外消耗。这种进程间的通信通常发生在应用程序和数据管理服务之间。</li>
</ul>
<p>对于JE HA来说，应用程序通常运行在replication group中的每一个可选节点中，并且都拥有一份JE 环境副本。在基于JE HA的应用程序中嵌入数据管理的方式与基于JE是一样的。运行在主节点中的应用程序可以进行读和写的操作；而运行在副节点中的应用程序则只能进行读操作。</p>
<p><strong> </strong></p>
<h2>写操作管理</h2>
<p>应用程序负责将应用层面上对数据库的所有修改请求（例如，通过JE对数据进行插入、删除和修改操作，以及对数据库的建立、重命名、清空和删除操作等等）提交到主节点上。应用程序有两种方式可以向主节点发送写操作请求：</p>
<ul>
<li>基于副节点的转发：每一个副节点上的应用程序时刻与主节点保持联系，并且能将所有写操作请求转发到当前主节点。</li>
<li>基于监测节点的路由：应用程序在监测节点中运行一个路由程序，该路由程序可以将写操作请求路由到当前主节点，并且能够将读操作请求路由到所有合适的活跃节点以达到负载平衡。</li>
</ul>
<p>当你在以上两种方式做出选择时，必须考虑以下几个因素：</p>
<ul>
<li>与当前存在的负载平衡机制的整合。在某些情况下，例如，一个基于硬件的负载平衡器，并不容易甚至不可能将一个中间级的路由器整合进来。在这种情况下，基于副节点的转发将是最好的选择，因为这种机制不会干扰到当前负载平衡机制。</li>
<li>写操作请求的延迟性。利用基于副节点路由来转发一个写操作请求会带来额外的网络跃点（network      hop），因此会增加写操作请求的延迟时间。这种延迟的增加在某些应用程序中并不希望看到，例如这些应用程序要求较低的写延迟和较短的反应时间。</li>
<li>网络利用率。如果写请求的平均有效载荷很高，操作请求的转送机制会与replication      stream竞争网络资源，这样反而会影响replication性能。如果应用程序的写请求有效载荷很高，那么基于监测节点的路由会是更好的选择。</li>
<li>操作请求的格式。如果采用基于监测点的路由方式，可能需要对应用程序的操作请求格式设计成能够易于识别其是否为写操作。例如，网络应用可以利用URL的格式协议来让路由器能识别读操作和写操作。当采用基于监测点路由方式时，必须要考虑到设计这些请求格式时的额外需求。</li>
<li>路由器的可用性。对于高可用性，应用程序的设计者必须考虑到使用多路由的情况，这样路由器就不会是导致故障发生的热点。在采用基于监测点路由时，多路由会带来额外的复杂性。</li>
</ul>
<p>对这两种方式的选择是对简单性和性能之间的权衡考虑。基于监测点的路由方式也许会提供更高的性能，但也会带来额外的复杂性。基于副节点的转发方式实现起来相对简单，但相对来说或许没有那么好的性能。</p>
<p>由于不同应用程序中的操作请求的格式和协议各有不同，JE HA并不提供任何机制用于传送成员节点之间或者路由器和成员节点之间的操作请求。应用程序必须自己提供这样的传送功能。</p>
<p>不过，JE HA提供接口用于判定replication group中的成员节点，并且能跟踪当前主节点的状态。</p>
<p>以下几个章节将描述JE HA所支持的一些功能，这些功能将会帮助用户实现上述的两种方式。</p>
<p><strong>基于副节点的转发</strong></p>
<p><img class="aligncenter" src="data:image/png;base64,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" alt="" width="437" height="310" /></p>
<p><strong>（图三）基于副节点的转发</strong><strong> </strong></p>
<p>一个基于JE HA的应用程序通过一个支持replication的环境的句柄（replicated environment handle）来访问其环境副本。这个句柄的API可以为应用程序提供以下功能：</p>
<ul>
<li>决定节点当前状态。例如，可以查询某个节点当前是主节点或是副节点。</li>
<li>将一个状态变化监-听-器（state change listener）和一个句柄相关联。这样，状态变化监-听-器将会持续收到来自主节点的各种信息。</li>
</ul>
<p>利用这些API，应用程序可以知道它当前所在的节点是否是主节点。如果不是，那么它可以将它接收到的写请求操作转发到当前的主节点上，过程如图三所示。用于转发写请求操作到恰当的节点的机制实际上是应用程序所提供的，并不会涉及JE。</p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong>基于监测节点的路由</strong></p>
<p style="text-align: center;"><img class="aligncenter" src="data:image/png;base64,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" alt="" width="367" height="370" /></p>
<p><strong> </strong></p>
<p><strong>（图四）基于监测节点的路由</strong><strong> </strong></p>
<p>监测节点并不拥有环境的本地备份。它唯一的作用就是用来跟踪replication group当前的状态。路由程序可以根据这些状态信息来将读写操作路由到replication group适当的节点中去。路由程序是应用程序基础架构中的一部分，一般来说不会包含任何应用程序特有的逻辑，但有一个例外：路由程序有足够的信息可以识别读操作和写操作请求格式。</p>
<p>为了实现这种方式的路由，应用程序将一个监-听-器和监测节点句柄（monitor handle）相关联起来。监-听-器接受三类消息：</p>
<ul>
<li>组内成员节点组成的变化。组内成员节点的加入和移除都会通知给监-听-器。</li>
<li>组内当前主节点的变化。</li>
<li>组内节点当前状态的变化。也就是，此节点当前是否是活跃节点。</li>
</ul>
<p>路由程序一旦接收到应用程序的操作请求，就会判断此请求是否是写操作请求。若是，路由程序将利用监测节点来确定哪个节点是主节点，从而将此写操作请求转发到主节点。对于读操作请求，它利用监测节点来确定组内的当前节点组成，选择一个活跃节点来完成读操作请求，从而在此过程中实现负载平衡。</p>
<p>更复杂的路由程序的实现将会根据键值范围（key ranges）的分布以及数据读取的方式，将每个读操作请求转发到某个最有可能在缓存中拥有此被读数据备份的成员节点中。因此可以说，该方式实现了一种读分区（read partition）数据存储模式。</p>
<h2>可选节点的热备切换（failover）</h2>
<p>在程序运行过程中，主节点的选举过程是透明的。因此，应用程序必须允许由于选举而产生的各种状态变化，这样应用程序才能在状态变化中继续运行。下面几种状态的变化均是由于热备切换所导致的：</p>
<ul>
<li>如果当前主节点发生故障，那么某个可选节点将会由副节点通过选举转变成主节点。在利用基于监测节点路由机制的应用程序中，这种转变意味着，一个之前只能接收读操作请求的节点，现在开始接受和处理写操作请求。而在利用基于副节点转送机制的应用程序中，新的主节点必须停止转发写操作请求，相反，它必须开始接受来自其他副节点的写操作请求。</li>
<li>当前的主节点可能转变成副节点。这种情况很少发生，一般会涉及到临时网络分割（network      partition），这时候主节点不能参与节点选举。因此，剩下的节点会重新选举一个新的主节点。在该情况下，由于某些试图在此副节点（之前是主节点）上进行写操作的事务会失败，并抛出异常，因此变成副节点之后的该主节点必须转发所有它接收到的写操作请求，或者拒绝这些请求。</li>
<li>由于热备切换，一个副节点可能会将自己与发生故障的主节点间的通信切换到一个选举出来的新主节点。通常这种转变对应用程序是透明的。JE      HA只需重新与新的主节点建立replication stream。在某些罕见的情形下，JE HA有可能需要进行恢复操作，并撤销某些之前已经提交的事务。在这种情况下，replication环境的句柄便会失效。因此，应用程序必须重新建立环境和数据库的句柄，并且通过访问之前环境句柄重新获得所有被缓存起来的瞬时状态。</li>
</ul>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<h1>JE HA事务配置选项</h1>
<p>支持Replication的环境必须是是事务性（transactional）的。支持Replication的事务提供了额外的选项用于对事务进行配置，这些选项对应用程序的性能有直接的影响。对这些配置选项的选择实际上是对持久性、写可用性、副节点读一致性以及性能等各方面的权衡考虑。这一章节将具体描述这些配置选项，并且突出讨论如何进行这种权衡考虑。</p>
<h2>持久性选项</h2>
<p>JE提供了三种不同程度的持久性，分别对应于已经提交的数据在磁盘上所具有的三种不同的持久状态。</p>
<ul>
<li><strong>SYNC</strong>：已经提交的更新被写到磁盘上。该级别的持久性能够保证在机器发生故障的时候，已经提交的数据不会被丢失。但是这种持久性并不能保证在媒介（比如磁盘）损坏的时候数据没有丢失。</li>
<li><strong>WRITE_NO_SYNC</strong>:      已经提交的更新被写进文件系统缓冲区。该级别的持久性仅仅保证在应用程序发生故障时，已提交的数据不会丢失。如果机器不发生故障，这些已经提交的数据将最终写进磁盘。</li>
<li><strong>NO_SYNC</strong>:      已提交的更新只写进JE的内部缓冲区。在这一级别的持久性中，已提交的数据在应用程序发生故障的时候会丢失。</li>
</ul>
<p>JE HA扩展了JE持久性的概念，即允许事务通过向快速的网络提交更新从而持久化数据，而不是提交到相对缓慢的磁盘上。因此，除了允许在主节点和副节点中设置以上提及的各种同步级别之外，JE HA还规定副节点完成事务重演之后向主节点发送一个提交响应。并不是所有事务的提交都会从副节点中返回一个响应。主节点只有在必要的时候才会明确要求副节点产生响应。如果一个副节点已经落后于主节点并且尝试赶上主节点，那么主节点将不会要求该副节点发送响应。</p>
<p>因此，JE HA的持久性有三个方面：</p>
<ul>
<li>主节点上数据同步的程度。</li>
<li>对副节点返回响应数目的要求，这一要求在与事务相关的响应策略（Acknowledgment      Policy，下文会有介绍）中有所规定。</li>
<li>在副节点返回提交响应前，副节点上数据的同步程度。</li>
</ul>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong>响应策略（Acknowledgment Policy</strong><strong>）配置</strong></p>
<p>响应策略配置提供三种可能的选择：ALL，SIMPLE_MAJORITY以及 NONE。</p>
<ul>
<li><strong>ALL</strong>：该策略要求，在事务被主节点持久化之前，所有可选的副节点都必须向主节点发送响应说明它们已提交了这些事务。这一策略会保证较高的数据可持久性，因为在此事务被持久化之前，每个副节点都拥有一份该事务所做的更新操作的拷贝。该策略也保证副节点上较高的读一致性，这是因为所有副节点都能赶上主节点，并且在副节点处理replication      stream的过程中没有滞后性。然而，该策略会降低replication group的写可用性，特别是在replication group的节点数较大的情况下。因为即使仅仅一个节点变成不可用，写事务提交操作都会失败。另外一个缺点是提交的延迟性会被提高，因为提交所需的时间将会由性能最差的副节点决定。</li>
<li><strong>SIMPLE_MAJORITY</strong>：该策略要求，简单多数（即过半数）的可选节点必须向主节点发送响应说明它们已经提交了事务。由于在事务被提交之后，该事务所做的数据更新的拷贝存在于过半数的副节点中，并且当其余的副节点赶上replication      stream的进度时，这些更新最终会传播到这些节点中，因此该策略保证了中级别到高级别的持久性。如果在主节点上某次事务成功提交之后，主节点发生故障，选举程序将保证这些事务的更新不会被丢失。之所以有这个保证，是因为选举程序要求过办数的可选节点都参与到选举过程中，从而保证了至少一个节点既发送了事务提交响应又参与了选举过程。选举算法更进一步保证拥有最新日志的节点将被选举成为主节点，这样可以在产生事务的主节点发生故障之后保持这些更新<strong>。</strong></li>
</ul>
<p>“SIMPLE_MAJORITY”策略在副节点上的读一致性没有“All”策略那么高，这是因为主节点上事务产生的更新有可能没有被复制到并不发送事务提交响应的副节点上（由于只有过半数的副节点要求发送响应）。因此，对数据一致性的要求比较严格的事务会停滞在所有有滞后的副节点中，直到这些滞后的副节点赶上主节点。在正常情况下，这种滞后会很小，并且处于滞后中的副节点会迅速赶上主节点的事务。</p>
<p>“SIMPLE_MAJORITY”策略具备从中等级别到高等级别的写可用性，这是因为replication group允许节点发生故障，并且只要有过半数的节点保持可用，那么replication group便可以继续完成那些要求过半数持久性的写事务。由于主节点需要等待的节点数较少，所以“SIMPLE_MAJORITY”策略的性能比“all”策略要好，同样，主节点会向所有与它有通信的副节点发出响应请求，但它只需要等待到过半数的副节点做出反应即可。这样意味着提交延迟并不会取决于组内速度最慢的节点。</p>
<ul>
<li><strong>NONE</strong>：在该策略下，事务的持久性不依赖于任何副节点发送提交响应。只要事务满足主节点上的同步策略，就可以认为该事务已经被持久化。由于并不能保证在事务提交的时候所做的更新已经被复制到其他副节点中，因此这种策略会导致较低级别的持久性（相对于不支持replication的JE环境）。如果在主节点上某次事务成功提交之后，主节点发生故障，那么这次事务所做的更新有可能会丢失。同样，该策略导致副节点上的读一致性较低，特别是在主节点负载很重并且没有必需的资源来维持replication      stream的时候。因此，副节点有可能会远远落后于主节点。总而言之，这种策略会提供较高的写性能，但也会带来较低的持久性。</li>
</ul>
<p>下面的表格总结了这三种响应策略的优缺点：</p>
<table border="1" cellspacing="0" cellpadding="0" width="542">
<tbody>
<tr>
<td width="124" valign="top"></td>
<td width="93" valign="top">持久性</td>
<td width="96" valign="top">写可用性</td>
<td width="120" valign="top">副节点读一致性</td>
<td width="108" valign="top">写操作性能</td>
</tr>
<tr>
<td width="124" valign="top">All</td>
<td width="93" valign="top">高</td>
<td width="96" valign="top">低</td>
<td width="120" valign="top">高</td>
<td width="108" valign="top">低</td>
</tr>
<tr>
<td width="124" valign="top">SIMPLE_MAJORITY</td>
<td width="93" valign="top">中-高</td>
<td width="96" valign="top">中-高</td>
<td width="120" valign="top">中-高</td>
<td width="108" valign="top">中</td>
</tr>
<tr>
<td width="124" valign="top">NONE</td>
<td width="93" valign="top">低</td>
<td width="96" valign="top">高</td>
<td width="120" valign="top">低</td>
<td width="108" valign="top">高</td>
</tr>
</tbody>
</table>
<h2>副节点读一致性</h2>
<p>因为replication stream代表着被序列化的JE数据库日志，所以对replication stream的重演会导致副节点从一个事务的一致性状态转变到另外一个事务的一致性状态。副节点的重演机制保证所有事务性的更新会作为一个原子单元来提交，并且更新的过程会与其他正在进行的写事务隔离开，从而保证这些更新所要求的隔离性（isolation）。如果从单独一个节点的角度来看，副节点的所有行为完全具备事务性，并且满足通常的ACID特性，就如不支持replication的JE环境一样。这一章节将讲述关于副节点与主节点之间一致性的问题。</p>
<p>JE HA支持最终一致性（Eventual Consistency）。这种一致性模型并不能保证在事务在主节点提交的那一刻，所有副节点保持一致。然而，它保证在足够长的一段时间内如果没有新的更新产生，那么所有的更新会在所有的成员节点中传播，并且所有的副节点最终会与主节点共享一个一致的环境视图（environment view）。</p>
<p>由于所有在主节点上的读操作都具有绝对的一致性，所以所有要求绝对一致性的读操作都应该路由到主节点中。应用程序可以利用之前提到过的写转发（write forwarding）技术将这些读操作请求发送到主节点中。然而，对于并不要求绝对一致性的情况，在副节点的读事务开始时，读事务可以指定副节点滞后于主节点最大所能接受的程度。有两种方式可以量化这种滞后程度：</p>
<ul>
<li>以时间衡量 – 在JE API的TimeConsistencyPolicy中有所描述。</li>
<li>以副节点在replication      stream中的位置衡量 – 在JE API的CommitPointConsistencyPolicy中有所描述。</li>
</ul>
<p>滞后的程度主要取决于主节点和副节点的负载，以及传输replication stream时的通信延迟。还有一种可能的情况是，某个副节点在一段时间内都没有和主节点联系，它需要赶上主节点在这段时间内所做的一些更新。</p>
<p>对一致性策略的选择取决于应用程序所采取的操作的性质。而对所选择策略的配置会直接影响到副节点上的读操作性能。接下来的章节将会详细描述这些策略以及它们的一些配置。</p>
<p><strong>时间一致性策略（Time Consistency Policy</strong><strong>）</strong></p>
<p>这种策略描述了当副节点上的读事务开始时，副节点允许滞后于主节点的时间长短。假设t0是当前时刻（t0是时刻变化的），lag是所允许滞后的时间长度，那么所有在（t0 – lag）时刻之前在主节点上被提交的事务都必须在副节点上进行重演。而在这些事务进行重演之前，副节点上的读事务都不允许进行。值得强调的一点是，t0是时刻变化的瞬时间，而不是读事务开始时的固定时间，意味着副节点是在试图赶上一个随时间不断移动的目标。因此，这里的滞后表示的是一个有固定长度的时间窗（长度为lag），这个时间窗是随时间而不断移动的。所以，副节点上的读事务会一直等到副节点对replication stream的重演充分赶上主节点之后才开始，也就是说，直到副节点所重演的事务落在长度为lag的时间窗口之内时，或者来自主节点上的heartbeat表示副节点已经赶上主节点时，副节点上的读事务才可以开始。如果副节点在规定的时间内（这一时间同样由此策略设置）没有赶上主节点，那么读操作事务将会被放弃。</p>
<p>时间一致性策略可以适用于某些网页应用中。在这些应用中，可以使滞后时间小于用户访问一序列的网页时的交互时间。</p>
<p>在给定的负载和可用的硬件资源情况下，如果将滞后时间设置得过短，会导致经常性的超时异常，从而会降低副节点的读操作可用性。过短的滞后时间同样会增加读操作请求的等待时间，因为副节点会让读事务一直等待，直到它能在replication stream中赶上主节点。应用程序的设计者应该需要从应用程序的角度来决定可以接受的最长滞后时间，然后用这个时间来配置时间一致性策略。</p>
<p><strong>提交点一致性策略（Commit Point Consistency Policy</strong><strong>）</strong></p>
<p>这个策略以副节点在replication stream上所处的位置来定义滞后时间，这个位置与某个特定的事务的提交点相关。这个策略保证，在副节点上的读操作可以开始之前，replication stream上所有在提交点之前出现的事务，包括处于提交点的事务，都将被副节点重演。这种情况下的滞后表示了一个可扩大的事务更新窗口，窗口的下端固定在提交点，而窗口上端可以随着新事务在主节点上的提交而扩大。JE HA扩展了事务的API，从而使应用程序可以得到与某事务的提交点。</p>
<p>和时间一致性策略一样，如果副节点在该策略规定的时间内没有重演提交点所限定的事务，那么副节点上的读操作事务会被放弃。</p>
<p>提交点一致性策略可以为网页应用提供会话一致性（session consistency）。通过将一个提交点和用户的会话相关联，并且在会话的每一个写操作中更新提交点，这样便可以实现会话的一致性。会话中的读事务可以利用提交点一致性策略来保证所有的读事务都可以读到会话所写入的数据，而无论该读操作是发生在哪个副节点上。</p>
<p>由于需要应用程序在读写操作过程中维护提交点的状态，所以提交点一致性的使用会比时间一致性复杂。时间一致性相对来说比较简单，但是它对时间的依赖意味着，当主节点、副节点或者网络负载过高时，这一策略不一定能正确地实施。</p>
<h1>性能</h1>
<p>由于JE HA 以JE为基础，因此所有适用于JE的性能调优方法都适用于JE HA。除此之外，还有一些专门针对JE HA的调优。以下章节将进行详细说明。</p>
<h2>持久性</h2>
<p>持久性配置对应用程序的写操作性能调优来说是最重要的方面之一。在不支持replication的JE环境中持久性的缺省设置是SYNC，这样可以保证已提交的事务在机器发生故障时不会被丢失。虽然SYNC设置通常会导致较大的性能损失，但为了保证数据在事务提交之后可以永久保留在磁盘上，这种设置是必要的。</p>
<p>对基于JE HA的应用程序的调优，把持久性设置成，NO_SYNC和SIMPLE_MAJORITY是一个较好的着手点。这个设置可以允许主节点和副节点异步地向文件系统和磁盘写入数据，也就是在提交之后的某个时间点才写入磁盘，而不是在提交后马上同步写入文件系统和磁盘。此外，当向磁盘存储数据时，JE可以对多个事务产生的更新进行打包，从而形成条数较少的，体积较大的，然而效率会更高的顺序写操作。</p>
<p>把提交响应策略设置成SIMPLE_MAJORITY可以减少主节点等待提交响应所带来的延迟时间，因为这种延迟不受性能最差的副节点所决定。对节点数目较大的replication group来说，延迟时间会随着节点数目的增大而延长。采用SIMPLE_MAJORITY设置可以保证万一当前的主节点发生故障时，数据在其他副节点中是可用的。但是有一种情况例外：即同时有多个程序发生故障从而导致过半数的节点（这些节点将会产生提交响应）在事务提交之后并且在将数据存储到磁盘之前发生宕机。这时候主节点会由于接收不到过半数的节点发来的提交响应而进行无限期等待。</p>
<p>从这种持久性设置开始着手调优，程序设计者可以为程序的整体需求选择最好的持久性等级。值得注意的是，持久性可以在事务级别上进行设置。这样可以允许一个程序的不同部分根据本地的需求使用不同级别的持久性。</p>
<h2>读一致性</h2>
<p>为了能有效利用副节点上的读操作吞吐量，并且能使主节点上的负载达到最小（因为只有主节点才能进行写操作），所有不要求绝对一致性的读操作请求都应该由应用程序路由到副节点上。并且，为了使延迟达到最小，可以在满足应用程序需求的条件下选择最不严格的一致性策略。</p>
<p>和持久性一样，可以在单独的事务级别上设置一致性。在之前的章节中，已经详细说明了如何选择和设置一致性策略。</p>
<p><strong>Replication stream</strong><strong>的</strong><strong>代价</strong><strong> </strong></p>
<p>JE HA利用TCP协议从主节点向副节点传输replication stream。在一个有N个节点的replication group中，一共有（最后肯定会有）N-1份日志拷贝在网络中传输。因此在设计数据模型时，对键（key）所占空间大小进行优化会对性能有所帮助。特别是对写密集型的应用程序来说，这一点尤其重要。</p>
<p>值得注意的是，正如写操作性能的瓶颈往往是连续写磁盘的吞吐量，网络的吞吐量也正是replication性能的瓶颈。因此，重要的是要确保可利用的网络带宽能够负担预期的写负载。</p>
<h2>副节点的滞后</h2>
<p>当主节点需要向副节点发送最新的日志条目时，由于最新的日志条目很有可能存储在主节点的缓存中，从而不需要访问磁盘，因此主节点上的缓存能有助于主节点高效地构造replication stream。如果需要访问磁盘来获得旧的日志条目，则会导致与正在进行的所有磁盘写操作（这些写操作会在磁盘存储新的日志条目）发生竞争。这种读/写磁盘的竞争会扰乱顺序写磁盘的模式，而这种模式正是JE能保证较高写操作性能的关键。</p>
<p>因此，最好能保证所有的节点处在运行状态，这样副节点可以和主节点的保持一致，主机点将不用频繁通过访问磁盘来构建replication stream。如果某个副节点发生故障，则应尽快让它恢复运行。</p>
<p>如果某个节点（假设是节点A）发生故障，某些日志文件尽管已经被清除器（cleaner）回收，但是这些日志对节点A来说是其恢复运行后构建replication stream所必需的，那么JE HA将会阻止replication group中其他活动节点删除这些日志文件。JE HA只会在某段时间（这个时间是可设置的）之内阻止对这些日志文件的删除。在这段时间内，日志文件将会在活动节点中不断堆积，导致活动节点存在磁盘空间耗尽的风险。如果节点A在这段时间之后（磁盘空间已经耗尽）重新运行，那么有可能任何一个活动节点中都不存在一个连续的replication stream。因此，这种情况下节点A需要进行网络恢复（Network Restore）操作。网络恢复操作将某个活动节点中的日志文件复制到节点A中，然后在节点A中开始重演主节点发送过来的replication stream。如果数据库环境比较大，网络恢复操作则有可能是磁盘读/写密集型和网络传输密集型操作。</p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<h1>JE HA的可扩展性</h1>
<p>JE HA架构支持单节点写和多节点读。下面的章节将分别描述读操作和写操作的扩展。</p>
<h2>写扩展性</h2>
<p>对于单节点写来说，写操作的可扩展性主要由主节点处理写操作的能力所决定，继而又取决于主节点上可用的硬件资源。通过使用提交到网络这种持久性策略，以及通过降低那些不需要绝对一致性的读操作的负荷，主节点可以降低某些I/O负载。</p>
<p>在当前的实现中，主节点负责维护发送到其他所有成员节点的replication stream。每个replication stream的构建都会在主节点上增加CPU负载。为了改进这个问题，每个replication stream都将由一个专门的feeder线程来维护，这个feeder线程可以利用多核机器的优势来维护并行的replication stream。每个replication stream同样会给主节点所在的子网带来网络传输负载，并且写密集型的应用程序对带宽的需求有可能会超出子网上可用的网络带宽。</p>
<p><strong>写分区（</strong><strong>partition</strong><strong>）</strong><strong> </strong></p>
<p>如果应用程序的需求允许，写操作的水平扩展性可以通过将数据分区到多个支持replication的环境中实现。但是JE HA目前没有提供明确的API来支持这种数据分区。</p>
<p>下图描述了如何利用三个支持replication的环境来对数据进行分区：RE1，RE2和RE3对应着三个replication groups，G1，G2以及G3。数据既可以均匀地分布在三个组中，也可以基于预期的写/更新频率来进行分区。例子中的每个replication group由三个可选节点以及一个监测节点组成。这几个replication groups分布在三台机器中MC1，MC2以及MC3。</p>
<p>这个例子里的路由器包含三个监测节点：G1（M），G2（M）以及G3（M），每个监测节点对应一个replication group。路由器必须根据数据分区规则来将数据操作请求路由到特定的节点中。这些路由方式都取决于要访问的数据本身以及操作的类型（读或写）。</p>
<p><img class="aligncenter" src="data:image/png;base64,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" alt="" width="377" height="309" /></p>
<p><strong>（图五）</strong><strong>HA</strong><strong>写分区：</strong><strong>3</strong><strong>个写分区，</strong><strong>3</strong><strong>个</strong><strong>replication groups</strong><strong>，每个</strong><strong>replication group</strong><strong>有</strong><strong>3</strong><strong>个可选节点。</strong><strong> </strong></p>
<h2>读扩展性</h2>
<p>JE HA中读扩展性可以通过多个只读副节点来实现。JE HA并没有对replication group中节点的数目有所限制。添加一个新的节点并不会增加当前的replication group对资源的需求。但是正如上文所描述一样，添加新节点会增加写节点（即主节点）以及网络的负载。</p>
<p>通过添加新节点来提高读扩展性对于应用程序来说是完全透明的。一个新节点可以被添加进一个正在运行的replication group中，并且一旦这个新节点在本地拥有足够多的日志副本，新节点便可以开始处理读操作请求。</p>
<h1>结语</h1>
<p>JE HA通过简单、直接地扩展JE的API来提供快捷、可靠以及可扩展的数据管理功能，并且能够嵌入到应用程序当中。JE HA的配置是十分灵活的，允许用户在数据持久性、数据一致性以及性能等方面综合权衡之后，设计出具有广泛适用范围的应用程序。</p>
<p>你可以在以下网址下载Oracle Berkeley DB Java版本：</p>
<p><a href="http://www.oracle.com/technology/software/products/berkeley-db/je/index.html">http://www.oracle.com/technology/software/products/berkeley-db/je/index.html</a></p>
<p>你可以在Oracle Technology Network（OTN）上提交你对Oracle Berkeley DB Java版本的意见或者问题：</p>
<p><a href="http://forums.oracle.com/forums/forum.jspa?forumID=273">http://forums.oracle.com/forums/forum.jspa?forumID=273</a></p>
<p>关于销售或者产品支持的信息，请发送Email：berkeleydb-info_us@oracle.com</p>
<p>想了解关于新产品发布信息，请发送Email：bdb-join@oss.oracle.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2011/09/berkeley-db-java-edition-%e9%ab%98%e5%8f%af%e7%94%a8%e6%80%a7%e4%bb%8b%e7%bb%8d/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>在Windows平台运行JE-HA示例</title>
		<link>http://www.bdbchina.com/2010/03/%e5%9c%a8windows%e5%b9%b3%e5%8f%b0%e8%bf%90%e8%a1%8cje-ha%e7%a4%ba%e4%be%8b/</link>
		<comments>http://www.bdbchina.com/2010/03/%e5%9c%a8windows%e5%b9%b3%e5%8f%b0%e8%bf%90%e8%a1%8cje-ha%e7%a4%ba%e4%be%8b/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 08:40:54 +0000</pubDate>
		<dc:creator>taozhang</dc:creator>
				<category><![CDATA[Berkeley DB JE]]></category>
		<category><![CDATA[Tao Zhang]]></category>
		<category><![CDATA[example]]></category>
		<category><![CDATA[HA]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=867</guid>
		<description><![CDATA[JE-HA是JE 4.0推出的一项新特性，本文介绍了JE-HA示例的基本功能和原理，并演示了如何在Windows平台上运行JE-HA的示例代码。]]></description>
			<content:encoded><![CDATA[<p>Oracle Berkeley DB Java Edition (简称JE)从4.0开始推出了高可用(又称集群、HA)功能，从而让用户能够更容易的编写高可靠的、7×24在线的应用程序。随版本一起还发布了很多HA的示例代码。本文的主要目的是示范如何在windows平台上运行这些示例，从而帮助用户更好的理解和使用HA。</p>
<h3>1.下载JE</h3>
<p>用户可以到官方网址<a href="http://www.oracle.com/technology/software/products/berkeley-db/je/index.html">http://www.oracle.com/technology/software/products/berkeley-db/je/index.html</a>下载最新的JE版本，本文使用的是JE 4.0.71. 同时，您也可以到<a href="http://www.oracle.com/technology/documentation/berkeley-db/je/examples/je/rep/quote/package-summary.html">http://www.oracle.com/technology/documentation/berkeley-db/je/examples/je/rep/quote/package-summary.html</a>参考示例的详细英文文档。</p>
<h3>2.编译示例</h3>
<p>请确认您在编译示例之前已经安装好JDK，如果您的机器上没有安装，请到<a href="http://java.sun.com">http://java.sun.com</a>下载JDK。</p>
<p>用户下载示例后，解压缩到当前目录，你会发现一个je-4.0.71的目录，进入该目录，您会在lib目录下发现JE的jar包，HA的示例代码存放在examples/je/rep/quote目录下。将lib下的je-4.0.71.jar拷贝到examples/je/rep/quote下，打开命令行，进入到当前目录，输入如下命令：javac -cp .;je-4.0.71.jar *.java，该目录下的所有java文件都会被编译成class文件。</p>
<h3>3.示例代码概述</h3>
<p>JE-HA的示例代码分为三种：</p>
<ul>
<li>StockQuotes：该示例代码是一个最基本的使用JE-HA应用程序的展示，其主要目的是让您对JE-HA的基本概念有一个了解，并演示了如何使用JE-HA的API创建一个ReplicatedEnvironment和处理读写事务。</li>
<li>RouterDrivenStockQuotes和HARouter：RouterDriverStockQuotes以StockQuotes为基础，展示了如何使用JE Monitor（HARouter）根据应用程序请求的类别（读或写）和结点的状态（Master或Replica），指引请求到正确的结点。该示例的目的是演示如何将负载平衡器与JE-HA结合起来，在该示例中，HARouter扮演负载平衡器的角色。</li>
<li>UpdateForwardingStockQuote和SimpleRouter：UpdateForwardingStockQuote以RouterDrivenStockQuotes为基础，与HARouter不同，SimpleRouter并不关心应用程序的请求类别和结点的状态，只是简单的将请求转发给它所知道的结点，而UpdateForwardingStockQuote使用了StateChangeListener来跟踪当前的Master结点，并将写请求转发给Master，自己处理读请求。这个示例的目的是演示如何将一个负载平衡器嵌入到JE-HA的框架中。</li>
</ul>
<p>本文主要演示如何运行前两个示例，第三个示例的运行方法与第二个基本类似，在这里就不做详细介绍了。<span id="more-867"></span></p>
<h3>4.创建运行环境</h3>
<p>为了演示的方便（截图的原因），我在同一台机器上运行三个HA结点。在开始运行示例代码之前，需要创建每个结点的environment home目录。这里，我在examples目录下创建三个目录，分别为：rep1，rep2，rep3。</p>
<p>因为JE-HA示例代码的包是je.rep.quote，所以命令行需要在examples目录下运行。</p>
<h3>5.运行StockQuotes示例</h3>
<p>(1).启动三个结点，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-startup.jpg"><img class="aligncenter size-large wp-image-868" title="StockQuotes-startup" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-startup-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<p>(2).在Master上写数据，在Replica上读取数据，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-read-replica.jpg"><img class="aligncenter size-large wp-image-870" title="StockQuotes-writemaster-read-replica" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-read-replica-1024x482.jpg" alt="" width="1024" height="482" /></a></p>
<p>（3). 如果在Replica上写数据。由于JE-HA只允许在Master上写数据，因此该操作是非法的，控制台会打印出提示信息，如下图红框内所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writereplica.jpg"><img class="aligncenter size-large wp-image-871" title="StockQuotes-writereplica" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writereplica-1024x484.jpg" alt="" width="1024" height="484" /></a></p>
<p>(4).将Master关闭，JE-HA会在当前集群中重新选举出一个新的Master，只有现存的Replica的数目符合选举策略，如下图红框内所示，node3被选举成为新的Master：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-changemaster.jpg"><img class="aligncenter size-large wp-image-872" title="StockQuotes-changemaster" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-changemaster-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<p>(5).将剩下的Replica也关掉，只剩下Master，这种情况下，应用程序还可以在Master上正常读取数据，如果进行写数据操作，写操作可以提交，但是会抛出InsufficientReplicasException异常。这是因为示例的默认事务提交策略是要得到超过半数的Replica的回应的，但是当前没有任何活跃的Replica，所以虽然写操作提交成功，但同时会抛出异常信息。如下两图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-printmaster-replicadown.jpg"><img class="aligncenter size-large wp-image-873" title="StockQuotes-printmaster-replicadown" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-printmaster-replicadown-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-insufficentreplica1.jpg"><img class="aligncenter size-large wp-image-874" title="StockQuotes-writemaster-insufficentreplica" src="http://www.bdbchina.com/wp-content/uploads/2010/03/StockQuotes-writemaster-insufficentreplica1-1024x483.jpg" alt="" width="1024" height="483" /></a></p>
<h3>6.运行RouterDrivenStockQuotes和HARouter示例</h3>
<p>运行RouterDrivenStockQuotes和HARouter示例与运行StockQuotes示例基本类似，唯一的不同是需要在启动三个RouterDrivenStockQuotes之外再启动一个HARouter。</p>
<p>(1).启动整个HA组，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-startup.jpg"><img class="aligncenter size-large wp-image-879" title="RouterDriven-startup" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-startup-1024x585.jpg" alt="" width="1024" height="585" /></a></p>
<p>(2).HARouter指引写请求到Master，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-write.jpg"><img class="aligncenter size-large wp-image-880" title="RouterDriven-write" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-write-1024x584.jpg" alt="" width="1024" height="584" /></a></p>
<p>(3).HARouter将读请求指引到目前空闲的结点，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-print.jpg"><img class="aligncenter size-large wp-image-877" title="RouterDriven-print" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-print-1024x584.jpg" alt="" width="1024" height="584" /></a></p>
<p>(4).关闭当前的Master，HARouter会自动找到新选出来的Master，如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-shutdown-master.jpg"><img class="aligncenter size-large wp-image-878" title="RouterDriven-shutdown-master" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-shutdown-master-1024x582.jpg" alt="" width="1024" height="582" /></a></p>
<p>(5).当所有Replica都关闭，只剩下Master还活跃的时候，HARouter会提示写请求是非法的（原因在StockQuotes演示第六步已经介绍了），如下图所示：</p>
<p><a href="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-insufficentreplicas-write.jpg"><img class="aligncenter size-large wp-image-875" title="RouterDriven-insufficentreplicas-write" src="http://www.bdbchina.com/wp-content/uploads/2010/03/RouterDriven-insufficentreplicas-write-1024x583.jpg" alt="" width="1024" height="583" /></a></p>
<h3>7.总结</h3>
<p>JE-HA是对JE功能的一个巨大提升。希望本文能够让你更好的了解并使用JE-HA。如果您对本文有什么意见或对JE-HA有什么建议，请您站内留言。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2010/03/%e5%9c%a8windows%e5%b9%b3%e5%8f%b0%e8%bf%90%e8%a1%8cje-ha%e7%a4%ba%e4%be%8b/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Berkeley DB示例程序详解(3.1)</title>
		<link>http://www.bdbchina.com/2009/10/berkeley-db%e7%a4%ba%e4%be%8b%e7%a8%8b%e5%ba%8f%e8%af%a6%e8%a7%a331/</link>
		<comments>http://www.bdbchina.com/2009/10/berkeley-db%e7%a4%ba%e4%be%8b%e7%a8%8b%e5%ba%8f%e8%af%a6%e8%a7%a331/#comments</comments>
		<pubDate>Sun, 04 Oct 2009 08:42:07 +0000</pubDate>
		<dc:creator>davidzhao</dc:creator>
				<category><![CDATA[Berkeley DB]]></category>
		<category><![CDATA[David Zhao]]></category>
		<category><![CDATA[HA]]></category>
		<category><![CDATA[replication]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=616</guid>
		<description><![CDATA[/*
 * 这个示例程序演示了使用Berkeley DB的replication功能的方法。
 *
 * Berkeley DB提供了一套基本API和一套replication manager API来使用
 * 它的replication功能。
 * 前者有更大的灵活性，用户可以选择各种网络协议来实现数据传输，并且使用各种
 * 线程库来进行多线程编程。同时由于使用最基本的API， 用户可以定制选举和
 * replication系统的内部消息处理方式，非常灵活。所以这也意味着用户需要更多
 * 的代码来使用Berkeley DB replication功能，开发难度相对后者较大；
 * 后者基于TCP/IP协议和pthread线程库(Windows上面使用win32线程库)，并且按照通常
 * 的需求，对选举和内部消息处理进行了通用的处理，并且通过让用户配置
 * 策略(policy)和参数的方式提供一定的灵活性和可定制性。
 *
 * 本程序基于Berkeley DB的replication manager。
 *
 *
 * 名词术语：
 *
 * site：一个(数据库环境, IP地址, 端口(port))的三元组。所以，多个site可以处于
 * 不同的计算机上面，也可以在同一个计算机上面，只要配置了不同的端口并使用不同
 * 的数据库环境目录。
 *
 * replication group：由若干个site组成的集合，其中有且只有一个site 可以写入
 * 数据到数据库当中， 称为master；其余的site只可以从中读取数据，称为replica。
 *
 * master：接受读写请求。如果写入数据，那么这些写入的数据不仅会更新master
 * 自己的数据库，还会通过Berkeley DB的
 * replication功能，被传播到replication group当中的replica上面。一个
 * replication group通过选举或者显式指定的方式，得到master。
 *
 * replica：接受读请求。从master写入的数据会自动传播到每一个replica上面，从而
 * 将replica上面的数据更新。任何一个replica在选举的时候，都有可能成为新的master
 *
 * 一个replication group作为一个整体来看的话，它比一个单机有
 * 更大的数据读写能力，因为所有的site都可以提供数据，自然读数据的吞吐量更大；
 * 并且master可以被配置为只写入数据而不必理会读数据请求，由replica提供数据，
 * 这样，写入的吞吐量也更大。
 *
 * replication group比单机的另一个优势，就是高可靠性(high availability)，因为，
 * 其中如果任何一个site脱离（断电，网络故障，应用程序错误等），这个组都可以
 * 继续服务：如果一个replica脱离，那么
 * 还有其他replica可以提供数据，并且这个脱离的replica可以重新加入该组，其数据
 * 被自动更新到最新；如果master脱离，那么该组的所有replica举行选举，从中选
 * 出新的master。
 */
int
main(argc, argv)
 int [...]]]></description>
			<content:encoded><![CDATA[<p>/*<br />
 * 这个示例程序演示了使用Berkeley DB的replication功能的方法。<br />
 *<br />
 * Berkeley DB提供了一套基本API和一套replication manager API来使用<br />
 * 它的replication功能。<br />
 * 前者有更大的灵活性，用户可以选择各种网络协议来实现数据传输，并且使用各种<br />
 * 线程库来进行多线程编程。同时由于使用最基本的API， 用户可以定制选举和<br />
 * replication系统的内部消息处理方式，非常灵活。所以这也意味着用户需要更多<br />
 * 的代码来使用Berkeley DB replication功能，开发难度相对后者较大；<br />
 * 后者基于TCP/IP协议和pthread线程库(Windows上面使用win32线程库)，并且按照通常<br />
 * 的需求，对选举和内部消息处理进行了通用的处理，并且通过让用户配置<br />
 * 策略(policy)和参数的方式提供一定的灵活性和可定制性。<br />
 *<br />
 * 本程序基于Berkeley DB的replication manager。<br />
 *<span id="more-616"></span><br />
 *<br />
 * 名词术语：<br />
 *<br />
 * site：一个(数据库环境, IP地址, 端口(port))的三元组。所以，多个site可以处于<br />
 * 不同的计算机上面，也可以在同一个计算机上面，只要配置了不同的端口并使用不同<br />
 * 的数据库环境目录。<br />
 *<br />
 * replication group：由若干个site组成的集合，其中有且只有一个site 可以写入<br />
 * 数据到数据库当中， 称为master；其余的site只可以从中读取数据，称为replica。<br />
 *<br />
 * master：接受读写请求。如果写入数据，那么这些写入的数据不仅会更新master<br />
 * 自己的数据库，还会通过Berkeley DB的<br />
 * replication功能，被传播到replication group当中的replica上面。一个<br />
 * replication group通过选举或者显式指定的方式，得到master。<br />
 *<br />
 * replica：接受读请求。从master写入的数据会自动传播到每一个replica上面，从而<br />
 * 将replica上面的数据更新。任何一个replica在选举的时候，都有可能成为新的master<br />
 *<br />
 * 一个replication group作为一个整体来看的话，它比一个单机有<br />
 * 更大的数据读写能力，因为所有的site都可以提供数据，自然读数据的吞吐量更大；<br />
 * 并且master可以被配置为只写入数据而不必理会读数据请求，由replica提供数据，<br />
 * 这样，写入的吞吐量也更大。<br />
 *<br />
 * replication group比单机的另一个优势，就是高可靠性(high availability)，因为，<br />
 * 其中如果任何一个site脱离（断电，网络故障，应用程序错误等），这个组都可以<br />
 * 继续服务：如果一个replica脱离，那么<br />
 * 还有其他replica可以提供数据，并且这个脱离的replica可以重新加入该组，其数据<br />
 * 被自动更新到最新；如果master脱离，那么该组的所有replica举行选举，从中选<br />
 * 出新的master。<br />
 */<br />
int<br />
main(argc, argv)<br />
 int argc;<br />
 char *argv[];<br />
{<br />
 DB_ENV *dbenv;<br />
 SETUP_DATA setup_info;<br />
 repsite_t *site_list;<br />
 APP_DATA my_app_data;<br />
 thread_t ckp_thr, lga_thr;<br />
 supthr_args sup_args;<br />
 u_int32_t start_policy;<br />
 int i, ret, t_ret;</p>
<p> memset(&amp;setup_info, 0, sizeof(SETUP_DATA));<br />
 setup_info.progname = progname;<br />
 memset(&amp;my_app_data, 0, sizeof(APP_DATA));<br />
 dbenv = NULL;<br />
 ret = 0;<br />
 /*<br />
  * 默认使用选举的方法选出master。替代方案就是指定某一个site是master，<br />
  * 其他site是replica。<br />
  */<br />
 start_policy = DB_REP_ELECTION;</p>
<p> /* 创建一个拥有replication功能的数据库环境，但还不打开。 */<br />
 if ((ret = create_env(progname, &amp;dbenv)) != 0)<br />
  goto err;<br />
 dbenv-&gt;app_private = &amp;my_app_data;</p>
<p> /*<br />
  * 配置replication消息处理回调函数。<br />
  * 有任何replication消息，Berkeley DB都会调用该函数来处理。<br />
  */<br />
 (void)dbenv-&gt;set_event_notify(dbenv, event_callback);</p>
<p> /* Parse command line and perform common replication setup. */<br />
 if ((ret = common_rep_setup(dbenv, argc, argv, &amp;setup_info)) != 0)<br />
  goto err;</p>
<p> /*<br />
  * Perform repmgr-specific setup based on command line options.<br />
  * 如果显式指定了master，那么就使用DB_REP_MASTER把本site设置为master，<br />
  * 并用DB_REP_CLIENT把其他site设置为replica。<br />
  */<br />
 if (setup_info.role == MASTER)<br />
  start_policy = DB_REP_MASTER;<br />
 else if (setup_info.role == CLIENT)<br />
  start_policy = DB_REP_CLIENT;<br />
 /*<br />
  * 设置本地site信息，也就是IP地址和端口信息。因为site是一个<br />
  * （数据库环境，IP地址，port）的三元组，而数据库环境我们已经创建好<br />
  * 了。<br />
  */<br />
 if ((ret = dbenv-&gt;repmgr_set_local_site(dbenv, setup_info.self.host,<br />
     setup_info.self.port, 0)) != 0) {<br />
  fprintf(stderr, &#8220;Could not set listen address (%d).\n&#8221;, ret);<br />
  goto err;<br />
 }<br />
 site_list = setup_info.site_list;<br />
 /*<br />
  * 添加其他site的信息到本site。如果显式指定master，那么一个replica<br />
  * 一定要知道master的信息；如果选举，那么每一个site要知道其他所有<br />
  * site的信息。<br />
  *<br />
  * 两个site可以成为peer关系，通过在下面的函数中设置<br />
  * DB_REPMGR_PEER来指定。一个replica可以被它的peer更新到最新，这样<br />
  * 就为master去掉了更新过时的replica的负担。<br />
  */<br />
 for (i = 0; i &lt; setup_info.remotesites; i++) {<br />
  if ((ret = dbenv-&gt;repmgr_add_remote_site(dbenv,<br />
      site_list[i].host, site_list[i].port, NULL,<br />
      site_list[i].peer ? DB_REPMGR_PEER : 0)) != 0) {<br />
   dbenv-&gt;err(dbenv, ret,<br />
       &#8220;Could not add site %s:%d&#8221;, site_list[i].host,<br />
       (int)site_list[i].port);<br />
   goto err;<br />
  }<br />
 }</p>
<p> /*<br />
  * Configure heartbeat timeouts so that repmgr monitors the<br />
  * health of the TCP connection.  Master sites broadcast a heartbeat<br />
  * at the frequency specified by the DB_REP_HEARTBEAT_SEND timeout.<br />
  * Client sites wait for message activity the length of the<br />
  * DB_REP_HEARTBEAT_MONITOR timeout before concluding that the<br />
  * connection to the master is lost.  The DB_REP_HEARTBEAT_MONITOR<br />
  * timeout should be longer than the DB_REP_HEARTBEAT_SEND timeout.<br />
  */<br />
 if ((ret = dbenv-&gt;rep_set_timeout(dbenv, DB_REP_HEARTBEAT_SEND,<br />
     5000000)) != 0)<br />
  dbenv-&gt;err(dbenv, ret,<br />
      &#8220;Could not set heartbeat send timeout.\n&#8221;);<br />
 if ((ret = dbenv-&gt;rep_set_timeout(dbenv, DB_REP_HEARTBEAT_MONITOR,<br />
     10000000)) != 0)<br />
  dbenv-&gt;err(dbenv, ret,<br />
      &#8220;Could not set heartbeat monitor timeout.\n&#8221;);</p>
<p> /*<br />
  * The following repmgr features may also be useful to your<br />
  * application.  See Berkeley DB documentation for more details.<br />
  *  &#8211; Two-site strict majority rule &#8211; In a two-site replication<br />
  *    group, require both sites to be available to elect a new<br />
  *    master.<br />
  *  &#8211; Timeouts &#8211; Customize the amount of time repmgr waits<br />
  *    for such things as waiting for acknowledgements or attempting<br />
  *    to reconnect to other sites.<br />
  *  &#8211; Site list &#8211; return a list of sites currently known to repmgr.<br />
  */<br />
 /* 打开数据库环境。*/<br />
 if ((ret = env_init(dbenv, setup_info.home)) != 0)<br />
  goto err;</p>
<p> /* Start checkpoint and log archive threads. */<br />
 sup_args.dbenv = dbenv;<br />
 sup_args.shared = &amp;my_app_data.shared_data;<br />
 if ((ret = start_support_threads(dbenv, &amp;sup_args, &amp;ckp_thr,<br />
     &amp;lga_thr)) != 0)<br />
  goto err;</p>
<p> if ((ret = dbenv-&gt;repmgr_start(dbenv, 3, start_policy)) != 0)<br />
  goto err;</p>
<p> if ((ret = doloop(dbenv, &amp;my_app_data.shared_data)) != 0) {<br />
  dbenv-&gt;err(dbenv, ret, &#8220;Client failed&#8221;);<br />
  goto err;<br />
 }</p>
<p> /* Finish checkpoint and log archive threads. */<br />
 if ((ret = finish_support_threads(&amp;ckp_thr, &amp;lga_thr)) != 0)<br />
  goto err;</p>
<p> /*<br />
  * We have used the DB_TXN_NOSYNC environment flag for improved<br />
  * performance without the usual sacrifice of transactional durability,<br />
  * as discussed in the &#8220;Transactional guarantees&#8221; page of the Reference<br />
  * Guide: if one replication site crashes, we can expect the data to<br />
  * exist at another site.  However, in case we shut down all sites<br />
  * gracefully, we push out the end of the log here so that the most<br />
  * recent transactions don&#8217;t mysteriously disappear.<br />
  */<br />
 if ((ret = dbenv-&gt;log_flush(dbenv, NULL)) != 0) {<br />
  dbenv-&gt;err(dbenv, ret, &#8220;log_flush&#8221;);<br />
  goto err;<br />
 }</p>
<p>err:<br />
 if (dbenv != NULL &amp;&amp;<br />
     (t_ret = dbenv-&gt;close(dbenv, 0)) != 0) {<br />
  fprintf(stderr, &#8220;failure closing env: %s (%d)\n&#8221;,<br />
      db_strerror(t_ret), t_ret);<br />
  if (ret == 0)<br />
   ret = t_ret;<br />
 }</p>
<p> return (ret);<br />
}</p>
<p>/*<br />
 * 事件通知函数。当使用replication manager的时候，该事件已经被<br />
 * replication manager 适当地处理好了，所以在这个回调函数当中，<br />
 * 我们只需要简单地更新状态或者打印消息即可。<br />
 */<br />
static void<br />
event_callback(dbenv, which, info)<br />
 DB_ENV *dbenv;<br />
 u_int32_t which;<br />
 void *info;<br />
{<br />
 APP_DATA *app = dbenv-&gt;app_private;<br />
 SHARED_DATA *shared = &amp;app-&gt;shared_data;</p>
<p> info = NULL;    /* Currently unused. */</p>
<p> switch (which) {<br />
 case DB_EVENT_REP_CLIENT:<br />
  shared-&gt;is_master = 0;<br />
  shared-&gt;in_client_sync = 1;<br />
  break;</p>
<p> case DB_EVENT_REP_MASTER:<br />
  shared-&gt;is_master = 1;<br />
  shared-&gt;in_client_sync = 0;<br />
  break;</p>
<p> case DB_EVENT_REP_NEWMASTER:<br />
  shared-&gt;in_client_sync = 1;<br />
  break;</p>
<p> case DB_EVENT_REP_PERM_FAILED:<br />
  /*<br />
   * Did not get enough acks to guarantee transaction<br />
   * durability based on the configured ack policy.  This<br />
   * transaction will be flushed to the master site&#8217;s<br />
   * local disk storage for durability.<br />
   */<br />
  printf(<br />
    &#8220;Insufficient acknowledgements to guarantee transaction durability.\n&#8221;);<br />
  break;</p>
<p> case DB_EVENT_REP_STARTUPDONE:<br />
  shared-&gt;in_client_sync = 0;<br />
  break;</p>
<p> default:<br />
  dbenv-&gt;errx(dbenv, &#8220;ignoring event %d&#8221;, which);<br />
 }<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2009/10/berkeley-db%e7%a4%ba%e4%be%8b%e7%a8%8b%e5%ba%8f%e8%af%a6%e8%a7%a331/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Berkeley DB示例程序详解(3.2)</title>
		<link>http://www.bdbchina.com/2009/10/612/</link>
		<comments>http://www.bdbchina.com/2009/10/612/#comments</comments>
		<pubDate>Sun, 04 Oct 2009 08:36:30 +0000</pubDate>
		<dc:creator>davidzhao</dc:creator>
				<category><![CDATA[Berkeley DB]]></category>
		<category><![CDATA[David Zhao]]></category>
		<category><![CDATA[HA]]></category>
		<category><![CDATA[replication]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=612</guid>
		<description><![CDATA[Berkeley DB示例程序详解]]></description>
			<content:encoded><![CDATA[<p>接上篇：Berkeley DB示例程序详解(3.1)<br />
/*<br />
* Perform command line parsing and common replication setup for the repmgr<br />
* and base replication example programs.<br />
*/<br />
int<br />
common_rep_setup(dbenv, argc, argv, setup_info)<br />
DB_ENV *dbenv;<br />
int argc;<br />
char *argv[];<br />
SETUP_DATA *setup_info;<span id="more-612"></span><br />
{<br />
repsite_t site;<br />
extern char *optarg;<br />
char ch, *portstr;<br />
int ack_policy, got_self, is_repmgr, maxsites, priority, ret;</p>
<p>got_self = is_repmgr = maxsites = ret = site.peer = 0;</p>
<p>/*<br />
* 站点的优先级。在选举的时候，如果多个站点具有最新的日志，那么<br />
* 优先级最高的站点成为master。所以，应该把后备做master的站点<br />
* 设置更高的优先级。<br />
*/<br />
priority = 100;</p>
<p>/*<br />
* 持久消息(permanent message, i.e. commit/abort/checkpoint日志)<br />
* 确认策略。repmgr要求replica根据持久消息做相同的动作<br />
* (commit/abort/checkpoint)，然后对持久消息进行确认。repmgr等待一定<br />
* 数目的replica确认，这个数目字这里设置。<br />
*/<br />
ack_policy = DB_REPMGR_ACKS_QUORUM;<br />
setup_info-&gt;role = UNKNOWN;<br />
if (strncmp(setup_info-&gt;progname, &#8220;ex_rep_mgr&#8221;, 10) == 0)<br />
is_repmgr = 1;</p>
<p>/*<br />
* Replication setup calls that are only needed if a command<br />
* line option is specified are made within this while/switch<br />
* statement.  Replication setup calls that should be made<br />
* whether or not a command line option is specified are after<br />
* this while/switch statement.<br />
*/<br />
while ((ch = getopt(argc, argv, &#8220;a:bCh:l:Mn:p:R:r:v&#8221;)) != EOF) {<br />
switch (ch) {<br />
case &#8216;a&#8217;:<br />
if (!is_repmgr)<br />
usage(is_repmgr, setup_info-&gt;progname);<br />
if (strncmp(optarg, &#8220;all&#8221;, 3) == 0)<br />
ack_policy = DB_REPMGR_ACKS_ALL;<br />
/* repmgr等待所有站点的持久消息确认。*/<br />
else if (strncmp(optarg, &#8220;quorum&#8221;, 6) != 0)<br />
usage(is_repmgr, setup_info-&gt;progname);<br />
break;<br />
case &#8216;b&#8217;:<br />
/*<br />
* 批量传输设置。在bulk buffer满了或者有了持久消息<br />
* (permanent message)的时候才传输所有的消息。<br />
* Configure bulk transfer to send groups of records<br />
* to clients in a single network transfer.  This is<br />
* useful for master sites and clients participating<br />
* in client-to-client synchronization.<br />
*/<br />
if ((ret = dbenv-&gt;rep_set_config(dbenv,<br />
DB_REP_CONF_BULK, 1)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;Could not configure bulk transfer.\n&#8221;);<br />
goto err;<br />
}<br />
break;<br />
case &#8216;C&#8217;:<br />
setup_info-&gt;role = CLIENT;<br />
break;<br />
case &#8216;h&#8217;:<br />
setup_info-&gt;home = optarg;<br />
break;<br />
case &#8216;l&#8217;:<br />
setup_info-&gt;self.host = strtok(optarg, &#8220;:&#8221;);<br />
if ((portstr = strtok(NULL, &#8220;:&#8221;)) == NULL) {<br />
fprintf(stderr, &#8220;Bad host specification.\n&#8221;);<br />
goto err;<br />
}<br />
setup_info-&gt;self.port = (unsigned short)atoi(portstr);<br />
setup_info-&gt;self.peer = 0;<br />
got_self = 1;<br />
break;<br />
case &#8216;M&#8217;:<br />
setup_info-&gt;role = MASTER;<br />
break;<br />
case &#8216;n&#8217;:<br />
setup_info-&gt;nsites = atoi(optarg);<br />
/*<br />
* For repmgr, set the total number of sites in the<br />
* replication group.  This is used by repmgr internal<br />
* election processing.  For base replication, nsites<br />
* is simply passed back to main for use in its<br />
* communications and election processing.<br />
*/<br />
if (is_repmgr &amp;&amp; setup_info-&gt;nsites &gt; 0 &amp;&amp;<br />
(ret = dbenv-&gt;rep_set_nsites(dbenv,<br />
setup_info-&gt;nsites)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;Could not set nsites.\n&#8221;);<br />
goto err;<br />
}<br />
break;<br />
case &#8216;p&#8217;:<br />
priority = atoi(optarg);<br />
break;<br />
case &#8216;R&#8217;:<br />
if (!is_repmgr)<br />
usage(is_repmgr, setup_info-&gt;progname);<br />
site.peer = 1; /* FALLTHROUGH */<br />
case &#8216;r&#8217;:<br />
site.host = optarg;<br />
site.host = strtok(site.host, &#8220;:&#8221;);<br />
if ((portstr = strtok(NULL, &#8220;:&#8221;)) == NULL) {<br />
fprintf(stderr, &#8220;Bad host specification.\n&#8221;);<br />
goto err;<br />
}<br />
site.port = (unsigned short)atoi(portstr);<br />
if (setup_info-&gt;site_list == NULL ||<br />
setup_info-&gt;remotesites &gt;= maxsites) {<br />
maxsites = maxsites == 0 ? 10 : 2 * maxsites;<br />
if ((setup_info-&gt;site_list =<br />
realloc(setup_info-&gt;site_list,<br />
maxsites * sizeof(repsite_t))) == NULL) {<br />
fprintf(stderr, &#8220;System error %s\n&#8221;,<br />
strerror(errno));<br />
goto err;<br />
}<br />
}<br />
(setup_info-&gt;site_list)[(setup_info-&gt;remotesites)++] =<br />
site;<br />
site.peer = 0;<br />
break;<br />
case &#8216;v&#8217;:<br />
if ((ret = dbenv-&gt;set_verbose(dbenv,<br />
DB_VERB_REPLICATION, 1)) != 0)<br />
goto err;<br />
break;<br />
case &#8216;?&#8217;:<br />
default:<br />
usage(is_repmgr, setup_info-&gt;progname);<br />
}<br />
}</p>
<p>/* Error check command line. */<br />
if (!got_self || setup_info-&gt;home == NULL)<br />
usage(is_repmgr, setup_info-&gt;progname);<br />
if (!is_repmgr &amp;&amp; setup_info-&gt;role == UNKNOWN) {<br />
fprintf(stderr, &#8220;Must specify -M or -C.\n&#8221;);<br />
goto err;<br />
}</p>
<p>/*<br />
* Set replication group election priority for this environment.<br />
* An election first selects the site with the most recent log<br />
* records as the new master.  If multiple sites have the most<br />
* recent log records, the site with the highest priority value<br />
* is selected as master.<br />
*/<br />
if ((ret = dbenv-&gt;rep_set_priority(dbenv, priority)) != 0) {<br />
dbenv-&gt;err(dbenv, ret, &#8220;Could not set priority.\n&#8221;);<br />
goto err;<br />
}</p>
<p>/*<br />
* 设置持久消息确认策略。<br />
* For repmgr, set the policy that determines how master and client<br />
* sites handle acknowledgement of replication messages needed for<br />
* permanent records.  The default policy of &#8220;quorum&#8221; requires only<br />
* a quorum of electable peers sufficient to ensure a permanent<br />
* record remains durable if an election is held.  The &#8220;all&#8221; option<br />
* requires all clients to acknowledge a permanent replication<br />
* message instead.<br />
*/<br />
if (is_repmgr &amp;&amp;<br />
(ret = dbenv-&gt;repmgr_set_ack_policy(dbenv, ack_policy)) != 0) {<br />
dbenv-&gt;err(dbenv, ret, &#8220;Could not set ack policy.\n&#8221;);<br />
goto err;<br />
}</p>
<p>/*<br />
* Set the threshold for the minimum and maximum time the client<br />
* waits before requesting retransmission of a missing message.<br />
* Base these values on the performance and load characteristics<br />
* of the master and client host platforms as well as the round<br />
* trip message time.<br />
* 设置丢失的日志消息的重传时限。如果Berkeley DB发现有日志消息丢失，<br />
* 比如它发现连续收到的两条日志消息并不连续，它会在等待20秒后请求<br />
* 重传这条日志消息，如果仍然没有收到，它会加倍等待的时间，直到该<br />
* 等待时间达到500秒。<br />
*<br />
* 在使用repmgr的时候，由于使用了TCP/IP协议，不可能丢失消息，<br />
* 所以可以不设置；如果使用不可靠的传输协议比如udp，那么可以通过<br />
* 设置这个时限，确保能够收到丢失的日志消息。也就是说，Berkeley DB<br />
* 内部实现了一个确保不可靠传输协议可靠地传输数据的协议，这样如果<br />
* 我们使用UDP协议来传输Berkeley DB replication消息，那么丢包和<br />
* 包错序不会影响Berkeley DB replication 的正常工作。<br />
*/<br />
if ((ret = dbenv-&gt;rep_set_request(dbenv, 20000, 500000)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;Could not set client_retransmission defaults.\n&#8221;);<br />
goto err;<br />
}</p>
<p>/*<br />
* Configure deadlock detection to ensure that any deadlocks<br />
* are broken by having one of the conflicting lock requests<br />
* rejected. DB_LOCK_DEFAULT uses the lock policy specified<br />
* at environment creation time or DB_LOCK_RANDOM if none was<br />
* specified.<br />
*/<br />
if ((ret = dbenv-&gt;set_lk_detect(dbenv, DB_LOCK_DEFAULT)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;Could not configure deadlock detection.\n&#8221;);<br />
goto err;<br />
}</p>
<p>/* The following base replication features may also be useful to your<br />
* application. See Berkeley DB documentation for more details.<br />
*   &#8211; Master leases: Provide stricter consistency for data reads<br />
*     on a master site.<br />
*   &#8211; Timeouts: Customize the amount of time Berkeley DB waits<br />
*     for such things as an election to be concluded or a master<br />
*     lease to be granted.<br />
*   &#8211; Delayed client synchronization: Manage the master site&#8217;s<br />
*     resources by spreading out resource-intensive client<br />
*     synchronizations.<br />
*   &#8211; Blocked client operations: Return immediately with an error<br />
*     instead of waiting indefinitely if a client operation is<br />
*     blocked by an ongoing client synchronization.<br />
*/</p>
<p>err:<br />
return (ret);<br />
}</p>
<p>static int<br />
print_stocks(dbp)<br />
DB *dbp;<br />
{<br />
DBC *dbc;<br />
DBT key, data;<br />
#define MAXKEYSIZE 10<br />
#define MAXDATASIZE 20<br />
char keybuf[MAXKEYSIZE + 1], databuf[MAXDATASIZE + 1];<br />
int ret, t_ret;<br />
u_int32_t keysize, datasize;</p>
<p>/* 读取数据，打印数据库当中所有记录。这个函数可以在master和每一个<br />
* replica上面执行。*/<br />
if ((ret = dbp-&gt;cursor(dbp, NULL, &amp;dbc, 0)) != 0) {<br />
dbp-&gt;err(dbp, ret, &#8220;can&#8217;t open cursor&#8221;);<br />
return (ret);<br />
}</p>
<p>memset(&amp;key, 0, sizeof(key));<br />
memset(&amp;data, 0, sizeof(data));</p>
<p>printf(&#8220;\tSymbol\tPrice\n&#8221;);<br />
printf(&#8220;\t======\t=====\n&#8221;);<br />
/* 无论master上面还是replica上面，都是用完全相同的方法读取数据。*/<br />
for (ret = dbc-&gt;get(dbc, &amp;key, &amp;data, DB_FIRST);<br />
ret == 0;<br />
ret = dbc-&gt;get(dbc, &amp;key, &amp;data, DB_NEXT)) {<br />
keysize = key.size &gt; MAXKEYSIZE ? MAXKEYSIZE : key.size;<br />
memcpy(keybuf, key.data, keysize);<br />
keybuf[keysize] = &#8216;\0&#8242;;</p>
<p>datasize = data.size &gt;= MAXDATASIZE ? MAXDATASIZE : data.size;<br />
memcpy(databuf, data.data, datasize);<br />
databuf[datasize] = &#8216;\0&#8242;;</p>
<p>printf(&#8220;\t%s\t%s\n&#8221;, keybuf, databuf);<br />
}<br />
printf(&#8220;\n&#8221;);<br />
fflush(stdout);</p>
<p>if ((t_ret = dbc-&gt;close(dbc)) != 0 &amp;&amp; ret == 0)<br />
ret = t_ret;</p>
<p>switch (ret) {<br />
case 0:<br />
case DB_NOTFOUND:<br />
case DB_LOCK_DEADLOCK:<br />
return (0);<br />
default:<br />
return (ret);<br />
}<br />
}</p>
<p>/* Start checkpoint and log archive support threads. */<br />
int<br />
start_support_threads(dbenv, sup_args, ckp_thr, lga_thr)<br />
DB_ENV *dbenv;<br />
supthr_args *sup_args;<br />
thread_t *ckp_thr;<br />
thread_t *lga_thr;<br />
{<br />
int ret;</p>
<p>ret = 0;<br />
if ((ret = thread_create(ckp_thr, NULL, checkpoint_thread,<br />
sup_args)) != 0) {<br />
dbenv-&gt;errx(dbenv, &#8220;can&#8217;t create checkpoint thread&#8221;);<br />
goto err;<br />
}<br />
if ((ret = thread_create(lga_thr, NULL, log_archive_thread,<br />
sup_args)) != 0)<br />
dbenv-&gt;errx(dbenv, &#8220;can&#8217;t create log archive thread&#8221;);<br />
err:<br />
return (ret);</p>
<p>}</p>
<p>/* Wait for checkpoint and log archive support threads to finish. */<br />
int<br />
finish_support_threads(ckp_thr, lga_thr)<br />
thread_t *ckp_thr;<br />
thread_t *lga_thr;<br />
{<br />
void *ctstatus, *ltstatus;<br />
int ret;</p>
<p>ret = 0;<br />
if (thread_join(*lga_thr, &amp;ltstatus) ||<br />
thread_join(*ckp_thr, &amp;ctstatus)) {<br />
ret = -1;<br />
goto err;<br />
}<br />
if ((uintptr_t)ltstatus != EXIT_SUCCESS ||<br />
(uintptr_t)ctstatus != EXIT_SUCCESS)<br />
ret = -1;<br />
err:<br />
return (ret);<br />
}</p>
<p>#define BUFSIZE 1024</p>
<p>int<br />
doloop(dbenv, shared_data)<br />
DB_ENV *dbenv;<br />
SHARED_DATA *shared_data;<br />
{<br />
DB *dbp;<br />
DBT key, data;<br />
char buf[BUFSIZE], *first, *price;<br />
u_int32_t flags;<br />
int ret;</p>
<p>dbp = NULL;<br />
ret = 0;<br />
memset(&amp;key, 0, sizeof(key));<br />
memset(&amp;data, 0, sizeof(data));</p>
<p>for (;;) {<br />
printf(&#8220;QUOTESERVER%s&gt; &#8220;,<br />
shared_data-&gt;is_master ? &#8220;&#8221; : &#8221; (read-only)&#8221;);<br />
fflush(stdout);</p>
<p>if (fgets(buf, sizeof(buf), stdin) == NULL)<br />
break;</p>
<p>#define DELIM &#8221; \t\n&#8221;<br />
if ((first = strtok(&amp;buf[0], DELIM)) == NULL) {<br />
/* Blank input line. */<br />
price = NULL;<br />
} else if ((price = strtok(NULL, DELIM)) == NULL) {<br />
/* Just one input token. */<br />
if (strncmp(buf, &#8220;exit&#8221;, 4) == 0 ||<br />
strncmp(buf, &#8220;quit&#8221;, 4) == 0) {<br />
/*<br />
* This makes the checkpoint and log<br />
* archive threads stop.<br />
*/<br />
shared_data-&gt;app_finished = 1;<br />
break;<br />
}<br />
dbenv-&gt;errx(dbenv, &#8220;Format: TICKER VALUE&#8221;);<br />
continue;<br />
} else {<br />
/* Normal two-token input line. */<br />
if (first != NULL &amp;&amp; !shared_data-&gt;is_master) {<br />
dbenv-&gt;errx(dbenv, &#8220;Can&#8217;t update at client&#8221;);<br />
continue;<br />
}<br />
}</p>
<p>if (dbp == NULL) {<br />
if ((ret = db_create(&amp;dbp, dbenv, 0)) != 0)<br />
return (ret);</p>
<p>flags = DB_AUTO_COMMIT;<br />
/*<br />
* Open database with DB_CREATE only if this is<br />
* a master database.  A client database uses<br />
* polling to attempt to open the database without<br />
* DB_CREATE until it is successful. 由于数据库<br />
* 的创建也是一个写入操作，所以，replica不应该自<br />
* 己创建数据库，而是定期检查是否有数据库被创建<br />
* 好。当master创建了数据库后，这个日志消息会到<br />
* 达所有的replica上面，于是Berkeley DB的<br />
* replication功能自动创建好这个数据库。<br />
*<br />
* This DB_CREATE polling logic can be simplified<br />
* under some circumstances.  For example, if the<br />
* application can be sure a database is already<br />
* there, it would never need to open it with<br />
* DB_CREATE.<br />
*/<br />
if (shared_data-&gt;is_master)<br />
flags |= DB_CREATE;<br />
if ((ret = dbp-&gt;open(dbp,<br />
NULL, DATABASE, NULL, DB_BTREE, flags, 0)) != 0) {<br />
if (ret == ENOENT) {<br />
printf(<br />
&#8220;No stock database yet available.\n&#8221;);<br />
if ((ret = dbp-&gt;close(dbp, 0)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;DB-&gt;close&#8221;);<br />
goto err;<br />
}<br />
dbp = NULL;<br />
continue;<br />
}<br />
if (ret == DB_REP_HANDLE_DEAD ||<br />
ret == DB_LOCK_DEADLOCK) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;please retry the operation&#8221;);<br />
dbp-&gt;close(dbp, DB_NOSYNC);<br />
dbp = NULL;<br />
continue;<br />
}<br />
dbenv-&gt;err(dbenv, ret, &#8220;DB-&gt;open&#8221;);<br />
goto err;<br />
}<br />
}</p>
<p>if (first == NULL) {<br />
/*<br />
* If this is a client in the middle of<br />
* synchronizing with the master, the client data<br />
* is possibly stale and won&#8217;t be displayed until<br />
* client synchronization is finished.  It is also<br />
* possible to display the stale data if this is<br />
* acceptable to the application.<br />
*/<br />
if (shared_data-&gt;in_client_sync)<br />
printf(<br />
&#8220;Cannot read data during client synchronization &#8211; please try again.\n&#8221;);<br />
else<br />
switch ((ret = print_stocks(dbp))) {<br />
case 0:<br />
break;<br />
case DB_REP_HANDLE_DEAD:<br />
(void)dbp-&gt;close(dbp, DB_NOSYNC);<br />
dbp = NULL;<br />
break;<br />
default:<br />
dbp-&gt;err(dbp, ret,<br />
&#8220;Error traversing data&#8221;);<br />
goto err;<br />
}<br />
} else {<br />
key.data = first;<br />
key.size = (u_int32_t)strlen(first);</p>
<p>data.data = price;<br />
data.size = (u_int32_t)strlen(price);</p>
<p>if ((ret = dbp-&gt;put(dbp,<br />
NULL, &amp;key, &amp;data, DB_AUTO_COMMIT)) != 0) {<br />
dbp-&gt;err(dbp, ret, &#8220;DB-&gt;put&#8221;);<br />
goto err;<br />
}<br />
}<br />
}</p>
<p>err: if (dbp != NULL)<br />
(void)dbp-&gt;close(dbp, DB_NOSYNC);<br />
return (ret);<br />
}</p>
<p>int<br />
create_env(progname, dbenvp)<br />
const char *progname;<br />
DB_ENV **dbenvp;<br />
{<br />
DB_ENV *dbenv;<br />
int ret;</p>
<p>if ((ret = db_env_create(&amp;dbenv, 0)) != 0) {<br />
fprintf(stderr, &#8220;can&#8217;t create env handle: %s\n&#8221;,<br />
db_strerror(ret));<br />
return (ret);<br />
}</p>
<p>dbenv-&gt;set_errfile(dbenv, stderr);<br />
dbenv-&gt;set_errpfx(dbenv, progname);</p>
<p>*dbenvp = dbenv;<br />
return (0);<br />
}</p>
<p>/* Open and configure an environment. */<br />
int<br />
env_init(dbenv, home)<br />
DB_ENV *dbenv;<br />
const char *home;<br />
{<br />
u_int32_t flags;<br />
int ret;</p>
<p>(void)dbenv-&gt;set_cachesize(dbenv, 0, CACHESIZE, 0);<br />
(void)dbenv-&gt;set_flags(dbenv, DB_TXN_NOSYNC, 1);</p>
<p>flags = DB_CREATE | DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL |<br />
DB_INIT_REP | DB_INIT_TXN | DB_RECOVER | DB_THREAD;<br />
if ((ret = dbenv-&gt;open(dbenv, home, flags, 0)) != 0)<br />
dbenv-&gt;err(dbenv, ret, &#8220;can&#8217;t open environment&#8221;);<br />
return (ret);<br />
}</p>
<p>/*<br />
* In this application, we specify all communication via the command line.  In<br />
* a real application, we would expect that information about the other sites<br />
* in the system would be maintained in some sort of configuration file.  The<br />
* critical part of this interface is that we assume at startup that we can<br />
* find out<br />
* 1) what host/port we wish to listen on for connections,<br />
* 2) a (possibly empty) list of other sites we should attempt to connect<br />
* to; and<br />
* 3) what our Berkeley DB home environment is.<br />
*<br />
* These pieces of information are expressed by the following flags.<br />
* -a all|quorum (optional; repmgr only, a stands for ack policy)<br />
* -b (optional, b stands for bulk)<br />
* -C or -M start up as client or master (optional for repmgr, required<br />
*      for base example)<br />
* -h home directory (required)<br />
* -l host:port (required; l stands for local)<br />
* -n nsites (optional; number of sites in replication group; defaults to 0<br />
* in which case we try to dynamically compute the number of sites in<br />
* the replication group)<br />
* -p priority (optional: defaults to 100)<br />
* -r host:port (optional; r stands for remote; any number of these may be<br />
* specified)<br />
* -R host:port (optional; repmgr only, remote peer)<br />
* -v (optional; v stands for verbose)<br />
*/<br />
void<br />
usage(is_repmgr, progname)<br />
const int is_repmgr;<br />
const char *progname;<br />
{<br />
fprintf(stderr, &#8220;usage: %s &#8220;, progname);<br />
if (is_repmgr)<br />
fprintf(stderr, &#8220;[-CM]-h home -l host:port[-r host:port]%s%s&#8221;,<br />
&#8220;[-R host:port][-a all|quorum][-b][-n nsites]&#8220;,<br />
&#8220;[-p priority][-v]\n&#8221;);<br />
else<br />
fprintf(stderr, &#8220;-CM -h home -l host:port[-r host:port]%s&#8221;,<br />
&#8220;[-b][-n nsites][-p priority][-v]\n&#8221;);<br />
exit(EXIT_FAILURE);<br />
}</p>
<p>/*<br />
* This is a very simple thread that performs checkpoints at a fixed<br />
* time interval.  For a master site, the time interval is one minute<br />
* plus the duration of the checkpoint_delay timeout (30 seconds by<br />
* default.)  For a client site, the time interval is one minute.<br />
*/<br />
void *<br />
checkpoint_thread(args)<br />
void *args;<br />
{<br />
DB_ENV *dbenv;<br />
SHARED_DATA *shared;<br />
supthr_args *ca;<br />
int i, ret;</p>
<p>ca = (supthr_args *)args;<br />
dbenv = ca-&gt;dbenv;<br />
shared = ca-&gt;shared;</p>
<p>for (;;) {<br />
/*<br />
* Wait for one minute, polling once per second to see if<br />
* application has finished.  When application has finished,<br />
* terminate this thread.<br />
*/<br />
for (i = 0; i &lt; 60; i++) {<br />
sleep(1);<br />
if (shared-&gt;app_finished == 1)<br />
return ((void *)EXIT_SUCCESS);<br />
}</p>
<p>/* Perform a checkpoint. */<br />
if ((ret = dbenv-&gt;txn_checkpoint(dbenv, 0, 0, 0)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;Could not perform checkpoint.\n&#8221;);<br />
return ((void *)EXIT_FAILURE);<br />
}<br />
}<br />
}</p>
<p>/*<br />
* This is a simple log archive thread.  Once per minute, it removes all but<br />
* the most recent 3 logs that are safe to remove according to a call to<br />
* DB_ENV-&gt;log_archive().<br />
*<br />
* Log cleanup is needed to conserve disk space, but aggressive log cleanup<br />
* can cause more frequent client initializations if a client lags too far<br />
* behind the current master.  This can happen in the event of a slow client,<br />
* a network partition, or a new master that has not kept as many logs as the<br />
* previous master.<br />
*<br />
* The approach in this routine balances the need to mitigate against a<br />
* lagging client by keeping a few more of the most recent unneeded logs<br />
* with the need to conserve disk space by regularly cleaning up log files.<br />
* Use of automatic log removal (DB_ENV-&gt;log_set_config() DB_LOG_AUTO_REMOVE<br />
* flag) is not recommended for replication due to the risk of frequent<br />
* client initializations.<br />
*/<br />
void *<br />
log_archive_thread(args)<br />
void *args;<br />
{<br />
DB_ENV *dbenv;<br />
SHARED_DATA *shared;<br />
char **begin, **list;<br />
supthr_args *la;<br />
int i, listlen, logs_to_keep, minlog, ret;</p>
<p>la = (supthr_args *)args;<br />
dbenv = la-&gt;dbenv;<br />
shared = la-&gt;shared;<br />
logs_to_keep = 3;</p>
<p>for (;;) {<br />
/*<br />
* Wait for one minute, polling once per second to see if<br />
* application has finished.  When application has finished,<br />
* terminate this thread.<br />
*/<br />
for (i = 0; i &lt; 60; i++) {<br />
sleep(1);<br />
if (shared-&gt;app_finished == 1)<br />
return ((void *)EXIT_SUCCESS);<br />
}</p>
<p>/* Get the list of unneeded log files. */<br />
if ((ret = dbenv-&gt;log_archive(dbenv, &amp;list, DB_ARCH_ABS))<br />
!= 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;Could not get log archive list.&#8221;);<br />
return ((void *)EXIT_FAILURE);<br />
}<br />
if (list != NULL) {<br />
listlen = 0;<br />
/* Get the number of logs in the list. */<br />
for (begin = list; *begin != NULL; begin++, listlen++);<br />
/*<br />
* Remove all but the logs_to_keep most recent<br />
* unneeded log files.<br />
*/<br />
minlog = listlen &#8211; logs_to_keep;<br />
for (begin = list, i= 0; i &lt; minlog; list++, i++) {<br />
if ((ret = unlink(*list)) != 0) {<br />
dbenv-&gt;err(dbenv, ret,<br />
&#8220;logclean: remove %s&#8221;, *list);<br />
dbenv-&gt;errx(dbenv,<br />
&#8220;logclean: Error remove %s&#8221;, *list);<br />
free(begin);<br />
return ((void *)EXIT_FAILURE);<br />
}<br />
}<br />
free(begin);<br />
}<br />
}<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2009/10/612/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
Դ
