세션 공유

WBOY
풀어 주다: 2016-07-30 13:30:09
원래의
1267명이 탐색했습니다.
Tomcat의 동시성 병목 현상 문제로 인해 Tomcat을 사용하는 거의 모든 웹 애플리케이션에는 세션 비동기화 문제가 있다고 할 수 있습니다. 저도 인터넷 정보를 바탕으로 실험해 보는 시간을 가졌습니다. 이 글에 포함된 소프트웨어 다운로드 및 설치는 하나씩 건너뛸 예정이니 읽어보실 필요는 없을 것 같습니다. 참고: 이 기사에서는 memcached 및 redis에 대해 말로 토론하지 않습니다. 모든 네티즌이 Google과 Du Niang에게 직접 물어보기를 바랍니다. (제 생각에는 소프트웨어로서 많은 지지자를 얻을 수 있습니다. 나름대로의 장점도 있을 것입니다. 실제 필요에 따라 자신에게 맞는 것을 선택하는 것이 핵심입니다. )1. nginx+tomcat+memcached(종속성 패키지 다운로드)

1.memcached 구성: (v1 .4.13 )

노드 1(192.168.159.131:11444)

노드 2(192.168.159.131:11333)

2.tomcat 구성

tomcat2 (192.168.159.128:8082)

3.nginx는 192.168.159.131에 설치됩니다.

먼저 세션을 memcached에 저장하도록 tomcat을 구성합니다. 두 가지 방법이 있습니다:

방법 1: server.xml에서 구성합니다. 호스트 노드를 찾아

방법 2: context.xml에 구성합니다.  
Context 노드를 찾아

추가합니다. 둘째, 세션이 계속 공유되는지 테스트하도록 nginx를 구성합니다.

마지막으로 두 개의 tomcat에 애플리케이션을 넣고 memcached, tomcat, nginx를 차례로 시작합니다. nginx에 액세스하면 두 Tomcat의 세션이 계속 공유될 수 있음을 알 수 있습니다. upstream  xxy.com  {       server   192.168.159.128:8081 ;       server   192.168.159.128:8082 ; } log_format  www_xy_com  '$remote_addr - $remote_user [$time_local] $request '                '"$status" $body_bytes_sent "$http_referer"'                 '"$http_user_agent" "$http_x_forwarded_for"'; server {       listen  80;       server_name  xxy.com;       location / {                proxy_pass        http://xxy.com;                proxy_set_header   Host             $host;                proxy_set_header   X-Real-IP        $remote_addr;                proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;       }       access_log  /data/base_files/logs/www.xy.log  www_xy_com; }

2. nginx+tomcat+redis(종속성 패키지 다운로드)1.redis 구성( 192.168.159.131:16300) (v2.8.3) 2.Tomcat 구성 tomcat1 (192.168.159.130:8081) tomcat2 (192.168.159.130 : 8082)

3.nginx는 192.168.159.131에 설치됩니다.

먼저 세션을 Redis에 저장하도록 Tomcat을 구성합니다. server.xml 또는 context.xml에도 구성되는 두 가지 방법이 있습니다. 차이점은 memcached는 관리자 태그만 추가하면 되는 반면, redis는 다음 콘텐츠를 추가해야 한다는 것입니다. (

참고: 밸브 태그는 반드시

)

두 번째로, 테스트 세션을 계속 공유하도록 nginx를 구성합니다.

마지막으로 두 개의 tomcat에 애플리케이션을 넣고 redis, tomcat, nginx를 차례로 시작합니다. nginx에 액세스하면 두 Tomcat의 세션이 계속 공유될 수 있음을 알 수 있습니다.

upstream  redis.xxy.com  {       server   192.168.159.130:8081;       server   192.168.159.130:8082; } log_format  www_xy_com  '$remote_addr - $remote_user [$time_local] $request '                '"$status" $body_bytes_sent "$http_referer"'                 '"$http_user_agent" "$http_x_forwarded_for"'; server {       listen  80;       server_name redis.xxy.com;        location / {                proxy_pass        http://redis.xxy.com;                proxy_set_header   Host             $host;                proxy_set_header   X-Real-IP        $remote_addr;                proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;       }       access_log  /data/base_files/logs/redis.xxy.log  www_xy_com; }에서 설명해야 할 한 가지는 다음과 같습니다.

Tomcat 구성이 그런 다음, 관리자를 server.xml에 넣은 다음 Maven을 사용하여 핫 배포를 수행하면 오류가 발생합니다. 따라서 context.xml에 배치하는 것이 좋습니다. 위에서는 세션 공유에 대한 내용을 소개했으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