X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Fmemcached_behavior.pod;h=b76ae05426c8b590c8327dd4e95b4bccc9b35088;hb=edeb3965773b750c0cf454e8b1494fd030ba0369;hp=4d7d114037fc7e6e57758b96eef80a89774f9eec;hpb=8d0cd77fc7bafd1f353bc7c50910b751766f931a;p=m6w6%2Flibmemcached diff --git a/docs/memcached_behavior.pod b/docs/memcached_behavior.pod index 4d7d1140..b76ae054 100755 --- a/docs/memcached_behavior.pod +++ b/docs/memcached_behavior.pod @@ -40,7 +40,9 @@ memcached_behavior_set() will flush and reset all connections. =item MEMCACHED_BEHAVIOR_NO_BLOCK Causes libmemcached(3) to use asychronous IO. This is the fastest transport -available. +available for storage functions. For read operations it is currently +similar in performance to the non-blocking method (this is being +looked into). =item MEMCACHED_BEHAVIOR_TCP_NODELAY @@ -51,10 +53,33 @@ environments). Makes the default hashing algorithm for keys use MD5. The value can be set to either MEMCACHED_HASH_DEFAULT, MEMCACHED_HASH_MD5, MEMCACHED_HASH_CRC, MEMCACHED_HASH_FNV1_64, MEMCACHED_HASH_FNV1A_64, MEMCACHED_HASH_FNV1_32, MEMCACHED_HASH_FNV1A_32, MEMCACHED_HASH_KETAMA. The behavior for all hashes but MEMCACHED_HASH_DEFAULT is identitical to the Java driver written by Dustin Sallings. +=item MEMCACHED_BEHAVIOR_DISTRIBUTION + +Using this you can enable different means of distributing values to servers. +The default method is MEMCACHED_DISTRIBUTION_MODULA. You can enable +consistent hashing by setting MEMCACHED_DISTRIBUTION_CONSISTENT. +Consistent hashing delivers better distribution and allows servers to be +added to the cluster with minimal cache losses. + =item MEMCACHED_BEHAVIOR_CACHE_LOOKUPS Memcached can cache named lookups so that DNS lookups are made only once. +=item MEMCACHED_BEHAVIOR_SUPPORT_CAS + +Support CAS operations (this is not enabled by default at this point in the server since it imposes a slight performance penalty). + +=item MEMCACHED_BEHAVIOR_POLL_TIMEOUT + +Modify the timeout value that is used by poll(). The default value is -1. An signed int pointer must be passed to memcached_behavior_set() to change this value. For memcached_behavior_get() a signed int value will be cast and returned as the unsigned long long. + +=item MEMCACHED_BUFFERED + +Enabling buffered IO causes commands to "buffer" instead of being sent. Any +action that gets data causes this buffer to be be sent to the remote +connection. Quiting the connection or closing down the connection will also +cause the buffered data to be pushed to the remote connection. + =back =head1 RETURN