LinuxÒÁµéÔ°ÂÛ̳'s Archiver

Roc.Ken ·¢±íÓÚ 2008-1-10 14:52

memcachedbÓ¦ÓÃÖ¸ÄÏ

Ô­ÎĵØÖ·:  [url]http://blog.csdn.net/simonlsy[/url]

memcachedb¹ÊÃû˼Òå¾ÍÊÇ memcached + bdb£¬ÊÇ»ùÓÚmemcached Socket²ãºÍberkeley-db´æ´¢²ã½á¹¹µÄʵÏÖ£¬ÊÇÐÂÀË»¥¶¯ÉçÇø¼¼ÊõÍŶÓ2007ÄêµÄÒ»ÏîÖØ´óµÄ¼¼Êõ³É¹û£¬ÏÖÔÚÓ¦ÓÃÓÚÐÂÀË»¥¶¯ÉçÇø¶à¸ö²úÆ·ÏßÖУ¬ÆäÖаüÀ¨ÐÂÀ˲©¿ÍµÈÖØÍ·²úÆ·¡£Äܹ»ÊµÏÖÈÎÒâ memcache apiµÄµ÷Óá¢Êý¾ÝʵʱÂ䵨ÒÔ¼°Ö÷¸¨ÊµÊ±±¸·Ý¡£

ÏîÄ¿Ö÷Ò³£º  [url]http://code.google.com/p/memcachedb/[/url]

ΪʲôҪѡÔñmemcachedb£ºÃ»ÓÐÊ²Ã´ÌØÊâµÄÔ­Òò£¬ÎÒÃÇÓÐ×îºÃµÄÀíÓɾÍÊÇ£¬ÔÚ×öµ½×î´ó²»ÎþÉüÊý¾Ý¶Á¡¢Ð´ÐÔÄܵÄǰÌáÏ£¬ÎÒÃÇÄܹ»ÈÃÄúÔ­À´´æ´¢ÔÚ memcacheÀïµÄÊý¾Ý²»ÔÙÔâÊÜϵͳ崻ú»òÕßϵͳµôµç¶ø¶ªÊ§£¬¼´Ê¹·þÎñÆ÷µçÔ´**ÁË£¬Ö»ÒªÓ²ÅÌ»¹Äܹ»Õý³£¹¤×÷£¬»»µ½ÁíÍâһ̨·þÎñÆ÷ÉÏ£¬ÄúµÄÊý¾ÝÒÀÈ»°²È»ÎÞí¦µØÔÚÓ²ÅÌÉÏ¡£
ÐÔÄܵĵ£ÓÇ£ºÎÒÃÇ×ö¹ýСÊý¾Ý²âÊÔ£¬Ð¡Êý¾Ý£¨¼¸Ê®¸ö×Ö½Ú£©Êý¾ÝµÄ¶Áд£¬Ã¿ÃëÖÓ²¢·¢Äܹ»Î¬³ÖÔÚ5000+(µ¥¿é146ScisÓ²ÅÌ£¬CPUºÍÄÚ´æÅäÖü¸ºõ¿ÉÒÔºöÂÔÒòΪÕâ²»ÊÇÐÔÄÜÆ¿¾±)¡£»ù±¾ÉÏÂú×ãËùÓл¥ÁªÍø¸ßЧ´æ´¢µÄÓ¦Óá£

