본문 바로가기

서버운영 (TA, ADMIN)

(196)
[HTTP] HTTP/1.0 의미해석(2) - 고속화와 안정성 보호되어 있는 글입니다.
[HTTP] HTTP/1.0 의미해석(1) HTTP는 웹브라우저와 웹서버가 통신하는 절차와 형식을 규정한 것이다. HTTP는 웹브라우저로 웹페이지를 표시할 때 서버로부터 정보를 받아오는 약속이지만, 그 범위를 넘어서 번역 API나 데이터 저장 API 등 다양한 서비스의 인터페이스로도 사용되면서 인터넷의 기초가 되었다. - 1990년: HTTP/0.9 - 1996년: HTTP/1.0 - 1997년: HTTP/1.1 - 2005년: HTTP/2 이름 정식 명칭 역할/의미 IETF The Internet Engineering Task Force 인터넷의 상호 접속성을 향상시키는 것을 목적으로 만들어진 임의 단체 RFC Request For Comments IETF가 만든 규약 문서 IANA Internet Assigned Numbers Authorit..
[Nginx] nginx 정적 페이지 POST 활성화 방법 Nginx error_page redirect 설정 이용 nginx는 기본적으로 정적 파일로 POST 요청 처리를 허용하지 않는데, nginx 설정을 수정하여 POST 처리를 우회할 수 있다. 해당 site/domain을 위한 설정을 확인해보면, location 블록이 존재할 것이다. location / { error_page 405 =200 $uri; ... =200은 오타가 아니며, = 뒤에 공백을 추가하면 동작하지 않을 것이다. 위 설정은 405 응답도 200(OK) 응답으로 내려가도록 설정한 것이다. 웹서버를 다시 시작하기전에 구성이 올바른지 확인하려면 아래 명령을 실행하여, 문법이 올바른지 미리 확인해볼 수 있다. /usr/sbin/nginx -t 문법에 이상이 없음을 확인하면, nginx 서버..
[tomcat] 톰캣 메모리릭 문제 https://knight76.tistory.com/947 톰캣 메모리릭 문제에 대해서 많이 좋아질것으로 예상된다. 스프링소스의 개발자이며, 톰캣 Committer인 Mark Thomas에 의해 Memory Leak Protection 기능이 새로 생기게 되었다. 원래는 톰캣7부터 적용하려고 했는데, 톰캣 6.0.24부터 적용되었다고 한다. 6.0.25버전에서는 Memory leak 체크 api도 지원한다. Mark는 OOME가 발생하는 원인을 톰캣이 아닌 Jvm, library라고 언급하였고, 그 예는 다음과 같다고 한다. (1) Application, Library code에 의해서 발생 A. JDBC driver B. Logging framework C. ThreadLocal의 object를 저장하..
[Servlet] 서블릿 컨테이너와 스프링 컨테이너 https://minwan1.github.io/2017/10/08/2017-10-08-Spring-Container,Servlet-Container/ https://minwan1.github.io/2018/11/21/2018-11-21-jsp-springboot-%EB%8F%99%EC%9E%91%EA%B3%BC%EC%A0%95/ 서블릿 컨테이너는 개발자가 웹서버와 통신하기 위하여 소켓을 생성하고, 특정 포트에 리스닝하고, 스트림을 생성하는 등의 복잡한 일들을 할 필요가 없게 해준다. 컨테이너는 servlet의 생성부터 소멸까지의 일련의 과정(Life Cycle)을 관리한다. 서블릿 컨테이너는 요청이 들어올때마다 새로운 자바 스레드를 만든다. 우리가 알고 잇는 대표적인 Servlet Container가 T..