전체 글

전체 글

    Github으로 협업 하는법

    1. 협력자(collaborator) 등록하기- 팀원들의 username 혹은 email로 추가 2. 코드 복사해 오기git clone .   복사본 만들어서 망치는 걸 방지하기 3. 브랜치 활용복사본 = 브랜치 4. 브랜치(복사본) 생성 명령어git branch 브랜치이름  5.  브랜치 확인 명령어git branch 6. 브랜치 이동 명령어git switch 브랜치이름git checkout 브랜치이름 7. 브랜치 한 번에 생성 & 이동git swtich -c 브랜치이름git checkout -b 브랜치이름 8. 새로운 브랜치에서 코드 수정 -> 저장 9. Pull Request 활용하기 10. Github 변경 코드를 내 컴퓨터에도 가져오기git pull origin 브랜치명 문제점1. Main 브..

    Git 기본 명령어

    Git- 코드 변경점 기록(버전 관리 도구)Github- 온라인 백업, 공유, 협업(온라인 코드 저장소) 1. 코드 관리를 시작하는 명령어git init - initialize(초기화하다, 초기 세팅하다)의 준말- 프로젝트 시작 전 딱 한 번만 입력하면 됨정확한 프로젝트 폴더(경로)에서 입력해야 함(터미널에서 pwd 명령어로 현재 경로 확인) 1.1 . git.git 이라는 폴더(숨겨진 폴더)가 생성-> ls -a 명령어로 확인 가능- 이 폴더에서 코드 변경점을 계속 추적 & 기록함(정확한 프로젝트 경로에 있어야 함) 2. 코드를 저장하는 명령어git add & commitgit add 파일명git commit -m "메시지 작성" 2.2 저장 명령어가 2개인 이유git add 파일명: 저장하기 전 저장..

    PostgreSQL Homebrew로 맥북(M1)에 설치 및 접속하는법

    homebrew로 PostgreSQL 설치brew install postgresql PostgreSQL 설치 확인postgres -VPostgreSQL 접속 하기# postgresql 실행brew services start postgresql# postgresql 접속psql postgres 콘솔 종료하는법\qPostgreSQL 실행 종료# postgresql 종료brew services stop postgresql

    대규모 시스템 - 데이터 일관성 유지

    대규모 시스템에서는 데이터 일관성을 유지하는 게 중요함이를 위해 분산 트랜잭션, 이벤트 소싱, CQRS등의기법을 사용할 수 있음 분산 트랜잭션(Distributed Transaction)- 여러 개의 독립된 시스템이나 데이터베이스에서동시에 일어나는 트랜잭션을 일관되게 관리하는 방법 - 단일 트랜잭션이 여러 시스템에 걸쳐 발생할 때,모든 시스템이 해당 트랜잭션을 성공적으로 완료하거나,모든 시스템이 트랜잭션을 실패로 처리하도록 보장이를 통해 데이터의 일관성을 유지할 수 있음 - 분산 트랜잭션이 필요한 이유는 마이크로서비스 아키텍처에서 여러 서비스가독립적으로 운영되기 때문 트랜잭션(Transaction)- 데이터베이스의 상태를 변환하는 작업의 단위로 ACID 속성을 보장 원자성(Atomicity): 트랜잭션은..

    대규모 시스템 - 데이터베이스 최적화

    데이터베이스 사용 최적화- 데이터베이스 인덱싱: 데이터베이스 인덱싱은 조회 성능을 크게 향상할 수 있는 방법 인덱스를 사용하면 데이터베이스는 데이터를 빠르게 검색할 수 있음 올바르게 설계된 인덱스는 읽기 성능을 적화 하고 쿼리 응답시간을 줄임 인덱스가 너무 많으면 쓰기 성능이 저하됨 - 데이터베이스 샤딩: 데이터베이스 샤딩은 데이터베이스를 여러 샤드로 분할하여각각의 샤드가 독립적으로 쿼리를 처리하도록 하는 방법 이를 통해 단일 데이터베이스에 대한 부하를 분산시킬 수 있으며,읽기 요청에 대한 응답 속도를 향상 시킬 수 있음 ex) 사용자 데이터를 여러 샤드에 분산 저장하여 읽기 성능 최적화 - 읽기전용 데이터베이스: 데이터를 주기적으로 동기화하여 최신 상태를 유지하면서 요청을 처리 이 방법은 주 데이터베이..