반응형
- [ 데브옵스/쿠버네티스&도커 ]delete resource 시 terminating에서 stuck 상태 해결 방법2024-09-09 11:24:00Kubernetes에서 네임스페이스가 "Terminating" 상태에서 멈춰 삭제되지 않을 때는 주로 파이널라이저(finalizer)가 네임스페이스 삭제를 완료하지 못하는 상황이 원인이 됩니다. 네임스페이스 상태 확인:네임스페이스가 삭제되지 않고 Terminating 상태에 멈춰 있는지 확인합니다.kubectl get namespaces -o yamlJSON 파일로 네임스페이스 추출:kubectl 명령어를 사용해 네임스페이스 정의를 JSON 형식으로 추출합니다.kubectl get namespaces -o json > .json파이널라이저 제거:JSON 파일에서 finalizers 항목에 있는 "kubernetes" 값을 삭제합니다. 이 작업은 다음과 같이 sed 명령어로 수행할 수 있습니다:se..
- [ 아키텍쳐/레퍼런스 아키텍쳐 - Common ]비동기 백엔드 아키텍쳐 설계2024-03-17 15:11:191. API Server API Server는 보통 세션 정보나 API 키는 중간에 Redis에 넣기 때문에 Stateless 하다. 그래서 api 서버가 restart된다고 큰 문제가 발생하지 않는다 그래서 AWS 클라우드 환경에서 API 서버를 2:8의 비율로 standard와 spot 인스턴스를 조합해서 구성하면 비용을 크게 절감할 수 있다 Multi Threaded Model은 쓰레드 수만큼 처리를 할 수 있다. 자바는 Multi Thread이다 그래서 C10K (Concurrent 10K users,동시 사용자 만명)를 하려면 자바에서는 보통 쓰레드 수를 100개 많으면 500개 두기 때문에 서버 수가 100개가 있어야 한다 → 너무 리소스가 많이 든다 그래서 나온 것이 Non-blocking ..
- [ 아키텍쳐/아키텍쳐 설계 방법론 ]REST API 디자인 설계2024-03-10 17:38:401. REST 개요 REST 구성 REST 기본 REST의 특성 REST는 캐싱이 가능하다, 위의 예시처럼 Last-Modified에 따라 캐싱할 수 있음 / 그래서 CDN 활용 가능 REST 단점 REST 안티 패턴 동일한 URL 패턴 안에 서로 다른 기능을 하는 함수를 정의하는 것 → 가독성이 엄청 떨어짐 2. 설계 패턴 error body에 콜스택을 넣는 것은 보안에 취약해짐 error code는 넣어주어야 함. 왜냐하면 고객이 에러 코드를 가지고 검색할 수 있게 하기 위해서 error code 정할 때 서비스 별로 range를 나누어서 정리하고 초기에는 1000, 1001, 1002 이런 것보단 1000, 1010, 1020 이런식으로 정하는 것이 좋다. 왜냐하면 나중에 하나의 에러에 비슷한 에러..
- [ 클라우드/AWS ]API Gateway 란2023-08-14 00:23:17API Gateway 개요 Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다 지원 API 유형 RESTful API : HTTP API를 사용하여 서버리스 워크로드 및 HTTP 벡엔드에 최적화된 RESTful API를 구축합니다. HTTP API는 API 프록시 기능만 필요한 API를 구축할 때 가장 적합합니다. API가 API 프록시 기능과 API 관리 기능을 요구하는 경우, API Gateway는 REST API도 제공합니다 WEBSOCKET API : WebSocket API를 사용하여 채팅 앱 및 스트리밍 대시보드와 같은 실시간 양방향 통신 애플리케이션을 구축합니다. API Gat..
반응형