�쐬 2003/1/6
�X�V 2003/1/8
Tomcat5�̐V�@�\�ɂ��ă������Ă��܂��B
�N���X�^�����O�Ƃ́A�V�X�e���̐M���������߂邽�߂̎d�g�݂ł��B�����̃T�[�o���N�����Ă����āA�P���N���b�V�����Ă��܂����ꍇ�ł����̃T�[�o�ŏ����������p����悤�ɂ��܂��BJava��Web�A�v���P�[�V�����T�[�o�ŃN���X�^��g�ނƂ��ɖ��ɂȂ�̂́A�Z�b�V�����f�[�^�ł��B��䂪�_�E�������Ƃ��ɁA�ʂ̃T�[�o�ŏ������Ђ����ɂ��Ă��A����܂ł̃Z�b�V�����f�[�^���Ȃ����Ƃɂ́A�����������p���܂���B���̂��߂ɁA�Z�b�V�����f�[�^���T�[�o�Ԃŕ������Ă����d�g�݂��Z�b�V�������v���P�[�V�����ƌ����܂��BTomcat�ɂ͂���܂ŁA�Z�b�V�������v���P�[�V�����̎d�g�݂��Ȃ��A���̓_�����p�A�v���P�[�V�����ɔ�ׂāA�@�\�I�Ɍ���肷�镔���ł����B�������ATomcat5�ɂȂ�A�Ƃ��Ƃ�Tomcat�ɃZ�b�V�������v���P�[�V�����̋@�\����������܂����B
�����ł́A�}�j���A��(Clustering)�̎菇�����ɃZ�b�V�������v���P�[�V�����������Ă݂܂��B
�{���͕������PC�Ŏ����̂��悢�̂ł����A���茳�� 1�䂵��PC���Ȃ��̂ŁA�����ł� 1��̂o�b��Tomcat�� 2�N�����Ď����܂��B 1��̂o�b�ŕ�����Tomcat�C���X�^���X���N������ꍇ�́A�����Tomcat��server.xml�̊e��|�[�g�ݒ���������Ȃ��悤�ɂ��炵�Ă��K�v������܂��B�����ł́A�����Tomcat��server.xml�ŋ�������|�[�g�ɑS��10000�𑫂��܂����B
�܂��ATomcat���Q�p�ӂ��܂��B�����ł́A�ȒP�̂��߁ATomcat���t�H���_���Ƃ܂邲�ƃR�s�[���ĂQ�ɂ��܂���(�܂邲�ƃR�s�[���Ȃ��Ă��N���p�����[�^�ŕς���Ƃ͎v���܂���)�B
�ȉ��̐ݒ���Q��Tomcat�����ōs���܂��B
�N���X�^�ݒ���s���܂��Bconf/server.xml��Cluster�v�f��Valve(ReplicationValve)�v�f�̃R�����g���͂����܂�(�ȉ��̃R�����g���͂���)�B
365�s�ڕt��
<!-- When uncommenting the cluster, REMEMBER to uncomment the replication Valve below as well <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster" name="FilipsCluster" debug="10" serviceclass="org.apache.catalina.cluster.mcast.McastService" mcastAddr="228.0.0.4" mcastPort="45564" mcastFrequency="500" mcastDropTime="3000" tcpThreadCount="2" tcpListenAddress="auto" tcpListenPort="4001" tcpSelectorTimeout="100" printToScreen="false" expireSessionsOnShutdown="false" useDirtyFlag="true" replicationMode="synchronous" /> -->
417�s�ڕt��
<!-- <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve" filter=".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;"/> -->
���ɁA�N���X�^�����O�Ώۂɂ���Web�A�v���P�[�V������web.xml��<distributable/>�v�f��lj����܂��B�����ł́Aservlets-examples�̃T���v�����g���̂ŁAservelts-examples��web.xml���C�����܂���(description�̌�ɒlj�)�B
<web-app> <display-name>Servlet 2.4 Examples</display-name> <description> Servlet 2.4 Examples. </description> <distributable/> ....
server.xml�ŋ�������|�[�g�����炵�܂��BHTTP�|�[�g�����łȂ��A����������܂��B�Ȃ��ACluster�v�f�̃|�[�g�ɂ��ẮAtcpListenPort�����̃|�[�g�ԍ��݂̂��点�悢�ł��B���炵�Y�ꂪ����ƁA�N������JVM Bind�G���[���o�܂��B
������Tomcat��startup.bat�Ȃǂ���N�����܂��B
�����ł́Aservelts-examples��Sessions Example���g���܂��B�u���E�U�ŁAhttp://localhost:8080/servlets-examples/servlet/SessionExample �ɃA�N�Z�X���܂��BName��Value�ɒl�����(�����ł�key1�Avalue1�Ƃ��܂���)���A�N�G�����M�{�^���������܂��B
Tomcat�̃R���\�[��������ƁATomcat1�̕��ɕۑ����ꂽ�Z�b�V������Tomcat2�ɕ���(���v���P�[�g)����Ă���̂�������܂��B
Tomcat1(HTTP 8080�ŋN��) | Tomcat2(HTTP 18080�ŋN��) |
���: Average cluster serialize/send time=30 ms for 1 requests (30ms). 2004/01/07 1:57:32 org.apache.catalina.cluster.session.SimpleTcpReplicationManag er log ���: writeObject() storing session D058BDD50BD314D512A4DD0EF8D99B51 2004/01/07 1:57:32 org.apache.catalina.cluster.session.SimpleTcpReplicationManag er log ���: storing attribute 'key1' with value 'value1' 2004/01/07 1:57:32 org.apache.catalina.cluster.tcp.ReplicationValve addClusterSe ndTime ���: Average cluster serialize/send time=20 ms for 2 requests (40ms). |
���: readObject() loading session D058BDD50BD314D512A4DD0EF8D99B51 2004/01/07 1:57:32 org.apache.catalina.cluster.session.SimpleTcpReplicationManag er log ���: loading attribute 'key1' with value 'value1' 2004/01/07 1:57:32 org.apache.catalina.cluster.session.SimpleTcpReplicationManag er log ���: Received replicated session=ReplicatedSession id=D058BDD50BD314D512A4DD0EF 8D99B51 ref=StandardSession[D058BDD50BD314D512A4DD0EF8D99B51] name=key1; value=value1 LastAccess=1073408252953 |
Tomcat1���_�E���������Ƃɂ��܂��BTomcat1�̕���shutdown.bat�ȂǂŁA�V���b�g�_�E�����܂��B�u���E�U�œ���URL�ɃA�N�Z�X����ƁA�T�[�o�[�̓_�E�����Ă���̂ŁA�G���[��ʂɂȂ�܂�(�����O�Ɠ�����ʂ��\������Ă���A����́A�����炭�u���E�U�̃L���b�V���ł�)�B
Tomcat2�̕�(�|�[�g18080)�ɃA�N�Z�X����ƁA�Z�b�V�������(�����قǓ��͂���key�Avalue)���Ђ������܂܁A�������p���ł��܂��B
Tomcat1���N�����܂��BTomcat1(�|�[�g8080)�ɃA�N�Z�X����ƁA�������Ȃ������悤�ɃZ�b�V�������Ђ����ŁA�������p���ł��܂��B
�����ł́A��ł���Tomcat1�ATomcat2��URL��ς��܂������A���ۂ̓��[�h�o�����T�[���܂߂��N���X�^�����O��g��ŁA�N���C�A���g����́A����URL�ł��̂܂������p�����Ă���悤�Ɍ�����悤�ɂ���ł��傤�B
�܂��A�uTomcat2�ő���ɏ������p���������Ƃɂ���v�ŁA��ł���URL��ς��āA�����Z�b�V�����������p�����̂�����URL(localhost)�Ŏ����Ă��邩��ŁA�ʂ�PC�ŒP���ɂ�����s�����ꍇ�́AURL���ς��̂ŁA�N�b�L�[���قȂ遨�Z�b�V����ID���قȂ�̂ŁA�Z�b�V�������͂Ђ����܂���B
�}�j���A���ɂ���悤�ɁATomcat�̃Z�b�V�������v���P�[�V�����́APersistenceManager�AJDBCManager�ASimpleTcpCluster���g���R�̕��@������܂����A�����ł͍Ō��SimpleTcpCluster���g�����@(�C���������̓]��)���s���Ă��܂��B
�܂��A���݂̃Z�b�V�������v���P�[�V�����́Aall-to-all �Ƃ����Z�b�V�����S���R�s�[�Ƃ����������g���Ă��܂��B���̕����́A�N���X�^�\���m�[�h��������ƁA�p�t�H�[�}���X�����ɂȂ�̂ŁA�����̃����[�X�ł͈قȂ�������T�|�[�g�����\��炵���ł��B5.0.18�ȍ~�ł̓Z�b�V�����Ƀo�C���h�����f�[�^�݂̂��]������܂��B
Tomcat�ŃN���X�^�����O�B�B�B���p�T�[�o�͂܂��܂����@�\�ȍ��ʉ������߂���悤�ɂȂ�܂��ˁB�Ƃ����Ă��ATomcat�̃N���X�^�́A�܂��������ꂽ����Ȃ̂ŁA���ۂɉ^�p�ŗ��p�ł���悤�ɂȂ�̂́A���������悩������܂���B���\�]�����Ă���T�C�g�Ȃǂ�����A��r�I�傫�ȃf�[�^�ł�����قǐ��\�͂Ȃ����ʂɂȂ��Ă܂����A����������ƌ����I�ȃV�i���I�Ŏ����Ă݂Ȃ��ƂȂ�Ƃ������Ȃ��C�����܂�(�Z�b�V�����ɑ傫�ȃf�[�^����ꂽ���ƁA���܂��܃Z�b�V�����o�C���h����悤�ȏꍇ�B�����Ŏ�������(�H)�B
���̓��[�h�o�����X���܂߂��\���������Ă݂����Ǝv���܂��B
IT Pro ��4�� �N���X�^�@�\�ŏ��pAP�T�[�o�[�ɔ���Tomcat�̐V��5
http://itpro.nikkeibp.co.jp/members/SI/oss/20031225/1/
��̍\���Ɉȉ���lj����܂��B
mod_jk2�͖{��Apache�ƃo�[�W���������낦��ׂ��ł�(�R���p�C������)���A�����ł̓o�C�i���łň�ԃo�[�W�������߂����̂��g���Ă��܂��B�����Ԃ͉ғ������Ă��Ȃ��ł����A�ꉞ���Ȃ������Ă܂��B�Ȃ��A�����o�b�͈��\���ł��B
��{�I��Apachet��Tomcat�A�g���@�ɂ��ẮA�����ł͐G��܂���B�ȉ��̃y�[�W���Q�l�ɂ��Ă��������B
http://www.atmarkit.co.jp/fjava/rensai2/jspservlet03/jspsevlet03_5.html
http://www.alles.or.jp/~torutk/oojava/sabbath/tomcatConnector.html
���Ƀ��[�h�o�����X�p�Ɏ�A�ݒ���s���܂��B
%Apache2%/conf/workers2.properties��ҏW���܂��BTCP�\�P�b�g�`�����l�����Q�ݒ肵�Ă��܂��B�Ȃ�apache����jkstatus��ʂ𗘗p�������̂ŁAuri�͑S��(/*)���w�肹���A�K����Web�A�v���̃p�X�Ȃ���w�肵�Ă��������B�����ł́A/servlets-examples/*���w�肵�Ă��܂��B
�|�[�g�́ATomcat��server.xml�Ŏw�肳��Ă���Connector�̃|�[�g�ł��B�����Tomcat�ł�8009(�f�t�H���g)�ŁA���������Tomcat�ł�18009���w�肵�Ă��܂��B
tomcat1��server.xml
tomcat2��server.xml
�Q��Tomcat���N��������AApache���N�����܂�(�ꉞ���̏������G���[�̏o�Ȃ�����)�BSessionExample(http://localhost/servlets-examples/servlet/SessionExample)�ȂǂɃA�N�Z�X���܂�(�ʂɉ��ł������ł�)�BApache�̓f�t�H���g��80�ԃ|�[�g�ŋN�����Ă���̂ŁA�A�N�Z�X����URL�̃|�[�g�ԍ��͏ȗ����Ă��܂��B
�u���E�U�ŁAhttp://localhost/jkstatus�ɃA�N�Z�X����ƁAmod_jk2�̏�\������܂��BSessionExample�ɃA�N�Z�X���邽�тɁA�Q��Tomcat�ɏ������U�蕪�����Ă����̂��킩��܂��B
�Ȃ��A���̐ݒ�ł́A�u���E�U�ŁA�A�N�Z�X���邽�тɂQ��Tomcat�ɋϓ���(���Ԃ�)����������U���Ă���̂��킩��Ǝv���܂��B�����lb_factor�̒l������(�f�t�H���g��1)������ł��Blb_factor���������قǗD��x�������Ȃ葽������������U����悤�ɂȂ�܂��B���̒l�́Aworkers.properties�Ŏw�肷�邱�Ƃ��o���܂��B
lb_factor��0���w�肵���ꍇ�A(Tomcat���牞�����������)�S�Ă���Tomcat�ɏ���������U���܂��B����́A�z�b�g�X�^���o�C�I�ȍ\���ɗ��p�ł��܂��B
�T�[�u���b�g�d�l�ł́A�����Z�b�V�����̃��N�G�X�g�̏����́A�����T�[�o�[��ŏ������邱�ƂɂȂ��Ă��܂��B�܂�A�����N���C�A���g����̃��N�G�X�g�͓����T�[�o�[�ɏ����z����킯�ł��B���̎d�l�́A�T�[�u���b�g�R���e�i�̃��[�h�o�����X�A�t�F�[���I�[�o�[�Ȃǂ̐v�A��������������̂ŁA�����N���C�A���g����قړ����̃��N�G�X�g�������ꍇ�Ȃǂɂ��Ώ����₷���Ȃ�܂��B���̃��N�G�X�g�̕��U�������Z�b�V�����A�t�B�j�e�B (�X�e�B�b�L�[�Z�b�V����)�ƌĂ��܂��B
���mod_jk2�̓���́A���Ԃɏ�����U�蕪���Ă���̂ŁA�Z�b�V�����A�t�B�j�e�B�ł͂���܂���B�Z�b�V�����A�t�B�j�e�B�Ȏd�g�݂Ń��[�h�o�����X���s���ɂ͎��̂悤�ɂ��܂��B
server.xml��Engine�v�f��jvmRoute�ɃN���X�^���Ń��j�[�N�Ȗ��O���w�肵�܂��B
tomcat1��server.xml
tomcat2��server.xml
server.xml�ɂ�<!-- -->���̐����L�q�ɂ��A���������L�q������̂ŁA�ԈႦ�ăR�����g�̒����������Ȃ��悤��(����ł��炭�Y�B�n���H)�B �ł����āAApache����workers2.properties��tomcatId(���jvmRoute�̒l)���w�肵�܂��B����ɂ��mod_jk2�������Z�b�V�������̃��N�G�X�g�͓���Tomcat�ɏ�����U�蕪���Ă���܂��B
Tomcat�n���h�u�b�N�@10�� �N���X�^�����O
������
��{�I��Apache + Tomcat�A�g
workers2.properties�̕ҏW
[status:]
[uri:/jkstatus/*]
group=status:
[shm:]
disabled=1
[channel.socket:localhost:8009]
[channel.socket:localhost:18009]
[uri:/servlets-examples/*]
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" debug="0"
protocol="AJP/1.3" />
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
<Connector port="18009"
enableLookups="false" redirectPort="8443" debug="0"
protocol="AJP/1.3" />
���s����
[channel.socket:localhost:8009]
lb_factor=1
[channel.socket:localhost:18009]
lb_factor=2
�Z�b�V�����A�t�B�j�e�B
<Engine name="Catalina" defaultHost="localhost" debug="0"
jvmRoute="tomcat1">
<Engine name="Catalina" defaultHost="localhost" debug="0"
jvmRoute="tomcat2">
[status:]
[uri:/jkstatus/*]
group=status:
[shm:]
disabled=1
[channel.socket:localhost:8009]
tomcatId=tomcat1
[channel.socket:localhost:18009]
tomcatId=tomcat2
[uri:/servlets-examples/*]
�Q�l
TOP