Ϊmemcached¿ª·¢µÄtag¹¦ÄÜ¡¾Ö§³ÖphpÀ©Õ¹¡¿
´ó¼ÒºÃ£¬ÎÒÃÇΪmemcachedÔö¼ÓÁËtag¹¦ÄÜ£¬¸Ã¹¦ÄÜĿǰ֧³Ö£ºÅúÁ¿É¾³ý¶à¸ökey¡£Í¬Ê±¿ª·¢µÄ»¹ÓÐphpÀ©Õ¹¡£Ö÷ÒªÌØÐÔ£º
1¡¢Ëٶȿ죺ʹÓÃhashºÍsplay tree£¬²åÈ롢ɾ³ýËٶȿ졣
2¡¢½ÚÊ¡Äڴ棺ȥµôÖØ¸´µÄtagºÍkey£¬×Ô¶¯É¾³ý¡°¿Õtag¡±¡£
3¡¢Ö§³Ö·Ö²¼Ê½²¿Êð¡£
4¡¢Ḭ̈߳²È«¡£
5¡¢tagºÍkeyÖ®¼äÖ§³Ö¶à¶Ô¶à¹ØÏµ¡£
6¡¢itemºÍkeyÖ®¼ä±£³ÖÊý¾ÝÒ»ÖÂÐÔ¡£
¸ü¶àÄÚÈÝ£º
[url]http://code.google.com/p/memcached-tag/[/url]
Çë´ó¼Ò¶àÌᱦ¹ó½¨Ò顣лл£¡:-) ²»´í£¬Ö§³Ö£¡
ÆÚÍû½«phpÀ©Õ¹·½Ãæ½éÉÜһϡ£ Module½Ó¿Ú£º
1) /**
* Single-add operations, for example
* $memcache->tag_add('tag1', array('key1', 'key2', 'key3'))
* $memcache->tag_add('tag1', 'key1')
*/
bool tag_add(mixed tag, mixed keys = null)
/**
* Single-delete operations, for example
* $memcache->tag_delete('tag1')
*
* Multi-delete operations, for example
* $memcache->tag_delete(array('tag1', 'tag2'))
*/
bool tag_delete(mixed tag)
example:
<?php
$memcache = memcache_connect("127.0.0.1", 11211);
if ($memcache)
{
for ($i=0; $i<10; $i++)
{
$memcache->set("key$i", "val$i");
}
$memcache->tag_add("tag_1", array("key1", "key1", "key1", "key2", "key3", "key1", "key4"));
$memcache->tag_add("tag_2", "key1");
$memcache->tag_add("tag_3", array("key1", "key2", "key3", "key1"));
$memcache->tag_delete("tag_2");
$memcache->tag_delete(array("tag_1¡°, ¡°tag_3¡±));
}
else
{
echo "Connection to memcached failed";
}
?> лл£¡ÊÕÏÂ~~~
Ò³:
[1]