Ó¦Óó¡ºÏ£ºÐèҪƵ·±¶ÁдµÄСÊý¾Ý¡£ÀýÈçÊý×ÖÀà·þÎñ¾ÍÏñµã»÷Êý£¬ÐèҪƵ·±Ð´ÈëСÊý¾ÝµÄÀýÈçÆÀÂÛϵͳ£¬ÐèÒª¼Ç¼Óû§×´Ì¬µÄÀýÈçÔÚÏßÈËÊýÒÔ¼°ÔÚÏßÓû§µÈµÈ¡£µ±È»£¬Èç¹ûÄúÏëÓÃÀ´´æ´¢µ¥±Ê³¬¹ý10KÒÔÉϵÄÊý¾Ý£¬ÀýÈçÐÂÎÅ»òÕßÎÄÕ»òÕßÂÛ̳Ìû×ÓÒ²¿ÉÒÔ£¬µ«ÊÇÎÒÃÇûÓг¢ÊÔ¹ý£¬Èç¹ûÄúÕæµÄÓÃÀ´ÕâÑù×ÓÍæÁË£¬¿ÉÒÔ·´À¡¸øÎÒÃÇ¡£

Êý¾Ý±¸·Ý&&¶Áд·ÖÀ룺memcachedbÖ§³ÖÖ÷¸¨ÊµÊ±ÎÞ²îÒìͬ²½£¬ÅäÖÃÖ÷·þÎñºÍ¸¨·þÎñ½ö½öÐèÒªºÜ¶ÌµÄÒ»ÌõÆô¶¯ÃüÁî¡£µ±È»£¬ÄúÒ²¿ÉÒÔÀûÓÃÕâÒ»±ãÀûÌØÐÔÀ´ÊµÏÖ¶Áд·ÖÀ룬ÄÇÑù×Ó»áÈÃÄúµÄϵͳ¸ü¼ÓµÄ¸ßЧ¡£
Îȶ¨ÐÔ£ºmemcachedbĿǰ±»Ó¦ÓÃÓÚÐÂÀË»¥¶¯ÉçÇø¶à¸ö²úÆ·ÏßÖУ¬¾ßÓиÖÌú°ãµÄÆ·ÖÊ£¬Sina³öÆ·£¬Æ·ÖÊÎãÓ¹ÖÃÒÉ¡£


memcachedb¸úmemcacheÒ»Ñù£¬ÍøÂçsocketÊý¾Ý´¦ÀíÒÀÀµÓÚlibevent£¬ËùÒÔ£¬ÔÚ°²×°Ö®Ç°ÐèÒªÏÂÔØÈý¸ö°²×°°ü£¬¼´libevent¡¢Berkeley DbÒÔ¼°memcachedb¡£
Libevent ÏÂÔØÒ³Ãæ£º[url]http://monkey.org/~provos/libevent/[/url] £¬ÏÂÔØ×îÐÂÎȶ¨°æ±¾¾ÍÐС£
Berkeley DbÏÂÔØÒ³Ãæ£º[url]http://www.oracle.com/technology[/url] ... keley-db/index.html ÐèÒª°²×°4.6°æ±¾
memcachedbÏÂÔØÒ³Ãæ£º[url]http://code.google.com/p/memcachedb/[/url] ÏÂÔØ×îа汾 0.1.0°æ±¾

°´ÕÕ˳Ðò°²×°£¬LibeventºÍBerkeley Db°´ÕÕ³£¹æ°²×°¼´¿É£¬ÕâÀïÒÔLinux »·¾³Îª±ê×¼¡£

[======Libevent=====]

tar -zxvf libevent-1.3e.tar.gz

cd libevent-1.3e

./configure

make && make install

[======Berkeley Db=====]

tar -zxvf db-4.6.19.tar.gz

#ÐèÒª½øÈëÌØ¶¨²Ù×÷ϵͳ±àÒë»·¾³£¬¸ü³£¹æÈí¼þµÄ±àÒëÓÐÐ©Çø±ð

cd db-4.6.19/build_unix/

#È»ºó²ÅÄܹ»¿ªÊ¼±àÒë

../dist/configure

make && make install

#Èç¹ûûÓÐÖ¸¶¨ÌØÊⰲװ·¾¶£¬±àÒëÍê³É£¬ÐèÒª½«Berkeley DbÔËÐпâµÄ·¾¶Ìí¼Óµ½ÏµÍ³ÅäÖÃÀïÃæ

echo "/usr/local/BerkeleyDB.4.6/lib/" >> /etc/ld.so.conf

