root/trunk/website/apis.bml @ 801

Revision 801, 5.3 kB (checked in by dormando, 11 months ago)

see zee weekee

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<?page
2wintitle=>client apis
3body<=
4
5<?h1 See Wiki h1?>
6
7<p>You probably want <a
8href="http://code.google.com/p/memcached/wiki/Clients">the client list at the
9wiki</a>, as it is actually kept up to date.</p>
10
11<?h1 Perl API h1?>
12
13<p> An object-oriented Perl module can be <a href="http://search.cpan.org/dist/Cache-Memcached/">found
14on CPAN</a> as <tt>Cache::Memcached</tt> or <a href="http://code.sixapart.com/svn/memcached/trunk/api/perl/">
15in Subversion</a> (<a href="http://code.sixapart.com/svn/memcached/trunk/api/perl/ChangeLog">ChangeLog</a>).
16(GPL/Artistic)</p>
17
18<p>The Perl API takes advantage of the server's opaque flag support and
19sets its "complex" flag whenever the object being stored or retrieved
20isn't a plain scalar.  In that case, the <tt>Storable</tt> module is
21used to freeze and thaw the value automatically going in and out of
22the memcached.</p>
23
24<p>There is also Cache::Memcached::Fast---another Perl client written in C,
25largely compatible with the original Cache::Memcached. Available on CPAN at <a
26href="http://search.cpan.org/dist/Cache-Memcached-Fast/">http://search.cpan.org/dist/Cache-Memcached-Fast/</a>.</p>
27
28<?h1 PHP API h1?>
29
30<p>There are tons of PHP libraries available, in different conditions.  But it now seems there's an official one:</p>
31<ul>
32<li><a href="http://pecl.php.net/package/memcache">PHP PECL memcached client</a> -- official PHP client</li>
33</ul>
34
35<?h1 Python API h1?>
36
37<p>The Python client we'd previously released was just a prototype, and we don't have regular Python programmers on hand. The folks at Tummy.com have took over maintenance. See <a href="ftp://ftp.tummy.com/pub/python-memcached/">ftp://ftp.tummy.com/pub/python-memcached/</a> for the latest versions.</p>
38
39<?h1 Ruby API h1?>
40
41<ul>
42<li><a href="http://www.deveiate.org/code/Ruby-MemCache.html">http://www.deveiate.org/code/Ruby-MemCache.html</a></li>
43<li>gem install memcache-client</li>
44<li><a href="http://blog.evanweaver.com/files/doc/fauna/memcached/">http://blog.evanweaver.com/files/doc/fauna/memcached/</a>. C backed client wrapping libmemcached.
45</ul>
46
47<?h1 Java API h1?>
48<p>A Java API is maintained by <a href="mailto:greg@meetup.com">Greg Whalin</a> from <a href="http://www.meetup.com/">Meetup.com</a>.  You can find that library here:
49
50<ul>
51<li><a href="http://www.whalin.com/memcached/">http://www.whalin.com/memcached/</a> -- Java API for memcached</li>
52</ul>
53
54<p>An improved Java API maintained by Dustin Sallings is also available.  Aggressively optimised, ability to run async, supports binary protocol, etc. See site for details:
55
56<ul>
57<li><a
58href="http://bleu.west.spy.net/~dustin/projects/memcached/">http://bleu.west.spy.net/~dustin/projects/memcached/</a> -- Improved Java API for memcached</li>
59</ul>
60
61<?h1 C# API h1?>
62<p>There are multiple C# APIs:
63
64<ul>
65<li><a href="https://sourceforge.net/projects/memcacheddotnet/">https://sourceforge.net/projects/memcacheddotnet/</a></li>
66<li><a href="http://www.codeplex.com/EnyimMemcached/">http://www.codeplex.com/EnyimMemcached/</a> - Client developed in .NET 2.0 keeping performance and extensibility in mind. (Supports consistent hashing.)</li>
67<li><a href="http://code.google.com/p/beitmemcached/">http://code.google.com/p/beitmemcached/</a> - Client developed by BeIT with many new features.</li>
68</ul>
69
70<?h1 C API h1?>
71<p>Multiple C libraries for memcached exist:</p>
72<ul>
73<li><a href="http://www.outoforder.cc/projects/libs/apr_memcache/">apr_memcache</a> by Paul Querna; Apache Software License version 2.0</li>
74<li><a href="http://tangent.org/552/libmemcached.html">libmemcached</a> by Brian Aker; BSD license. This is a new library, under heavy development.</li>
75<li><a href="http://people.freebsd.org/~seanc/libmemcache/">libmemcache</a> by Sean Chittenden; BSD license. This is the original C library. It is no longer under active development. You should try libmemcached instead.</li>
76</ul>
77
78<?h1 Postgres API h1?>
79<p>The pgmemcache project allows
80you to access memcache servers from Postgresql Stored Procedures and Triggers. 
81More details and downloads are available at:</p>
82
83<ul>
84<li><a href="http://pgfoundry.org/projects/pgmemcache/">http://pgfoundry.org/projects/pgmemcache/</a></li>
85</ul>
86
87<?h1 Chicken Scheme h1?>
88<ul>
89<li><a href="http://chicken.wiki.br/memcached">http://chicken.wiki.br/memcached</a> -- Chicken Scheme library</li>
90</ul>
91
92<?h1 Lua h1?>
93<ul>
94<li><a href="http://luamemcached.luaforge.net/">http://luamemcached.luaforge.net/</a> -- Lua library</li>
95</ul>
96
97<?h1 MySQL API h1?>
98<p>The memcache_engine allows memcache to work as a storage engine to MySQL.
99This means that you can SELECT/UPDATE/INSERTE/DELETE from it as though it is a
100table in MySQL.
101</p>
102<ul>
103<li><a href="http://tangent.org/index.pl?node_id=506">memcache_engine</a></li>
104</ul>
105<p>A set of MySQL UDFs (user defined functions) to work with memcached using
106libmemcached.
107</p>
108<ul>
109<li><a href="http://tangent.org/586/Memcached_Functions_for_MySQL.html">MySQL
110UDFs for memcached</a></li>
111</ul>
112
113<?h1 Protocol h1?> <p>To write a new client, check out the <a
114href="http://code.sixapart.com/svn/memcached/trunk/server/doc/protocol.txt">protocol
115docs</a>.  Be aware that the most important part of the client is the
116hashing across multiple servers, based on the key, or an optional
117caller-provided hashing value.  Feel free to join the mailing list (or
118mail me directly) for help, inclusion in Subversion, and/or a link to your
119client from this site.</p>
120
121<=body
122page?>
Note: See TracBrowser for help on using the browser.