domain 없이 EC2 에 SSL 을 적용하기
domain 없이 EC2 에 SSL 을 적용하기 환경 : amazon linux 2 ec2 inbound group 설정 22번, 443번 port 를 열어줍니다. caddy 설치 yum -y install yum-plugin-copr yum -y copr enable @caddy/caddy epel-7-$(arch) yum -y...
domain 없이 EC2 에 SSL 을 적용하기 환경 : amazon linux 2 ec2 inbound group 설정 22번, 443번 port 를 열어줍니다. caddy 설치 yum -y install yum-plugin-copr yum -y copr enable @caddy/caddy epel-7-$(arch) yum -y...
(번역) 데이터베이스 락 사이의 차이점은 무엇일까요? 원본글 데이터베이스 관리에 있어서, 락은 데이터의 통일성과 일관성을 보장하기 위해서 데이터에 대한 동시 접근을 보호하는 메커니즘입니다. 원본글의 이미지를 참조해주세요 https://substackcdn.com/image/fetch/w_1456,c_limit,f_webp,q_auto...
(번역) 어떻게 Facebook 은 Memcached 를 사용해서 초당 수억건의 요청을 처리하는가 원본글 Facebook 규모로 소셜 네트워킹을 운영하기 위해서는 알아야 하는 2가지의 절대적인 사실이 있습니다. 첫 번째로, 서비스의 규모가 내려가서는 안됩니다. 둘째로, 서비스는 느려져서는 안됩니다. 이 두 요소는 사람들이 당신...
문제 해결 도구 jps: 가상 머신 프로세스 상태 도구 유닉스 ps 명령어에서 따온 jps 는 동작 중인 가상 머신 프로세스 목록을 보여준다. 다른 JDK 도구에서 모니터링할 가상 머신 프로세스를 명시하려면 LVMID 를 알아야 하는데, jps 를 사용해서 로컬 가상 머신 식별자(LVMID)를 알 수 있다. jps [options] [hosti...
자동 메모리 관리 자동 메모리 관리는 객체의 메모리를 자동으로 할당하고, 객체에 할당된 메모리를 자동으로 회수한다. 회수에 대해서는 앞선 글에서 다뤘다. 이 글에서는 객체 메모리 할당에 대해서 다뤄보겠다. 객체 메모리 할당은 객체를 힙에 할당하는 것을 뜻하며, 이는 명세에 의해 규정된 규칙이 아니라 각각의 가비지 컬렉터와 메개 변수 설정값에 따라서...
신세대 가비지 컬렉터 정리 신세대 가비지 컬렉터라 할 수 있는 ZGC 와 셰넌도어에 대해서 정리해보겠다. 가비지 컬렉터를 측정하는 가장 중요한 지표는 3가지이다. 지연 시간 처리량 메모리 사용량 이 3가지를 모두 충족하는 완벽한 컬렉터는 없으며, 일반적으로 좋은 컬렉터는 3가지 중 2가지의 기준을 충족할 것이다. 요즘에는 이 3가지...
구세대 가비지 컬렉터 정리 시리얼 컬렉터, 파뉴 컬렉터, 패러랠 스캐빈저 컬렉터, 시리얼 올드 컬렉터, 패러랠 올드 컬렉터, CMS 컬렉터, G1 컬렉터로 총 7개가 있다. 시리얼 컬렉터 가장 기초적이고 오래된 컬럭터다. 단일 스레드로 동작하며, 가비지 컬렉션이 시작되면 회수가 완료될 때까지 다른 모든 작업 스레드가 멈춰 있어야 한다. 효율적이라...
가비지 컬렉션 알고리즘 객체의 생사를 판별하는 기준으로 가비지 컬렉션 알고리즘은 ‘참조 카운팅 GC’와 ‘추적 GC(도달 가능성 분석 알고리즘 사용)’로 나눌 수 있다. 각 방법에 대해서는 앞선 글에서 설명했으니 넘어가겠다. 현대 주류 자바 가상 머신은 추적 GC 알고리즘을 사용한다. 세대 단위 컬렉션 이론 현재 상용 가상 머신들이 채택한 가비지...
가비지 컬렉션의 원리 가비지 컬렉션이 처리해야 하는 문제는 3가지다. 어떤 메모리를 회술할 것인가 언제 회수할 것인가 어떻게 회수할 것인가 높은 동시성을 달성하는데 가비지 컬렉션이 방해가 되는 상황이 온다면, 자동화된 기술을 적절히 모니터링하고 조율할 수 있어야 한다. 참조 카운팅 알고리즘 객체가 살아 있는지 판단하기 위해서 사...
핫스팟 가상 머신에서 객체 들여다보기 객체 생성 가상 머신 수준에서는 어떤 과정을 거쳐 객체가 생성될까. 자바 가상 머신이 new 명령에 해당하는 바이트코드를 만나면, 이 명령의 매개 변수가, 클래스 파일 내의 상수 풀에 존재하는지 확인한다. 즉, 명령어가 가리키는 참조가 올바른지, 참조가 이미 로딩, 해석, 초기화된 클래스인지 확인한다. 로딩이...