본문 바로가기

서버운영 (TA, ADMIN)/미들웨어

(35)
[톰캣] 세션 클러스터 휘발성 영역인 JVM 메모리 내에 세션 객체가 생성되어 있을때 Tomcat이 중지한다면, 메모리 내에 생성되어 있던 모든 세션은 제거된다. Tomcat 인스턴스를 다중화하더라도 특정 Tomcat 인스턴스가 중지한다면 그 Tomcat 내의 세션은 모두 사라지게 된다. 세션을 통해 구현한 범위에 따라 영향도가 달라지나, 흔히 로그인을 다시 해야한다는 등의 상황이 벌어진다. 이러한 문제를 해결하기 위해 세션 클러스터를 사용한다. 동일 업무를 처리하는 여러 인스턴스를 하나의 클러스터 그룹으로 묶으면 멤버들은 자신이 생성하고 변경한 세션 정보를 다른 인스턴스와 공유한다. 갑자기 장애가 발생하여 특정 멤버가 중지하더라도 여전히 다른 인스턴스에서 세션을 가지고 있기 때문에 사용자 세션은 유지된다. 단, 세션 클러스터..
[톰캣] 아파치톰캣 알아보기(2) - Connector 속성 Shutdown 포트를 제외한 HTTP, HTTPS, AJP 포트는 Connector 속성에 의해 관리된다. address, port한 호스트 내에서 여러 IP address를 사용하고 있다면 address 속성을 통해 특정 IP address만 listen하도록 설정할 수 있다. 기본 설정 값은 0.0.0.0으로 모든 IP address가 listen한다. o.a.tomcat.util.net.JIoEndpoint 클래스의 bind 메서드를 통해 BIO 방식 Connector의 소켓 생성에 대해 알아본다. @Override public void bind() throws Exception { ... 생략 ... if (serverSocket == null) { try { if (getAddress() ==..
[톰캣] 아파치톰캣 알아보기(1) Apache HTTP Server를 배치하는 경우 Tomcat Connector(mod_jk)를 통해 연결하는 것을 전제로 한다. nginx와 같은 웹서버 제품과 연결하여 구성할 수도 있다. Tomcat은 웹 애플리케이션 서버이면서 하나의 자바 애플리케이션이다. Tomcat을 기동하기 위해서는 JRE(Java Runtime Environment)환경에서 JVM상 o.a.catalina.startup.Bootstrap 클래스를 실행해야 한다. 컨트롤러 기기란? yum(Yellowdog updater, Modified): 레드햇 계열 리눅스 패키지 관리 도구 apt(Advanced Packaging Tool): BSD 계열 리눅스 등에 포팅된 패키징 툴 32bit 자바의 최대 사용 가능 메모리를 2^32(4..
[톰캣] 포트와 커넥터 Tomcat이 사용하는 포트는 총 4개로 각각 HTTP, HTTPS, AJP, 그리고 Shutdown 포트이다. 그런데 각 프로토콜이나 기능을 사용하지 않는다면 해당 포트는 설정하지 않아도 된다. 예를 들어 보안 통신 기능을 사용하지 않으면 HTTPS 포트는 설정하지 않는다. 또한 Apache HTTP Server 없이 Tomcat 단독으로 사용한다면 AJP 포트 설정이 필요 없다.
[Nginx] Building an API Gateway with Lua and Nginx Nginx_with_lua https://yos.io/2016/01/28/building-an-api-gateway-with-lua-and-nginx/ API_Gateway_Pattern https://microservices.io/patterns/apigateway.html lua-nginx-module https://github.com/openresty/lua-nginx-module Lua 5.1 Reference http://www.lua.org/manual/5.1/manual.html The various *_by_lua, *_by_lua_block and *_by_lua_file configuration directives serve as gateways to the Lua API within ..