일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- OpenShift
- BFS
- k8s
- LeetCode
- jpa
- 메세지큐
- 머신러닝
- kubernetes
- vuejs
- Redis
- 로깅
- Python
- 생성형 AI
- 솔루션조사
- 쿠버네티스
- 도커
- Machine Learning
- 컨설턴트
- GPT
- fast api
- fastapi
- vue.js
- 리트코드
- Docker
- 컨설팅
- 오픈시프트
- LLaMa
- POD
- 생성형
- SpringBoot
- Today
- Total
목록Redis (2)
수 많은 우문은 현답을 만든다
오늘은 성능 향상에 대해서 이야기를 해보자. 서론한달만에 Big-data를 다루는 API 중계 솔루션을 개발했다.데이터를 수집하는 멀티쓰레딩 배치가 10개정도 동시에 돌아가고, 수집된 데이터를 API로 제공하는 서비스이다.문제는 API 응답 데이터가 가장 큰 녀석은 한번에 250MB를 보내고 있어서 성능 테스트에 어려움을 겪었다.처음부터 큰 데이터를 다루기 위한 설계를 잘 했어야 하는데, 분산시스템 개발 경험은 있으나 이런 큰 단건 데이터 처리는 경험이 없어서 고생을 했다. 솔루션 기술 스택 :- Fast API, Redis, Mongo DB 성능 요구 사항 :- 400 TPS, 동시접속자 150,000명, 속도 건당 1초 이내 본론우선 단건 데이터가 적은 API들은 성능 요구 사항을 만족했다. 그러나..
안녕하세요 조영호입니다. 오늘은 업무 중 세마포어와 관련된 질문을 받았고 바로 명쾌하게 대답하지 못했던 것이 아쉬워서 글로 남겨봅니다. 받은 질문과 대답 Q :"현 프로젝트에서 세마포어 구조를 쓰고있나요? 가령, 캐시 사용 같은 부분에서요" A : "프로세스 간에 함께 공유하는 자원이 없어 세마포어를 쓰고있지 않습니다" 자 우선 OS 이론에서 자주 등장하는 세마포어, 뮤텍스, 동기화의 차이에 대해서 알아보겠습니다. 세마포어(Semaphore) : 공유된 자원의 데이터 혹은 임계영역(Critical Section) 등에 여러 Process 혹은 Thread가 접근하는 것을 막아줍니다(즉, 동기화 대상이 하나 이상) 뮤텍스(Mutex) : 공유된 자원의 데이터 혹은 임계영역(Critical Section) ..