하정우(Jungwoo Ha)
직함: Senior Software Engineer
Google INC, USA
Java is supposed to be an easy-to-program language, and yet achieving good performance is notoriously difficult in production Cloud servers. Ironically, most of these Java performance problems are due to abnormal behavior of the garbage collector (GC), which makes Java easier than C++ for programmers but a nightmare for a cloud service maintainer. Examples of such behaviors are long GC pause, GC thrashing, high memory footprint. These problems are not obviously identified and these not only hurt the quality of Java services but also waste paid Cloud resources. This talk introduces these memory management issues on the Cloud, and explains how we improved it.
자바 언어는 C/C++에 비해서 쉬운 언어이어야 하지만 실제 클라우드 서비스에서 좋은 성능을 내기는 많은 문제들이 있습니다. 이런 문제들은 대부분 자바의 자동 메모리 관리에서 오는 문제입니다. 메모리 재활용기를 통해서 자바는 메모리를 자동으로 관리를 해주는데 프로그래머를 도와주는 이런 언어의 기능이 전문가 없이 풀기 힘든 다른 문제들을 클라우드에서는 양산을 합니다. 이런 문제들에는 재활용기로 인해서 서비스가 길게 중단되는 것부터 해서 재활용기가 서버의 자원을 다 써버리거나 프로그램 메모리의 크기가 너무 커져버리는 등의 문제들이 있습니다. 이런 문제들 원인을 찾는 것도 어렵지만 자바기반 서비스들의 품질을 유지하기 힘들고 클라우드 서비스를 이용하는 비용을 낭비합니다. 이 세미나에서는 이러한 메모리 관리 이슈들을 설명하고 우리가 어떻게 개선했는지 설명합니다.
Jungwoo Ha is a Senior Software Engineer at Google. He is a Technical Lead for Java performance and memory management mostly improving garbage collector performance and JIT compiler quality on cloud services. Before joining Google, Jungwoo worked at Intel Programming Systems Lab. Jungwoo received Ph.D. in CS at University of Texas at Austin, and B.S at SNU.