��K��Web�T�C�g�ł̗��p���Ⴊ���J���ꂽ���Ƃ�����A�L���b�V���T�[�o���g�����f�[�^�x�[�X�V�X�e�������ڂ��W�߂���܂��B���ł�memcached�͑����̃T�[�r�X�ʼn^�p���т����钍�ڊ��ł��BMySQL�ł̎��Ⴊ�������グ���Ă��܂����A�{�e�ł͈��萫���Q��PostgreSQL�Ƒg�ݍ��킹���ꍇ�̎������@���Љ�Ă����܂��B
memcached 1.2.5
�f�[�^�x�[�X�FPostgreSQL 8.3.1
OS�FCentOS 5�iLinux kernel 2.6 �j
�V�F���Fbash
CPU�FIntel Core2Quad 9660 2.4GHz
RAM�FPC2-6400 8GBytes
�@memcached�́ADanga Interactive�ɂ���ĊJ�����ꂽ�I�[�v���\�[�X�̃������L���b�V���T�[�o�ł��B
�@��������Ƀf�[�^��ۑ�����̂�memcached���I������ƃf�[�^�������܂����A�iOracle��MySQL�Ƃ������jRDBMS�Ɣ�r����Ƃ����Ⴂ�̍������X�|���X���\��L���A���疜���Ƃ�����ʂ̃f�[�^�������Ă��قƂ�ǐ��\�����Ȃ��Ƃ�������������܂��B
�@�@�\�͌��E�܂Ő�l�߂��A��{�I�ɂ̓L�[�ƃf�[�^�̑g�i�ȉ��Aitem�ƌĂт܂��j�̕ۑ��ƌ����ƍ폜�����ł��܂���B
�@�ɂ�������炸�Amemcached��Twitter��Facebook�ȂǑS���E����A�N�Z�X���W������Web�T�C�g�ɂ����āA��ʂ̃g���t�B�b�N�������������X�|���X�̗v�Ƃ��ė��p����Ă��܂��BFacebook�ł�800�����memcached�p�̃T�[�o���ғ����Ă���悤�ł��B
�@�����ȊO�ɂ��A���\����Ă��邾����Slashdot�ALiveJournal�AWikipedia�Ȃǂ����[�U�[�Ƃ��Ė���A�˂Ă��܂��i�������[�U�[���X�g�F�@http://www.danga.com/memcached/users.bml�j�B
�@��K�͂�Web�T�C�g�Ɍ��炸�A������Web�V�X�e���͈ꎞ�I�ɑ�ʂ̃A�N�Z�X���W�����邱�Ƃ������A���̓x��RDBMS���{�g���l�b�N�ɂȂ�܂��B�����������Ԃւ̑Ώ��@��1�Ƃ��āA�f�[�^�̈ꕔ��memcached��ɕۑ�����RDBMS�̕��ׂ�}����X�^�C������������܂��B
�@�Ⴆ�Z�b�V�����Ǘ��́A��{�I�ɂ̓Z�b�V����ID��ۑ�����悢�̂ŁAmemcached�ɍœK�Ȏd���ł��B�܂��ASNS���Ɏ��ƁA����\������鎩�g��F�l�̃v���t�B�[���Ȃǂ́A���̓s�x�f�[�^�x�[�X�ɃA�N�Z�X����̂łȂ��Amemcached��ɕۑ�����f�[�^�x�[�X�̕��ׂ��啝�ɉ�����ł��傤�B
�@���̂悤�ɁAmemcached�͍����Web�V�X�e���v��傫���ς���\�����߂Ă��܂��B
�@memcached���N���C�A���g�p���C�u�����͑����J������Ă��܂��B C����ɂ��3��ނ̃��C�u�����ilibmemcache�Aapr_memcache�Alibmemcached�j���͂��߁APerl�^PHP�^Ruby�^Python�^Java�ȂǁA��v�Ȍ���̂��߂�API�����݂��܂��B�܂��A�I�[�v���\�[�X��RDBMS�ł���PostgreSQL��MySQL����memcached�𑀍삷�郉�C�u�������J������Ă��܂��B
����^RDBMS | �N���C�A���g���C�u���� |
---|---|
C | libmemcache apr_memcache libmemcached |
Perl | Cache::Memcached Cache::Memcached::Fast |
PHP | PECL memcache |
Ruby | Ruby MemCache Client |
Python | python memcached |
Java | memcached client for java |
PostgreSQL | pgmemcache |
MySQL | Memcached Functions for MySQL |
�\1�@�N���C�A���g���C�u�����ꗗ |
�@memcached��libevent�Ƃ����C�x���g�����p���C�u�����𗘗p����̂ŁAmemcached�̃C���X�g�[���ɐ旧���Alibevent���C���X�g�[�����Ă��������B�{�e�ł͈ȉ��̂Ƃ���A�{�e���J���_�ł̍ŐV����łł���libevent 1.4.5�����܂��B
libevent-1.4.5-stable.tar.gz�̓����
http://www.monkey.org/~provos/libevent/
�@�K���ȃf�B���N�g���ŃA�[�J�C�u��W�J���Aconfigure�R�}���h��make�R�}���h�����s���܂��B
[root]# tar xvfz libevent-1.4.5-stable.tar.gz [root]# cd libevent-1.4.5-stable [root]# ./configure --prefix=/usr [root]# make && make install
�@����memcached 1.2.5���_�E�����[�h���܂��B
memcached-1.2.5.tar.gz�̓����
http://www.danga.com/memcached/download.bml
�@libevent�Ɠ��l�A�K���ȃf�B���N�g���ŃA�[�J�C�u��W�J���Aconfigure�R�}���h��make�R�}���h�����s���܂��B
[root]# tar xvfz memcached-1.2.5.tar.gz [root]# cd�@memcached-1.2.5 [root]# ./configure --enable-threads [root]# make && make install
�@���s��root�ȊO�̃��[�U�[�ōs���܂��B
[root]# su postgres [postgres]# /usr/local/bin/memcached -p 11211 -m 1000 -d
�@��ȋN���I�v�V�����͉��L�̂Ƃ���ł��B
�I�v�V���� | ���� |
---|---|
-p [num] | TCP�|�[�g�ԍ����w��B�f�t�H���g��11211 |
-d | �f�[�����Ƃ��ċN�� |
-m [num] | �m�ۂ���ő僁������M�o�C�g�P�ʂŎw��B�f�t�H���g��64Mbytes |
-t [num] | �N������X���b�h�̐����w�肷��B�f�t�H���g��4�B�ڍׂ�ji�Q�� |
�\2�@memcached�̎�v�ȋN���I�v�V���� |
�@�����ł�PHP����memcached���g�����@��������܂��B
�͂��߂�pecl�R�}���h��memcache���C�u�������C���X�g�[�����܂��B
[root]# pecl install memcache
�@����php.ini�t�@�C���Ɉȉ���1�s��lj����܂��B
extension=memcache.so
�@�����PHP����memcached���g���������ł��܂����B
�@�ȉ��ɂ�PHP�̃T���v���v���O�����������܂��B
�@�����ݒ�ŁAmemcached�̉ғ�����T�[�o��IP�A�h���X�Ɛڑ��|�[�g���w�肵�܂��B
�@�f�[�^�̕ۑ��ł��B�����̈Ӗ��͑�1�������L�[�A��2�������f�[�^�A��3�������t���O�A��4������expire���ԁi�ۑ����ԁj�ł��B���Ԃ͕b�P�ʂŎw�肵�܂��B
�@���̗�ł̓L�['fukushima'�A�f�[�^'����'��3600�b�i��1���ԁj�ۑ����܂��BPHP���܂ނقƂ�ǂ̌����API�̓t���O������̂ŁA�K���Ȓl����͂��Ă��������B
�@10�s�ڂ̓f�[�^�̌����ł��B�L�['fukushima'�����f�[�^��Ԃ��܂��B
01�F <?php 02�F /* memcached�Ƃ̐ڑ� */ 03�F $memcache = new Memcache; 04�F $memcache->addServer("127.0.0.1", 11211); 05�F 06�F /* �f�[�^�̕ۑ� */ 07�F $memcache->add('fukushima', '����', 0, 3600); 08�F 09�F /* �f�[�^�̌��� */ 10�F $data = $memcache->get('fukushima'); 11�F print "key('fukushima') => " . $data . "\n"; 12�F 13�F /* �ؒf */ 14�F $memcache->close(); 15�F ?>
Copyright © ITmedia, Inc. All Rights Reserved.