어디에나 있지만 어디에도 없는 LINE 게임의 분석 환경

안녕하세요. LINE에서 데이터 엔지니어로 일하고 있는 이명훈입니다. 빅데이터와 데이터 분석이라는 단어가 유행한 지도 꽤 오래 되었고, 이제 어떤 서비스든지 데이터 분석은 선택이 아닌 필수가 되었습니다. 모두 열심히 데이터를 수집하고 그 속에서 의미 있는 정보를 찾기 위해 노력합니다. 유의미한 정보를 찾기 위해서는 분석 환경이 필요한데요. 오늘은 LINE에서 게임의 분석 환경 구축과 관련하여 어떤 고민을 했는지 공유해 보고자 합니다.

MySQL performance-schema-instruments 사용에 따른 성능 영향 실험

안녕하세요. LINE에서 주로 MySQL 기반 DB 오퍼레이션, 각종 DB 관리 툴, 검증 툴 등을 개발하고 있는 Otsuka(tom__bo)입니다. 이번 글에서는 MySQL의 성능 정보를 얻을 때 이용하는 performance_schema 데이터베이스와 information_schema 데이터베이스의 innodb_metrics 테이블을 모두 활성화하면, MySQL 전체 성능이 어느 정도 나빠지는지 실험한 내용을 소개하겠습니다.

SETUP_INSTRUMENTS
ALL ‘ENABLED’ COLUMN
SETUP_INSTRUMENTS
ALL ‘TIMED’ COLUMN
ALL
INNODB_METRICS
TPS 모두 DEFAULT일 때
대비 TPS 비율
AVERAGE
LATENCY
COMMENT
NO NO DISABLED 3506.25 1.031 2.28 performance_schema와 innodb_metrics의 설정을 모두 비활성화한 상태
NO NO DEFAULT 3496.40 1.029 2.29 performance_schema의 instruments를 모두 비활성화한 상태
DEFAULT DEFAULT DISABLED 3391.85 0.998 2.36 innodb_metrics의 설정을 모두 비활성화한 상태
DEFAULT DEFAULT DEFAULT 3399.32 1.00 2.35 디폴트 설정
DEFAULT DEFAULT ENABLED 3389.69 0.997 2.36 innodb_metrics의 설정을 모두 활성화한 상태
YES DEFAULT DEFAULT 2906.15 0.855 2.75 performance_schema의 instruments를 모두 활성화한 상태
YES YES DEFAULT 2837.44 0.835 2.82 performance_schema의 instruments, TIMED를 모두 활성화한 상태
YES DEFAULT ENABLED 2908.34 0.856 2.75 performance_schema와 innodb_metrics의 설정을 모두 활성화한 상태
YES YES ENABLED 2825.31 0.831 2.83 performance_schema(TIMED도 활성)와 innodb_metrics의 설정을 모두 활성화한 상태

Agile + DevOps EAST 2018에 다녀왔습니다

저는 작년 11월, 미국 플로리다 올랜도에서 열린 Agile + DevOps EAST 2018에 다녀왔습니다. Agile + DevOps는 TechWell Corporation에서 주최하는 콘퍼런스 중 하나입니다. 콘퍼런스에선 어떻게 하면 안전하고 신뢰할 수 있는 소프트웨어 애플리케이션을 좀 더 빨리 사용자에게 전달할 수 있을지에 대한 내용을 다룹니다. 또한 그렇게 하기 위해 여러 기능의 이해 당사자들을 하나로 모을 수 있는 애자일과 DevOps 사례도 다룹니다.

TensorFlow.js: 웹 프론트엔드에서 머신러닝 활용하기

안녕하세요! LINE에서 프런트엔드 개발을 담당하고 있는 Jun입니다. 최근 프런트엔드 분야는 흥미로운 기술이 가득해서 전부 다 파악하는 게 힘들 정도인데요. 개인적으로 가장 관심이 가는 건 머신러닝입니다. 오늘은 웹 프런트엔드에서 머신러닝 활용하기를 주제로, TensorFlow.js를 사용해서 간단하게 머신러닝을 구현해 본 경험을 공유하겠습니다.

LINE의 OpenJDK 적용기: 호환성 확인부터 주의 사항까지

2018년 오라클의 라이선스 체계가 변경되면서 2019년 1월 이후 더 이상 무료로 Oracle JDK를 사용할 수 없게 되었습니다. 이에 LINE 내부에서는 사전에 OpenJDK를 적용하기 위해 필요한 사항이나 검토 항목을 정리하기 위하여 TF(task force)를 구성하였고, 진행된 내용과 사용된 기술적인 사항들을 정리하고자 이 글을 작성하게 되었습니다.

GitHub Pull Request가 자동으로 close되는 경우는?

LINE 개발 팀에서 서버 쪽 개발을 담당하고 있는 Ohara(@kory1202)입니다. 저희 팀은 PR(Pull Request)을 master 브랜치(branch)로 생성하는 방식으로 Git을 운영하고 있습니다. 이런 방식으로 Git을 운영하면 PR을 merge했을 때 다른 PR이 ‘자동으로 close되는 상황’이 발생하곤 했는데요. 정확히 어떤 조건에서 자동 close되는 것인지 확실히 알 수 없었습니다. GitHub Help > Closing a pull request를 읽어 보아도 원하는 답이 나오지 않더군요. 그래서 아예 직접 정리를 해보았습니다.

mitmproxy를 활용해 구글 애널리틱스 테스트 자동화하기

안녕하세요. LINE 대만에서 LINE TODAY 관련 자동화 QA 엔지니어로 일하고 있는 Edward와 Miki입니다. 이번 글에서는 LINE TODAY에서 웹사이트를 최적화하기 위해 사용하는 구글 애널리틱스(Google Analytics, GA)의 테스트 자동화 방법에 대해 알아보려고 합니다.