전체 글

전체 글

    면접 준비

    뮤텍스 한 쓰레드, 프로세스에 의해 소유될 수 있는 Key🔑를 기반으로 한 상호배제기법 세마포어 Signaling mechanism. 현재 공유자원에 접근할 수 있는 쓰레드, 프로세스의 수를 나타내는 값을 두어 상호배제를 달성하는 기법 참고: https://worthpreading.tistory.com/90 뮤텍스(Mutex)와 세마포어(Semaphore)의 차이 이 글은 Medium에 개시된 글입니다. Medium에서 보시면 좀 더 유쾌한 환경에서 글을 보실 수 있습니다. 뮤텍스(Mutex)와 세마포어(Semaphore)의 차이 Toilet problem 동시성 프로그래밍의 가장 큰 숙제는 ‘공 worthpreading.tistory.com 데이터베이스 인덱스 인덱스란 추가적인 쓰기 작업과 저장 공간을..

    실전프로젝트 중간점검

    express를 사용한 이유 가벼워서 처음 배워서 사용하기 좋았다. mysql을 사용한 이유 데이터 중복이 없어 무결성이 보장된다. 중복된 데이터 관리가 쉽다. nosql에 비해 사용하기 까다롭기 때문에 공부할 때는 sql을 사용하는 것이 좋다고 생각했다. 프로젝트에서 보안은 어떻게 유지하나? HTTPS를 적용하여 세션 데이터를 암호화했다. JWT를 이용해 유저정보를 함호화했다. 회원의 비밀번호를 해쉬 함수를 사용해 암호화했다. 내가 맡은 부분의 질문 (API, 테스트 코드, HTTPS, 웹소켓) 최적화를 위해 어떤 것을 했나? DB 조회를 한번만 하여 원하는 값을 불러올 수 있도록 쿼리를 구현했다. 간단한 쿼리는 sequelize를 사용했고 복잡한 쿼리는 raw query를 사용했다. 예외처리는 어떤식..

    EC2 CodeDeploy를 이용하여 github 연동 및 자동배포

    CodeDeploy AWS는 CodeDeploy를 통해 CD(Continous Delivery)를 진행한다. CodeDeploy는 Revision(code, dependencies,packages 등 필요한 파일들과 AppSpec.yml)이 로컬에서 S3 Bucket, github, bitbucket 등으로 업로드될 때 실행되어 EC2 인스턴스 또는 auto-scaling group에 배포한다. Appspec.yml 파일을 프로젝트 내에 생성하고 CodeDeploy agent에게 배포 또는 실행해야하는 파일들의 순서와 경로를 알려준다. 이 때 모든 EC2 인스턴스에는 Appspec를 읽을 수 있는 agent가 설치되어 있어야한다. ※주의※ code Deploy agent는 Ubuntu 20.04 버전을 ..