NAVER 오픈소스 세미나 - Performance does matter


안녕하십니까. 오늘 네이버 D2 세미나에 다녀와서 포스팅을 합니다.
해당 세미나에서는 APM을 다루는 오픈소스들에 대하여 공유 하는 자리 입니다.
영어 듣기 실력이 좋지 않아서.. 영어 세미나는 듬성듬성 들은것 같습니다.
네이버 핀포인트 측에서 이참에 외국 개발자도 초청하고 했다고 합니다.
제가 다니는 회사에서는 DevOps를 해주는 팀에서 자체적으로 개발한듯 한데 제 입장에서 회사 코드랑 비교하면서 공부하면 많이 배울듯 합니다.

Key Note - Overall Pinpoint - 강운덕 (NAVER)
연사분은 네이버에서 핀포인트를 담당하는 Founder.
  • 핀포인트의 현황 (네이버)
    • 만여대의 에이전트
    • 87만 TPS -> 네이버의 
  • 준비하는 기능
    • 멀티 언어 지원
      • RPC 레이어가 여러가지 문제가 있음.
      • 몇몇 언어는 멀티 쓰레드가 안됨. php 파이썬 노드 루비 → 그래서 C로 변경
      • Transport Layer를 gRPC로 변경 예정
    • istio/envoy 오픈 트레이싱
    • Node JS Agenct
Apache SkyWalking - APM supports traditional distributed system and Cloud Native stack - Wu Sheng (Leader of Project Skywalking, Tetrate)

Apache SkyWalking은 분산 어플리케이션 성능 모니터링 시스템 Observability Analysis Platform
Receiver : gRPC에 조음. Zipkin, Jaeger 포멧
Analysis Core : Streamimg Distributed Computing Engine
Object Oriented Analysis
 - Service
 - Service Instance
 - Endpoint
GraphQL
동영상 링크 : https://www.youtube.com/watch?v=JC-Anlshqx8
-> 위에서 나오는 UI는 누군가가 쓰라고 기여했다고 함.
  • What’s new in Zipkin - Adrian Cole (Leader of Project Zipkin, Pivotal)
    • 세션 요약
      • Zipkin is a distributed tracing system originally developed at Twitter, but carried on by the OpenZipkin team since 2015. After a short introduction, we'll cover highlights of the last 4 years of Zipkin.
    • 연사 소개: Adrian works at Pivotal, on the Spring Cloud team. He spends most on Zipkin, usually in Java.

  • Pinpoint를 이용해서 서버리스 플랫폼 Apache Openwhisk 트레이싱하기 - 오승현 (NAVER)
    • 세션 요약
      • 네이버 서비스에서 사내 서버리스 플랫폼까지 흘러가는 트랜잭션을 추적하고 분석하기 위해 개발한 Pinpoint의 Apache Openwhisk 플러그인과 그 개발 과정을 소개합니다.Apache Openwhisk는 서버리스 플랫폼을 구축할 수 있는 오픈소스 프로젝트로 스칼라 언어와 Akka 라이브러리를 사용한 Actor 모델에 기반하고 있습니다. 스칼라 언어로 작성된 애플리케이션을 위한 Pinpoint 플러그인을 만들면서 겪었던 문제들과 해결했던 과정들을 위주로 설명드릴 예정입니다.
    • 연사 소개: 네이버에서 Serverless 플랫폼을 개발하고 있으며, 다양한 오픈소스 프로젝트에 관심이 많습니다.Apache Openwhisk contributor로 활동하면서, Openwhisk 기반 서버리스 플랫폼의 트레이싱을 위한 Pinpoint 플러그인을 개발하고 컨트리뷰션을 진행하고 있습니다.
    • 내용 : 서버리스에서 핀포인트로 tracing 을 하려니 안된다고 함. pinpoint에서 스칼라를 지원하지 않지만 오픈위스크가 스칼라로 개발이 되어 있음. 
  • Scaling Distributed Tracing - Sample / Drop / Discriminate / Delay / Decay - William Louth (Instana/Autoletics)
    • 세션 요약
      • A talk discussing the various approaches to scaling the measurement, data collection, and recording of distributed traces along the pipeline from the point of instrumentation to the storage of a trace record. It will challenge attendees to (re)consider the cost-benefit of analysis of what a trace is today, and what it might look like in the future.
    • 연사소개: A founder of Autoletics and experienced systems engineer with particular expertise in self-adaptive software runtimes, application performance monitoring and management as well as cost execution optimization and scalability engineering and more...
  • 비용 효율화 : Pinpoint의 Heterogeneous Storage 적용 - 정민우 (NAVER)
    • 세션 요약
      • HDFS 사용시 HDD 클러스터의 느린 처리속도나 SSD 클러스터의 고비용이 문제라면, Heterogeneous Storage로 비용과 속도간의 균형을 맞출 수 있습니다.이 세션에서는 Pinpoint에 Heterogeneous Storage를 적용해서 비용을 줄이고 처리 속도를 개선한 사례를 공유합니다.
    • HDFS는 서로 다른 종류의 저장소에 대하여 고르게 데이터를 분산하여 저장을 함. 각 디스크는 특징이 다르므로 Heterogeneous Storage의 기능을 통해서 서로 다르게 저장을 할 수 있음. HDFS뿐 아니라 HDFS위에 올라가는 에코 시스템에서도 적용 가능하고 각 시스템마다 설정이 있으면 적절히 튜님.
    • SSD 서버에는 자주 사용되는 데이터, HDD 서버에는 Cold 데이터를 넣으면 절약.
    • 코드 수정이 필요 없고 무정지로 설정 변경 가능.
    • 비용 절감 data locality 상승 Data Compaction 시간 상승
    • One Copy만 SSD로 채워서 성능을 최대로 하는게 목표.
  • Rxjs가 있었기에 가능했던 Pinpoint UI 개발기 - 김동빈 (NAVER)
    • 세션 요약
      • 웹 어플리케이션의 핵심은 컴포넌트(요소)간의 상태 전달 및 공유입니다.본 발표에서는 요즘 웹 개발분야에서 제일 핫한 라이브러리 중 하나인 Rxjs를 Pinpoint의 각 페이지들에서 어떻게 활용하여 컴포넌트 간 통신을 구현했는지, 그리고 Rxjs의 활용이 신규개발/유지보수에서 어떤 도움이 되었는지 이야기합니다.
    • 연사 소개: Pinpoint front-end engineer since 2017, pursuing simple yet solid user experience.

댓글

이 블로그의 인기 게시물

포켓몬 고 17셀 확인 포고맵 사용 방법

HTTP 오류 500.19 - Internal Server Error 에러 처리법

고려대학교 야간대학원 중간 후기