On Sep 30, 2014, at 10:25 AM, Jens Alfke 
<[email protected]<mailto:[email protected]>> wrote:


On Sep 30, 2014, at 12:04 AM, Marcus Roberts 
<[email protected]<mailto:[email protected]>> wrote:

I love what Couchbase Lite is letting me do with my mobile apps, but when 
developing at the smaller end of the scale as I am, I miss the ability to run 
multiple websites and SQL databases on a single server.  Because of its memory 
requirements, it appears that essentially it's one Couchbase bucket per server.

I am far from being an expert on Couchbase Server, but I believe this is 
improved in version 3.0 (to be released imminently.) It has much better support 
for buckets whose contents are larger than their RAM allocation.

Indeed, 3.0 (currently in Beta) has more fine grained control of the use of 
memory and some better management of buckets.  I know that in the future, the 
goal is to allow a much larger number of buckets, but I know there's also more 
to it than the memory management.  The 3.0 release moves in the right direction 
with more scalability around number of buckets coming in the future.

I don't know what the team is testing to with 3.0, but the 2.5 recommendation 
was < 10 buckets.



Also, you might consider CBGB<https://github.com/couchbaselabs/cbgb>, which is 
an experimental Couchbase-compatible server designed for multi-tenancy: it 
doesn't scale as well to high demand, but it scales extremely well to lots of 
buckets. It's not an official product, but it's stable enough that we used it 
for the (now retired) couchbasecloud hosted system.

I've modified the Sync Gateway to give multi-tenancy control.  The idea is that 
an account identifier is specified in the sync gateway configuration, and then 
only documents with this account identifier in the document meta-data can be 
read by the gateway, and all documents added through a gateway are stamped with 
the account identifier.

That sounds interesting, but I would imagine that it's difficult to do and 
requires a lot of changes to the code. Did you make sure to change the views, 
the change cache, etc.?

Because the sync gateway is light on resource usage, I figure I can then run 
multiple sync gateways on a server to give me the multi-tenancy I need for 
serving my apps.

You don't have to run multiple gateways; each one can already support any 
number of independent databases, each with its own user accounts.

--Jens


-- 
You received this message because you are subscribed to the Google Groups 
"Couchbase Mobile" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/mobile-couchbase/454D1033-157C-46B5-8E90-39B02BA83416%40couchbase.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to