성능은 진단 결과에 따라 드라마틱하게 향상되기도 하지만, 최적화에 투자한 시간 대비 미미한 결과를 나타내기도 한다. 이로 인해 튜닝을 보다 명확하게 진단해 낼 수 있는 다양한 백서를 출간하고, 전문 조직을 통해 대비하는 것이 일반적이다. 이번 포스팅에서는 성능 최적화를 위해 다루는 여러 분야들 중 OS Kernel Parameter 특히 tcp parameter에 대해 알아보도록 하자. 현재 amazon linux 기준 parameter로 관리되는 항목은 [root@ip-192-168-84-159 ~]# sysctl -a | wc -l 955 [root@ip-192-168-84-159 ~]# sysctl -a | grep "net.ipv4.tcp" | wc -l 75 [root@ip-192-168-84-..
본 포스팅은 WEB Server 설치 시 권고 파라미터에 대해 알아보겠습니다.WEB Server 설치 시 OS Kernel 권고 Parameter에 대해 살펴보겠습니다. 파라미터설명권고값net.ipv4.tcp_keepalive_intvlTCP TIME_WAIT 상태를 줄이기 위한 설정15net.ipv4.tcp_keepalive_probes손실된 TCP 상태 감지 시간 설정5net.ipv4.tcp_keepalive_timekeep alive 시간을 설정30net.ipv4.ip_local_port_range사용할 수 있는 포트 범위를 설정1024 - 65000net.core.netdev_max_backlog백로그에 들어오는 소켓 개수를 설정2500net.ipv4.tcp_retries1TCP 연결에 문제가 있..
본 포스팅은 오픈소스 APM Tool인 Scouter를 설치하고 WildFly와 연동하는 가이드입니다. Scouter는 "개발자를 위한 APM"이라는 목적에 맞게 어플리케이션 성능을 모니터링 할 수 있는 자유도가 높은 툴 입니다.먼저, Scouter는 아래와 같은 모듈들로 구성됩니다. Modules 설명 Server (Collector) Agent가 전송한 데이터 수집/처리 Host Agent OS의 CPU,Memory,Disk 등의 성능 정보 전송 Java Agent 실시간 서비스 성능 정보와 Heap Memory, Thread 등의 Java 성능정보 Client (Viewer) 수집된 성능 정보를 확인하기 위한 Client 프로그램 각 서버에 설치된 Scouter의 Agent들이 성능 데이터를 Col..
본 포스팅은 Apache에서 다중프로세스를 기동하여 사용하는 가이드입니다. 기존 설치되어있는 Apache에서 다중프로세스를 기동할수있도록 설정하도록 하겠습니다.한대의 Apache 설치만으로 다중 Apache 프로세스를 띄우고자 할때는 아래와 같은 설정이 필요합니다.A. 각 프로세스의 Port 설정B. 각 프로세스의 pid 파일이 생성되는 디렉토리 설정 C. 각 프로세스가 참조하는 설정파일 필요-httpd.conf ( +내부에서 참조되는 설정 파일 또는 로그경로는 모두 프로세스별로 달라야합니다.) 그럼 진행하도록 하겠습니다. * 시나리오-Apache 버전 : httpd-2.4.34-프로세스별 구성은 아래와 같습니다. 프로세스명 Port PidFile 설정파일명 httpd1 80 run/httpd1.pid$..
본 포스팅은 Apache에서 SSL을 적용하는 가이드입니다. 기존 설치되어있는 Apache에서 SSL 인증서를 만들고, 적용하여 HTTP>HTTPS로의 Rewrite를 테스트해보도록 하겠습니다. Apache 웹서버에 SSL를 적용하기 위해 아래 두 항목이 웹서버에 설치되어 있어야 합니다. - Openssl 암호화 라이브러리 - Mod_ssl 모듈 위 두 항목이 웹서버에 설치되어 있다면 개인키를 생성하고 생성된 개인키를 바탕으로 CSR 파일을 생성합니다. 생성된 CSR 파일을 공식 인증기관에 접수하여 정식 인증서를 발급받습니다. 발급된 인증서를 웹서버에 설치하게 되면 SSL 설정을 완료하게 됩니다. 위 일련의 진행사항은 아래와 같은 절차를 따르게 됩니다. 1. openssl 라이브러리 설치상태 확인 2. ..
본 포스팅에서는 WildFly와 외부캐시서버와의 연동을 통한 세션클러스터링테스트를 진행합니다.WildFly에서는 Infinispan과 Jgroups 오픈소스를 하위 모듈로 활용하여, 세션 클러스터링 기능을 지원합니다. 이번 포스팅에서는 8Grid라는 외부캐시 솔루션과 WildFly를 연동해보고, 직접 세션 클러스터링 테스트를 해보도록 하겠습니다. 구성은 아래와 같습니다. -8grid-Apache http server -WildFly standalone1-WildFly standalone2 (*standalone1과 standalone2는 물리적으로 다른 서버에 위치합니다. ) 1.8grid 바이너리를 설치합니다.(사전에 컴파일, 빌드가 필요할 수 있습니다.) 2.8grid내의 session.xml 수정(..
본 포스팅에서는 Apache (httpd-2.4.34) 설치를 해보겠습니다. 앞으로 httpd-2.4.X 버전부터는 apr과 apr-util,pcre 를 별도로 설치하여야 apache 설치가 완료됩니다. APR(아파치 포터블 런타임)는 아파치 HTTP 서버 2.x.의 핵심이며 휴대용 라이브러리입니다. 이런 APR은 고급 IO 기능(예:sendfile, epoll and OpenSSL 등)에 대한 접근을 포함하여 OS 수준의 기능 (난수 생성, 시스템 상태), 그리고 기본 프로세스 처리(공유 메모리, NT 파이프와 유닉스 소켓) 등 많은 용도로 사용되고 있습니다. PCRE( Perl Compatible Regular Expressions )는 펄 호환 정규 표현식으로서, 정규식 패턴 일치를 구현하는 함수의..
본 포스팅에서는 WildFly의 datasouce 연동방식(Thin,OCI)에 대해 알아보겠습니다. 각 DB벤더사에서는 4가지 종류의 JDBC Driver가 있습니다. 그중에서도 Type2와 Type4형태의 Driver를 많이 제공합니다. Type2 Driver란, Oracle로 이야기한다면 Sql*Net을 필요로 하며, .dll또는 .so형태의 H/W 종속적인 Native Module을 통해서 DB와 연결합니다. Oracle의 경우, JDBC Type2형태를 OCI(Oracle Call Interface) Driver라고 부릅니다. Type4 형태의 JDBC Driver는 순수하게 Java package만으로 바로 DB연결이 가능합니다. Oracle의 경우, JDBC Type4형태를 Thin Drive..
본 포스팅에서는 JBoss Thread Pool 설정에 대해 알아보겠습니다.Thread Pool의 장단점에 대해 알아보고, Jboss 6 버전을 기반으로 제공하고 있는 다양한 Thread Pool 설정방식에 대해 살펴보겠습니다. 먼저 Thread Pool은 왜 사용해야할까요? Thread pool이라는것은 일정 갯수의 Thread를 두고, 만약 작업할 일이 생긴다면 대기상태인 Thread가 있는지 보고, 있다면 그 쓰레드로 작업을 처리한 후 다시 대기상태로 전환할수 있도록 만들어놓은 영역이라고 생각하면 됩니다. JAVA에서 Thread pool을 사용하는 이유는, 아래와 같습니다.- 성능저하를 방지하기 위해 : 매번 발생되는 작업을 동시에 병렬적으로 처리하기 위해서는 Thread를 생성하고 / 수거해야하..
본 포스팅은 Client의 연결 Timeout 값 설정이 WebtoB 버전에 따라 다르게 적용되는 부분에 대해 테스트를 통해 동작 원리를 알아보겠습니다. WebtoB 버전 별 Timeout 동작 방식 1. 기능설명 1.1. WebtoB Timeout 사용자가 연결한 소켓에서 데이터를 읽거나 쓸 때 적용하는 타임아웃을 설정한다. 사용자 요청을 처리하고 있을 때 적용되는 설정이며, 해당 시간 동안 사용자가 소켓에 데이터를 쓰지 않거나 소켓으로부터 데이터를 읽지 않는 경우 해당 소켓을 닫는다. 1.2. JEUS request-prefetch WebtoB request prefetch 기능이 true면 현재 처리하는 WebtoB request외에 1개의 다음 WebtoB request를 미리 받아 request..
- Total
- Today
- Yesterday
- 오픈스택
- git
- Architecture
- JEUS7
- k8s
- kubernetes
- aws
- jeus
- MSA
- node.js
- 쿠버네티스
- SWA
- openstack tenant
- 마이크로서비스 아키텍처
- TA
- apache
- nodejs
- OpenStack
- openstack token issue
- 마이크로서비스
- wildfly
- webtob
- 아키텍처
- Docker
- aa
- JBoss
- API Gateway
- Da
- JEUS6
- SA
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |