Hello, I have few questions on the python client (version 4.3.5).
How to configure connection pool? There was an example in the older versions in the GitHub. I can’t find it now. (I am using synchronous non-Gevent based code for key-value operations with Flask)
Does python SDK clients write to local hard disk or cache for key-value operations? Is there a client side caching for key-value operations?
Does python SDK poll server for cluster topology changes? If yes, how frequently? Can this be configured?
See option ‘Max HTTP Endpoints per Service per Node’ (in the link Mike shared) to control the number of connections to HTTP services (query, search, analytics). It doesn’t look like the number of connections to the KV/data service can be configured - maybe our Python SDK expert @jcasey can confirm/deny that though.
There’s no caching layer.
Yes it polls for topology changes, every 2.5 seconds by default. See option ‘Config Poll Interval’ to configure this. Note that recent versions of Couchbase Server (7.6+) will proactively push configs to recent SDKs, so any cluster changes will be detected almost immediately.
Unfortunately, at the moment, the max_http_connections option is a noop. The Python SDK passes it down to the C++ core, but the core does not do anything w/ the option (see CXXCBC-133). I do not think there are future plans to allow for a change in the number of KV/data service connections.
I should note that the config_poll_interval does work although the default value (2.5 seconds) should work for most applications.