Couchbase
  • Why NoSQL?
  • Couchbase Server
  • Download
  • Resources
  • Careers
Home | Forums | Membase | Membase Server 1.6.x

a php smart client

2 replies [Last post]
  • Login or register to post comments
Thu, 09/30/2010 - 09:55
Mantle
Offline
Joined: 09/30/2010
Groups: None

Hey guys,

Is there a PHP equivalent of the Java Smart Client in the works?

[Or, memcapable 2.0 PHP client]

Thanks,

Top
  • Login or register to post comments
Thu, 09/30/2010 - 14:21
Perry Krug
Offline
Joined: 06/02/2010
Groups: None

Actually, we've found that PHP is much better served by Moxi than writing the behavior into the client itself. I'm not expert, but this is due to the fact that PHP is not really multi-threaded like other languages are (.NET/Java/C). Every PHP process would have it's own instantiation of the client library. The operation to connect to the REST API of Membase, download the map and respond to any changes is fairly "heavy" in terms of latency and not something that you want to be doing very frequently or have in the path of data traffic. By "heavy" I mean on the order of 1-2 seconds, but that is an eternity in a world dominated by sub-millisecond response times.

Moxi not only allows you to perform these operations only once but will also pool all the connections on the client side. This results in much less network bandwidth and latency overhead as well as reduced connection-handling load (mostly memory) on the server side.

Our current plan is to leverage Moxi as much as possible for PHP (and also Ruby) environments. Is there a specific use case that you feel is not being met or any reason you feel a PHP "smart-client" is particularly necessary?

Thanks!

Perry

__________________

Forum support is great for free but sometimes you need a guaranteed response time and dedicated resources for your questions or issues.
Consider purchasing enterprise-level support from Membase: http://www.membase.com/products-and-services/overview
Call or email "sales -at- membase -dot- com" today!

Top
  • Login or register to post comments
Thu, 09/30/2010 - 14:58
Mantle
Offline
Joined: 09/30/2010
Groups: None

I was originally looking for a way to access different buckets - until I realize that different buckets can be setup to listen on different ports. With that said, we didn't really have a need for "smart-client" besides the fact that there's one for Java.

The pooling of connection on the client side sounds very appealing, and allowing Moxi to connect to the cluster through a load balancer (since all nodes are identical to the client) will be great for automating a variety of scaling tasks.

Thanks! We'll be setting up a cluster on EC2 and begin to run our load test against it soon, and I'm sure I'll be back here to ask you more questions as I find them. :)

Top
  • Login or register to post comments
  • Login or register to post comments
  • Login
  • Register

Company

  • About Us
  • Leadership
  • Customers
  • Partners
  • Contact Us

Product

  • Couchbase Server
  • Couchbase SDKs
  • Use Cases
  • Documentation
  • Forums

Open Source

  • Couchbase Project
  • Couchbase vs. CouchDB

Commercial

  • Subscriptions & Support
  • Training & Services

News

  • Blog
  • Newsletter
  • Press Releases
  • Buzz

Follow Us

    
  • Customer Login
  • Terms of Service
  • Privacy Policy
  • Trademark Policy
  • Site Map

© 2013 COUCHBASE All rights reserved.

Sign in to Couchbase Community

close
  • Create new account
  • Request new password
You are logging into the Forums, Wiki and Issue Tracker