Seonb2n

함께 자라기 애자일로 가는길 후기

함께 자라기 애자일로 가는길 후기입니다. 며칠 전에 이런 아티클을 봤습니다. 박정욱 위시켓 프론트팀 개발 리더 인터뷰 이 글을 읽으니, 나는 개발자로서 어떤 메타인지를 갖고 있는지에 대해서 생각을 해봤습니다. 회사에서는 더 좋은 제품을 만들기 위해서 적극적으로 개선할 지점을 찾는 사람 팀원들과 유대감 형성을 위해서 스몰토크를 즐...

K6 를 활용한 웹소켓 부하 테스트

K6 를 활용한 웹소켓 부하 테스트 이런 말이 있습니다. “나를 죽이지 못하는 고통은 나를 더 강하게 만든다.” - 프리드리히 니체 견고한 소프트웨어를 만들기 위해서는 부하 테스트를 통해서 약점을 찾아야 합니다. 롱쿼리, 병목이 되는 응답 등을 여러 시나리오를 통해서 발견하고, 개선할 수 있어야 합니다. ubuntu 환경에서 docke...

JVM 시리즈 - 최적화 사례 분석 및 실전

최적화 사례 분석 및 실전 대용량 메모리 기기 대상 배포 전략 관리자는 -Xmx 와 -Xms 매개 변수를 지정해서 자바 힙 크기를 12GB 로 고정했다. 그러나, 서버 실행 효율이 기대 이하였다. 원인은 가비지 컬렉션에 있었다. 패러렐 컬렉터를 사용하고 있었는데, 패러렐 컬렉터는 일시 정지 시간보다 처치량에 중점을 두었기에 12G 라는 힙 메모리를...

(번역) 어떻게 Facebook 은 Memcached 를 사용해서 초당 수억건의 요청을 처리하는가

(번역) 어떻게 Facebook 은 Memcached 를 사용해서 초당 수억건의 요청을 처리하는가 원본글 Facebook 규모로 소셜 네트워킹을 운영하기 위해서는 알아야 하는 2가지의 절대적인 사실이 있습니다. 첫 번째로, 서비스의 규모가 내려가서는 안됩니다. 둘째로, 서비스는 느려져서는 안됩니다. 이 두 요소는 사람들이 당신...

JVM 시리즈 - 메모리 할당 전략

자동 메모리 관리 자동 메모리 관리는 객체의 메모리를 자동으로 할당하고, 객체에 할당된 메모리를 자동으로 회수한다. 회수에 대해서는 앞선 글에서 다뤘다. 이 글에서는 객체 메모리 할당에 대해서 다뤄보겠다. 객체 메모리 할당은 객체를 힙에 할당하는 것을 뜻하며, 이는 명세에 의해 규정된 규칙이 아니라 각각의 가비지 컬렉터와 메개 변수 설정값에 따라서...

JVM 시리즈 - 신세대 가비지 컬렉터의 종류

신세대 가비지 컬렉터 정리 신세대 가비지 컬렉터라 할 수 있는 ZGC 와 셰넌도어에 대해서 정리해보겠다. 가비지 컬렉터를 측정하는 가장 중요한 지표는 3가지이다. 지연 시간 처리량 메모리 사용량 이 3가지를 모두 충족하는 완벽한 컬렉터는 없으며, 일반적으로 좋은 컬렉터는 3가지 중 2가지의 기준을 충족할 것이다. 요즘에는 이 3가지...

JVM 시리즈 - 구세대 가비지 컬렉터의 종류

구세대 가비지 컬렉터 정리 시리얼 컬렉터, 파뉴 컬렉터, 패러랠 스캐빈저 컬렉터, 시리얼 올드 컬렉터, 패러랠 올드 컬렉터, CMS 컬렉터, G1 컬렉터로 총 7개가 있다. 시리얼 컬렉터 가장 기초적이고 오래된 컬럭터다. 단일 스레드로 동작하며, 가비지 컬렉션이 시작되면 회수가 완료될 때까지 다른 모든 작업 스레드가 멈춰 있어야 한다. 효율적이라...