-->

 모바일 플랫폼의 한계

기존 운영정책 방식과 장애 대응 방식의 한계점

DevOps를 활용한 Lead Time 개선 : 사용자에게 변경사항이 전달하려면 다음 배포 일정에 도달

강제 업데이트 : 사용자 친화적인 UX가 아님

예외 사항 처리, Test Code : 외부 SDK, 단말별 이슈 등으로 모든 이슈에 대응하기 어려움

 

What is LiveOps?

네이버 앱의 철학과 이를 기반으로 생성된 LiveOps 솔루션

  • 더 좋은 서비스를 빠르게 알리고 delivery 할 수 있도록 한다.
  • 보다 안정적이고 최적화된 서비스를 운영할 수 있도록 한다.
  • 사용자를 더욱 이해하고 개별 요구 사항을 충족할 수 있도록 한다.

이벤트를 Hooking하여 config에 설정한 내용을 실행시킴.  특정 타겟층만을 설정하여 해당 타겟층의 반응을 살펴보고 운영 유지 여부 결정.

Firebase remote config에서 제공하는 NRC SDK라는 솔루션의 개선버전. 미리 앱에 코드를 심어줘야하는 NRC와 달리 네이버의 NCE는 미리 코드를 심어줄 필요가 없다.

 

LiveOps Flow

크게 위의 3가지 side가 존재.

 

Core SDK NRC(Naver Remote Config) NCE(Naver Codeless Event)
Fetch / Active Interface 제공
  • 서버를 통해 data fetch 및 local fetch/active 상태관리
Data Transmission
  • 서버에서 console 상에 세팅된 값을 json 포맷으로 SDK에 전달
  • 서버 트래픽 비용 절감을 위해 ETag기반의 서버캐시 운영
Targeting 전략
  • 앱에서 주입하는 다양한 정보를 기반으로
    환경 및 사용자 대상 targeting 지원
getConfig Interface 제공
  • getConfig 함수를 이용하여 콘솔을 통해 받아온
    특정 key 값에 대한 value 값 제공
Auto Hooking & strategy
  • Event를 hooking 하여 제공되는 전략 수행
Event Blocking & Counting
  • 전략 주입 시 기존 로직 실행여부를 optional하게 설정 가능
  • 전략 수행 횟수 설정 가능

위 요소들을 가지고 웹 UI Server에서 조건식 설정. 

 

NCE(Naver Codeless Event)

Bytecode instrumentation(바이트코드 계기화)은 실행 가능한 프로그램 코드(바이트코드)에 대한 동적 분석을 수행하는 기술.

프로그램이 실행될 때 바이트코드에 추가적인 코드를 삽입하여 프로그램의 동작을 분석하거나 수정하는 것을 의미 (Scavanger의 원리)

 

LiveOps 도입 효과 및 향후 계획

LiveOps를 활용한 배포 프로세스NCE Event Hokking 시점 추가 및 전략 추가NCE Network I/O 기능 강화

  • Feature 점진적 배포
  • Feature | Rollback 프로세스
  • A/B 테스트
  • Event 후킹 시점 추가
  • Event 후킹 시 활용 가능한 전략 추가
  • Network I/O Event 후킹시 전략 추가

'테크 행사' 카테고리의 다른 글

Microsoft X GitHub Roadshow 2023  (0) 2024.10.24
HashiCorp Strategy Day 2023  (4) 2024.10.24
오라클 밋업 - 올리브영 사례  (1) 2024.10.24
DEVIEW 2023  (1) 2024.10.18
INFCON 2022  (2) 2024.10.17

+ Recent posts