#ÖØÔØÏµÍ³LdÔËÐпâ

ldconfig

[======Memcachedb=====]

tar -zxvf memcachedb-0.1.0.tar.gz

cd memcachedb-0.1.0

#Èç¹ûÄúÒª´æ´¢µÄÄÚÈݵļüÖµµÄ³¤¶ÈºÍµ¥±ÊÄÚÈݵij¤¶ÈÓб仯,ÄúÐèÒª¸ü¸ÄÒ»¸öÎļþ memcachedb.h

vim memcachedb.h

////////////////////////////////////////////////////////////

#define END_LEN 32 ----> ÕâÊÇÊÇ Key+Value µÄ×î´ó³¤¶È
#define END_LEN_STR "31" ---> ÕâÊÇÊÇ key µÄ×î´ó³¤¶È

/////////////////////////////////////////////////////////

#ĬÈÏkey¼üÖµÖ»Ô¤ÁôÁË31¸ö×ֽڵij¤¶È£¬µ¥±ÊÊý¾Ý×ÊÇ32¸ö×Ö½ÚÊý¡£

#ÀýÈçÄúÈç¹ûÐèÒªÓÃÕâ¸öÍæÒÕÀ´´æ´¢Îı¾ÄÚÈÝÊý¾Ý£¬¼ÙÉèÄúµÄ¼üÖµÊÇÒ»¸ö32¸ö×Ö½ÚµÄmd5£¬µ¥±ÊÊý¾ÝÔÊÐí×10K£¬ÄÇÄú¿ÉÒÔÉ趨

////////////////////////////////////////////////////////////

#define END_LEN 102400 ----> ÕâÊÇÊÇ Key+Value µÄ×î´ó³¤¶È
#define END_LEN_STR "32" ---> ÕâÊÇÊÇkeyµÄ×î´ó³¤¶È

/////////////////////////////////////////////////////////

#ÐÞ¸ÄÍêÖ®ºó£¬Ö±½Ómake¾ÍÐÐ

make

#±àÒëÍêÖ®ºó£¬½«Éú³É¿ÉÖ´ÐÐmemcachedb¿½±´µ½ /usr/sbin/

cp -f memcachedb /usr/sbin/

#Æô¶¯ memcachedb

#µÚÒ»ÖÖ£¬¶ÁдºÏ²¢Ä£Ê½£¬¼´²»×ö¸¨¿½±´£¬¼´¶ÁÓÖд£¬²»×öÈßÓ౸·Ý

memcachedb -p21211 -d -r -u root -H /data/mdb_11211 -N

#µÚ¶þÖÖ£¬¶Áд·ÖÀë/±¸·Ýģʽ

#Ö÷·þÎñÆ÷ 192.168.0.1 ¶Áд¼àÌý 11211 £¬Í¬²½Í¨¹ý31211µÄ¶Ë¿ÚÍê³É£¬²»Õ¼Ó÷±Ã¦µÄÖ÷·þÎñ¶Ë¿Ú

memcachedb -p21211 -d -r -u root -H /data/mdb_11211_m -N -R 127.0.0.1:31211 -M

# ¸¨·þÎñÆ÷ 192.168.0.2 Ö»¶Á¼àÌý 21212£¬´Ó192.168.0.1 µÄ 31211¶Ë¿Úͬ²½Êý¾Ý£¬Í¬Ê±ÔÙ¿ªÒ»¸ö31212¶Ë¿Ú¶ÔÍâÌṩÊý¾Ýͬ²½·þÎñ

memcachedb -p21212 -d -r -u root -H /data/mdb_11211_from_16801_s -O 192.168.0.1:31211 -R 192.168.0.2:31212 -S

luren04 ·¢±íÓÚ 2008-4-23 13:36

ºÃÌû£¬¿ÉϧˮƽÓÐÏÞ£¬¿´²»¶®¡£

Ò³: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.