Unable to install php couchbase module [SOLVED]
PHP Version => 5.2.17
System => Linux CentOS 2.6.18-238.12.1.el5 #1 SMP Tue May 31 13:22:04 EDT 2011 x86_64
After installation C SDK libraries and couchbase.so module for php i got this error:
PHP Warning: PHP Startup: couchbase: Unable to initialize module
Module compiled with module API=20090626, debug=0, thread-safety=0
PHP compiled with module API=20060613, debug=0, thread-safety=0
When i trying to build it from the source files from github, i get this on make:
grep: /usr/lib64/libvbucket.la: No such file or directory
/bin/sed: can't read /usr/lib64/libvbucket.la: No such file or directory
libtool: link: `/usr/lib64/libvbucket.la' is not a valid libtool archive
make: *** [couchbase.la] Error 1
Problem is that, that i already installed libvbucket libraries.
I've installed:
http://packages.couchbase.com/clients/c/libcouchbase1-1.0.1-1.x86_64.rpm
http://packages.couchbase.com/clients/c/libcouchbase-devel-1.0.1-1.x86_6...
http://packages.couchbase.com/clients/c/libvbucket1-1.8.0.2-1.x86_64.rpm
And after them i tried to install php module, but it not found libvbucket.la file.
Cool, that looks all correct, I pinged the libvbucket packaging team to have a look at this ;)
Cheers
Jan
--
That's not cool, but thanks)))
Heh, sorry, with "cool" I just meant that it looks you did all the right things and the problem looks like to be on our side in the packaging :)
Can you download and install http://packages.couchbase.com/clients/c/libvbucket-devel-1.8.0.2-1.x86_6... ?
Someone pointed out that is a dependency we may not have mentioned in the docs. I'm still verifying, but maybe you can let me know if this works for you.
If so, then you should add it to the download are here: http://www.couchbase.com/develop/c/current
I haven't access to the servers right now, so i will check it tomorrow, and let you know.
Thanks for help)
Now it work. Thanks for your help. And plese don't forget to add link to this lib C library page.
I have one more question. Does it possible to connect with couchbase module to client-side moxi proxy?
Because in API specification it connects only to node of Couchbase cluster(that's not very good).
You specify only one node, but the client is smart enough to connect to all of the nodes of the cluster after bootstrapping off of one or more URLs it's been given. Moxi is not needed with this client, and that's a good thing.
If Moxi not needed, so how can i limit number of connection to node, to prevent overloading?
If i let front-end server to create so many connections as it wants, then it very simple to make MB server goes down, or simple not response.
At this level, each node will accept up to 10,000 connections and the instantiated client will re-use it's connection.
For example, if you run an Apache HTTPD forking four processes, you'd end up with four connections on each node in the cluster is my understanding. Jan may be able to confirm this better. I don't think the 10k connection limit will actually be an issue for most deployments.
I had the same concerns until I ran this scenario by a few people including Couchbase Server dev Trond Norbye as well as PHP core contributors Pierre Joye and Xinchen Hui and they all confirmed Matt's summary. Even 100s of Apache processes should be no problem for a single server.
We'd love to hear reports that either support this or that contradict it, so we can fix what's missing to ensure this scenario works as advertised :)
Cheers
Jan
--
Now we have 6 frontend servers and 2 Membase servers. in Future we will add about 4-8 new frontend servers.With moxi proxy membase servers will work, without they just die under DoS.
Also what about configuration? How user should configure application on each server? Because if all this servers will use one fixed node from cluster for connection this node will have bigger load then others and this is bad load balancing.
I think you should add support of connection to Moxi to the library. Also i will test membase with this module under load, and will post results here.
Hi,
sorry for your troubles, it looks like you also need to install libvbucket from the C SDK page. Can you confirm that that solves your problem?
Cheers
Jan
--