본문 바로가기

전체 글43

비동기와 멀티스레딩 비동기와 멀티스레딩비동기와 멀티스레딩은 둘 다 여러 작업을 동시에 처리할 수 있게 해준다는 공통점이 있어, 두 용어를 혼용하여 사용하는 경우가 많다.하지만 "비동기적이라는 것은 단일 스레드, 멀티 스레드 모두에게 적용된다." 멀티스레딩은 비동기 프로그래밍의 한 형태인 것이지, 비동기 처리가 항상 멀티스레딩 방식인 것은 아니다.1. 비동기 (Asynchronous)비동기 처리는 작업이 완료될 때까지 기다리지 않고, 다른 작업을 처리하는 방식이다. 하나의 스레드에서 여러 작업을 순차적으로 처리하되, 대기 시간에 다른 작업을 수행하여 전체 작업 시간을 줄일 수 있다.비동기 작업은 주로 I/O 작업에서 유용하게 사용되며, 주로 데이터베이스 조회, 네트워크 요청 등 외부 시스템과의 통신에서 효과적이다. 주요 장점.. 2025. 2. 23.
쿠버네티스 볼륨 쿠버네티스는 로컬 머신에서 실행되지 않기 때문에 다양한 볼륨 유형 및 드라이버를 지원한다. 따라서 데이터를 저장하는 방법은 매우 다양하다. 도커의 볼륨과 같이 로컬 하드 드라이브뿐만 아니라 AWS Elastic Block Store 서비스 등을 사용할 수 있다. 중요한 것은 이러한 다양한 유형을 사용하더라도 컨테이너 내부에서 볼륨이 작동하는 방식에 영향을 미치지 않는다는 것이다. - emptyDir 볼륨 사용하기 볼륨의 수명은 Pod에 연결되어 있기 때문에 Pod를 정의하고 구성하는 위치에 볼륨을 정의해야 한다. emptyDir유형의 volumes 볼륨을 사용하도록 지정하였고, 값을 {}으로 지정하므로써 emptyDir은 Pod가 시작될 때마다 단순히 새로운 빈 디렉토리를 생성한다. 그리고 Pod가 살아.. 2023. 3. 27.
[카페인] 리뷰 등록 flow - api 재설계하기 리뷰 등록 가능 여부, 스티커 발급 가능 여부 조회 api 설계 기존 방식의 경우 사용자는 리뷰를 모두 작성한 후 등록 버튼을 누르고 나서야 등록이 불가능하다는 응답을 얻을 수 있었다. 사용자는 이러한 수고로움을 겪어야 했고 이 문제를 해결하기 위해 리뷰 등록 화면 진입 전에 사용자에게 리뷰등록이 가능한지 알려주는 모달창을 띄어주도록 개선하기로 했다. 일단 리뷰 등록까지 Flow을 정리해보기로 했다. 리뷰 등록 api 호출 시 등록할 수 없거나 스티커 발급이 불가능한 4가지의 예외 케이스가 존재한다. 하루에 최대 3개 스티커 발급 제한 최대 20개 스티커 보유 개수 제한 신고로 인한 활동 정지 상태의 회원 카페당 하루에 한번만 리뷰 작성 가능 평소 api당 한개의 기능만을 담당할 수 있도록 api를 쪼개.. 2023. 3. 2.
쿠버네티스 configuration 파일 명령적 접근 방식 vs 선언적 접근 방식 명령적 접근 방식일 경우 deployment 및 서비스 구성을 위해 명령어 반복하여 직접 작성해야 한다. 이러한 수고로움을 해소하기 위해 쿠버네티스는 리소스 정의 파일을 생성할 수 있다. -Deployment 정의 파일 예시 apiVersion - 쿠버네티스 버전 kind - 생성하려는 쿠버네티스 객체 종류 metadata - 객체 정보 지정-> name 등 -> reference 문서 참고 spec - deployment의 사양 -> replicas - pod 실행 수 -> templete - pod를 정의 -> metadata - pod 객체의 metadata -> name, lables 등 -> containers - pod의 컨테이너 정의, 하나의 pod에.. 2023. 2. 21.
쿠버네티스 구조 쿠버네티스가 수행하는 작업과 수행하지 않는 작업을 이해하는 것이 중요하다. - 쿠버네티스가 수행하지 않는 작업 개발자가 작업해야 하는 것은 클러스트와 노드 생성이다. 쿠버네티스는 최종 아키텍처를 정의하는 올인원 도구이지만 클러스터, 마스터노드, 워커 노드 등의 기본적인 리소스를 스스로 생성하지 않으며 그것은 쿠버네티스가 하는 일이 아니다. - 쿠버네티스가 수행하는 작업 쿠버네티스는 포드의 모니터링, 포드 컨테이너의 모니터링, 실패한 포드 교체 및 포드의 스케일링 등, 이러한 포드를 관리하는데 도움을 주는 것이지 클라우드 인프라 생성이나 인프라 서비스 프로바이더 역할을 수행하지 않는다. 때문에 쿠버네티스는 인프라에 대해 아무것도 알지 못한다. 그러므로 쿠버네티스는 구체적인 리모트 머신의 구체적인 가상 인스.. 2023. 2. 21.
EFS EFS - 파일 시스템 생성 네트워크 엑세스 옵션 설정 시 보안 그룹 변경이 필요 - EFS를 위한 새로운 보안그룹 생성 Type - NFS, Sournce에서 컨테이너 관리에 사용하는 보안그룹을 선택하여 애플리케이션 컨테이너가 EFS에 접근할 수 있도록 설정한다. 나머지 옵션 설정 후 완료하여 EFS 생성 해당 파일 시스템을 볼륨 옵션에서 선택 후 완료. 이제 컨테이너와 볼륨을 연결 시켜줘야 하기 떄문에 연결 시킬 컨테이너를 선택해 볼륨을 설정해준다. 설정 후 완료 새로운 태스크가 정의 되었다면 Actions -> Update Service로 이동하여 이 새 개정판으로 서비스를 강제 재배포한다. 2023. 2. 21.