consistent hashing: in Perl, standards
Tres Seaver
tseaver at palladion.com
Wed Apr 25 16:00:37 UTC 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Alex Stapleton wrote:
> Is this meant to be a thread about algorithms or a thread about
> implementations of algorithms?
>
> Personally I think we should be working towards having a standard C
> implementation of a memcached client that can be linked in as a
> library for other languages. (I've done some work on this already
> actually...) C afterall is the LCD for pretty much every language we
> care about right? Which means I think we should simply be hacking on
> top of Ketama or a fork or start from scratch :) Is there some
> advantage to having lots of client implementations in various
> languages that I'm not aware of?
I can think of two, based on lots of experience with writing and
maintaining C extensions in Zope:
- A "C-with-wrappers" approach is inherently less portable than a
"pure" implementation in a language like Python, Perl, or PHP; even
if the wrapper itself is squeaky clean and builds everywhere, it
still creates a barrier to distribution for users (mostly on Windwos)
who don't have compilers on hand.
- It is much easier to develop the library in a higher-level language,
which is important when adding new features, etc.: the pattern we
have adopted in Zopeland is to have the "reference" implementation
written in Python, with the C version used (if available) as an
optimization; there are hooks for disabling the C versions,
which allows for testing the applicaiton against the easier-to-verify
Python implementation in cases where there may be a bug in the
C version.
Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver at palladion.com
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGL3sl+gerLs4ltQ4RAtqsAKCYKC5+PNQS8BJ5EhRR98cRm496dgCgj0QV
JJ0HieuqoUSbJanKx8+Jp4o=
=UkIP
-----END PGP SIGNATURE-----
More information about the memcached
mailing list