[대규모 시스템 설계] 5장. 안정(일관성 있는) 해시 설계
·
Reference/대규모 시스템 설계
1. 수평적 규모 확장에서 고려할 점 📌 수평적 규모 확장 (Horizontal Scaling, Scale-Out)수평적 규모 확장성을 달성하기 위해서는 요청 또는 데이터를 서버에 균등하게 나눌 수 있어야 한다.클라이언트의 요청이 쏟아질 때, 일부 서버에 요청이 몰리지 않게 균등하게 분배해야 한다.데이터들이 균등하게 서버에 배치되어, 한 곳에 부하가 걸리지 않도록 유지해야 한다. 따라서 이번 논제는 "서버의 규모 확장성을 고려한 해시키 설계 방법"이 되겠다. (수직/수평적 규모 확장의 개념은 1장에서 다뤘음) 📌 이상적인 환경에서 key 설계 방법N개의 캐시 서버가 있을 때, 가장 쉽게 키를 설계하는 방법은 serverIndex를 다음과 같이 설정하는 것이다.serverIndex = hash(key)..
[FastAPI] 알리바바 클라우드 Qwen API와 FastAPI 연동
·
Backend/FastAPI
1. Introduction 📌 뻘글주위에 AI 연구하는 사람들이 본인들만 재밌는 거 하는 게 심술이 나서 나도 써보고 싶어졌다.(또 자기네들만 재밌는 거 하지.) 그런데 차마 fine-tuning까지는 못 해먹겠고, few-shot learning으로 우선 만족하기로 했다.나중에 진짜 사용자가 생기면, prompt를 개선하든 fine-tuning을 하든 발전시키는 게 이롭다고 생각. 처음에는 deepseek 오픈소스 데려와서 사용하고 있었는데, 국내에서 차단 당해버렸다.그래서 다른 거 뭐 있나 찾다가, Qwen을 사용하기로 결정했다. 문제는,너무 느려. 애플리케이션 초기 환경 로그를 찍어보니, 멀쩡하게 달려있는 GPU 사용하지도 않고 있길래 CUDA 설치를 하긴 했는데 랩탑에 달려있는 귀여운 GPU라..
로그는 대체 왜, 언제, 어디서, 무엇을 남겨야 하는가?
·
Computer Science/Concept
💡 개인적인 고찰일 뿐 정답이 아닙니다.로그가 필요한 이유는 정말 많지만, 여기선 주로 디버깅 관점에서 분석하고 있습니다.혹시나 더 나은 아이디어나 다른 관점이 있다면, 부디 언제든지 댓글로 남겨주시면 감사드리겠습니다.제발.1. Introduction 📌 Interview👤: 로그는 언제 남겨야 하나요?🙋‍♂️: 아직 많은 고민 중에 있지만, 분명한 건 Presentation과 외부 액터와 I/O가 발생하는 시점, 그리고 영속화에 변경이 발생할 때입니다! 👤: 영속성이 수정될 때마다 남기면 로그는 어디서 남기나요? 전부 서비스 계층에서 남기나요? UPDATE 연산할 때마다 로그로 남길 건가요?🙎‍♂️: ...?(공격적인 질문은 아니었다. 다만, 갑자기 질문이 쏟아져서 굉장히 당황했다.) 이 한..
기술 블로그 포스팅을 작성하는 전략적 노하우
·
Review
💡 이 글은 지극히 주관적인 내용을 담고 있습니다.블로그 포스팅을 작성하는 방법은 다양하며, 본인의 성향, 목적, 공부 방법에 따라 천차만별로 나뉩니다.다만, 아직 어떻게 글을 구조적으로 작성하고, 포스팅을 활용하는 방법을 모르는 분들을 위해 작성하게 되었습니다.(참고로 고려한 독자층은 학생입니다.)제가 작성한 포스트를 읽어 보시고, 이러한 구성이 마음에 드신다면 따라해보시길 권장드리며,아이디어를 참고해서 독자적인 전략을 구상해보는 것도 의미있는 일이라고 생각합니다.1. Introduction 📌 The reason why I am writing this post최근 들어, 블로그를 시작하는 지인이 많아졌다.그와 동시에, 포스팅을 대체 어떻게 적어야 하는 지 물어보는 사람도 많아졌다. 나는 오랜 시행..