Version 1 by Matt Ingenthron
on Jan 23, 2012 13:45.

compared with
Version 2 by MC Brown
on Feb 21, 2012 19:12.

Key
This line was removed.
This word was removed. This word was added.
This line was added.

Changes (2)

View Page History
h1. Couchbase Component Architecture

All of the source for Couchbase Server [resides on github|http://github.com/couchbase]. Couchbase itself is made up of a number of different components, including:

* memcached - Core data networking server.
* bucket_engine - Multitenancy plug-in to memcached.
* ep-engine - Persistence plug-in to memcached.
* libvbucket - Library for elastic key hashing.
* vbucketmigrator - Item replication and migration utility.
* libconflate - Library to allow moxi to support dynamic configuration.
* moxi - Proxy for memcached and membase
* membase-cli - Command-line utilities.
* ns_server - Cluster management, monitoring and orchestration, with web UI console and REST administration API.
* memcachetest - The memcachetest tool. A simple test utility for generating a large number of get and set operations.

h1. Building Couchbase from Source

In order to build Couchbase from source you need to ensure that you have installed the necessary pre-requisite components and libraries before you start. Check the Couchbase Manifest page for more details.

You will also need to install the repo tool, which simplifies the process of downloading the individual Github repos that make up the project. You can get a copy of the tool from [here|http://code.google.com/p/git-repo/downloads/list].

One downloaded and install you can use repo to clone the necessary repo and crate a structure suitable for building:

[code]
$ mkdir couchbase
$ cd couchbase
$ repo init -u git://github.com/membase/manifest.git -m <branch_name>
$ repo sync
[code]

Once the synchronisation has completed you can run make to build Couchbase:

[code]
$ make
[code]