Kirk Kirkconnell's blog

September 30, 2014

Performance: Managing threads in Couchbase 2.x

In this blog post you will get an overview of two related performance optimizations that you can do for Couchbase 2.5.1 and below. This is not for 3.x for reasons you can read at the bottom of this post. The two changes directly effect performance of reading and writing in Couchbase. Also know that you must have a properly sized cluster before you start messing with these settings. If you do not, you may cause more problems for the cluster than you solve.

Read more »

June 30, 2014

IPTables Firewall Settings for Couchbase DB and Couchbase Mobile Sync_gateway

It is all too common for people to just turn off IPtables instead of actually figuring out what ports to open. I have to admit I have done it myself. Well we need to stop that. IPtables is our friend, really. To that end, here is the body of a script you can use to configure IPtables.

Read more »

March 11, 2014

Rolling Upgrades

One of the capabilities of Couchbase Server is the ability to do online upgrades without downtime. This is in part due to Couchbase’s auto-sharding and rebalancing features. In this blog post we will walk through the recommended approaches of doing a rolling upgrade. While all of these approaches are possible ways of upgrading, they are listed in order of what is considered best practice. Preference is given to ease of operation, keeping the cluster and application online and operational, as well as consistent performance while the upgrade is happening.

Read more »

March 6, 2014

Often Overlooked Linux OS Tweaks

There are two simple linux OS level settings that people seem to be overlooking setting correctly on their production systems I have seen. These are documented elsewhere, but they keep coming up and seems like they need some quick review here. It is not like these are some super secret setting or magic bullet performance fixing items necessarily, but they are things that in a production Couchbase DB should be set correctly as below and incorporated into whatever system/process you use to bootstrap the nodes you use for Couchbase.

Read more »