공부하고 기록하는, 경제학과 출신 개발자의 노트

학습일지 198

Naver Engineering Day 2023 - AI 경량화: 더 빠르고 저렴한 AI 서비스

AI 경량화: 더 빠르고 저렴한 AI 서비스 https://www.youtube.com/watch?v=NVNCPGWe5Ss Naver Biz CIC / AI Serving Dev Inference Latency 서버 부하 전력소모 효율 ... 모델의 아키텍처가 성능을 좌우하는데, 서비스 상황에 맞춰 아키텍처 자체를 실험적으로 바꾸며 최적값을 찾기 위한 작업은 어렵다. 아키텍처를 고정한 채, 효율성을 더 높이기 위한 삽질기. 실험에 사용한 조건 중 num_thread 고정 dynamic allocation에서 발생하는 속도차이 무시하기 위함. 같은 모델이라도 다소 느린 속도. 경량화 이론은 매우 어렵지만, 서비스 적용을 위한 코드 수정은 (이론에 비하면) 쉬운 편이다. AI 모델 트렌드는 '더 큰 모델, ..

학습일지/AI 2023.11.07

Kakao Tech Meet - 폭증하는 카카오톡 트래픽에 대처하는 방법

폭증하는 카카오톡 트래픽에 대처하는 방법 카카오톡 메인 화면에서 가장 중요한 탭은 1탭과 2탭.1탭: 친구 목록, 2탭: 채팅방톡메세징파트는 채팅서비스에서 크게 두 가지를 담당하고 있다.카카오 클라이언트의 로그인 관련 기능카카오 클라이언트에서 채팅방 진입, 메시지 동기화, 메시지 전송 등처리하는 메시지의 양평상시 낮 최고 트래픽은 초당 62만 건 정도메시지 전송만 보면 초당 4만 5천 건.트래픽 폭증 예시지진과 같은 자연재해대형 이벤트 - 신년 / 월드컵과 같은 큰 이벤트대응 실패하면 장애 발생. 카카오톡에서 장애 대응 시스템을 어떻게 만들어왔는지, 실제 서비스 장애가 있었던 사례와 함께 소개하고자 함.자동 대응 시스템 2016년 9월 경주 지진으로 인한 장애를 설명하려면, 백그라운드 로그인 기능을 설명..

Istio Memory 사용량 체크 - Knative Service 개수와 Sidecar Memory 관계 확인

Knative + Istio 조합한 Serverless Service에서 어느 날부터 Sidecar OOMKilled가 발생 배포한 knative service 개수는 큰 변화가 없고 k8s 클러스터 리소스도 충분히 여유가 있는데, istio sidecar가 Memory Limit을 초과해서 OOMkilled가 발생한다. 찾아보니 mesh에 포함된 workload 개수가 증가할수록 istio-proxy의 메모리 사용량이 증가하는 문제는 이미 잘 알려져 있었고, Sidecar CR을 사용해서 mesh가 관리할 workload를 namespace 또는 label selector 등을 사용해 제한하는 방식을 안내하고 있었다. https://medium.com/geekculture/watch-out-for-th..

AWS Cloud Solutions Architect - Introduction to Designing Data Lakes on AWS (3). Processing Data in the Data Lake

https://www.coursera.org/professional-certificates/aws-cloud-solutions-architect AWS Cloud Solutions Architect Amazon Web Services에서 제공합니다. Start here to become an AWS Solutions Architect. Gain the skills and knowledge to design architectural solutions on ... 무료로 등록하십시오. www.coursera.org Processing Data in the Data Lake Data Prep and AWS Glue Jobs Data Ingestion in raw format. 사용하고자 하는 목적에 맞게 da..

AWS Cloud Solutions Architect - Introduction to Designing Data Lakes on AWS (3). Ingesting the River

https://www.coursera.org/professional-certificates/aws-cloud-solutions-architect AWS Cloud Solutions Architect Amazon Web Services에서 제공합니다. Start here to become an AWS Solutions Architect. Gain the skills and knowledge to design architectural solutions on ... 무료로 등록하십시오. www.coursera.org Ingesting the River Use the right tool for the job Data categorizing: 필요할 때 원하는 데이터를 정확히 찾아내기 위해 필요함. 사용자의 ac..

AWS Cloud Solutions Architect - Introduction to Designing Data Lakes on AWS (3). AWS Data-related Services

https://www.coursera.org/professional-certificates/aws-cloud-solutions-architect AWS Cloud Solutions Architect Amazon Web Services에서 제공합니다. Start here to become an AWS Solutions Architect. Gain the skills and knowledge to design architectural solutions on ... 무료로 등록하십시오. www.coursera.org AWS Data Related Services 다양한 AWS Service를 일종의 모듈 개념으로 조합해서 Data Lake를 구성할 수 있다. 핵심 컴포넌트 위주로 먼저 보고, 해당 컴포넌트의 ..

AWS Cloud Solutions Architect - Introduction to Designing Data Lakes on AWS (3). Introduction to Data Lakes

https://www.coursera.org/professional-certificates/aws-cloud-solutions-architect AWS Cloud Solutions Architect Amazon Web Services에서 제공합니다. Start here to become an AWS Solutions Architect. Gain the skills and knowledge to design architectural solutions on ... 무료로 등록하십시오. www.coursera.org Introduction to Data lakes Data Lake가 필요한 대표적인 시나리오는 아래와 같다. 예컨대 startup의 System Administrator라고 가정해보자. 목표는 E..

AWS Cloud Solutions Architect - Architecting Solutions on AWS (2). Designing a solution following account governance and management best practice

https://www.coursera.org/professional-certificates/aws-cloud-solutions-architect AWS Cloud Solutions Architect Amazon Web Services에서 제공합니다. Start here to become an AWS Solutions Architect. Gain the skills and knowledge to design architectural solutions on ... 무료로 등록하십시오. www.coursera.org Customer #4 - requirements 모든 서비스가 하나의 AWS Account (prod account) 내에 구성돼 있음. divide big single account into s..

KubeCon 2020 - Kubernetes Leader Election for Fun and Profit

Kubernetes Leader Election for Fun and Profit Nick Young, VMware 소개할 내용은 세 가지 What is Leader Election & how do you implement Guides for using it Common Patterns What is Leader Election k8s는 API server에서 쓰는 leader election code를 사용자의 controller에서도 쓸 수 있게 지원하고 있다. Elect 1 instance as a leader. only 1 instance can make changes. 사용할 수 있는 기능으로는 write changes back = Controller Pattern 클러스터 외부에서 작업을 수행..

kubernetes Dynamic Informers with client-go

Watching Kubernetes custom resources with dynamic informers & golang https://youtu.be/fBY8sVVjM2s k8s Operator를 만들 때, CRD의 reconcile 로직을 적용하기 위해 Get / List Loop를 쓰는 경우가 있다. ineffective / slow way to find changes. 예컨대 리소스가 backoff 상태라면 Get / List 요청을 보내는 주기가 갈수록 느려진다. 리소스가 많을 경우 pagination 등... 고려할 것들이 늘어남 client go에서 제공하는 (shared) cache를 사용해서 보완하기도 함 위의 방식들보다 더 나은, InformerFactory를 사용해서 Watcher를..