Basic 27

[트래픽] 서버가 트래픽을 견디는 법?

1. 트래픽? 트래픽(traffic)이란 서버와 스위치 등 네트워크 장치에서 일정 시간 내에 흐르는 데이터의 양을 말한다. 트래픽이 너무 많으면 서버에 과부하가 걸려서 기능에 문제가 생길 수 있다. 2. 서버가 트래픽을 견디는 방법 진짜 많은 사용자가 서비스를 이용하면 그만큼 서버에게 많은 요청이 들어갑니다. 웹 서비스를 제공한다고 한다면 웹서버가, API 서버를 운영한다면 API 서버와 데이터베이스에게도 요청이 갈 것이다. 이때, 요청이 많아지면 그걸 '트래픽이 많아졌다'라고 한다. 나 같은 백엔드 개발자는 이런 상황을 잘 대처해야 한다. 트래픽이 많아질수록 서버는 바빠진다. 그 이유는 서버에 요청이 많아지면 요청에 응답하기 위해 서버 컴퓨터에서는 CPU와 메모리를 사용한다. 이때 트래픽이 점점 더 많..

Basic/코딩기초 2023.02.20

[Git]Rebase vs Merge 차이

1. Git 프로젝트 하면서 깃을 진짜 많이 사용해 본 것 같다. 이에 크고 작은 오류들, 모르는것들이 많이 있었는데 그 중 Rebase와 Merge에 대해 정리해 보려고 한다. 2. Rebase, Merge Rebase : Fork 해온 프로젝트를 Upstream에 맞게 동기화 하고 싶을 때 사용한다. 정보를 Fetch Upstream을 통해 가져오고 Rebase를 통해 병합한다. Merge : 얘는 Upstream이 없고 Origin만 있는 상태에서 Git을 관리할 때 사용했었던 방법이다. 3. Rebase와 Merge의 동작원리 흰색이 Main Branch, 노란색이 Sub Branch입니다. Merge : Main브랜치에서 Sub브랜치로 $git merge로 병합을 실행한다. master에서 me..

Basic/Git 2023.01.02

[Cloud] AWS(Amazon Web Service)

1. Cloud Computing Cloud의 장점 컴퓨팅 능력을 유연하게 조절가능하다. 사용한 만큼의 요금 지불한다. 스냅샷을 이용하여 다른 컴퓨터로 즉시 이주가 가능하다. Cloud의 단점 클라우드 제공자에게 종속되어 클라우드 서비스에 문제가 생기면 내가 관리하는 환경에도 영향을 미친다. 2. Deploy(배포) 기본적인 배포 과정 4단계 Development Local 환경에서 개발 및 테스트한다. Sample Data를 이용한다. 변경사항이 생겨도 문제되지 않는다. 모두 각자의 환경에서 개발을 진행한다. Intergration 각자 환경에서 개발된 내용을 합치는 과정이다. 코드간 Conflict가 없는지 확인하는 단계이다. 작성한 코드가 다른코드에 문제를 일으키지 않는지 확인한다. Staging ..

Basic/코딩기초 2022.12.02

[데이터베이스]SQL

1. SQL(Structured Query Language) 구조화된 Query 언어이다. 데이터베이스용 프로그래밍 언어 이다. 데이터베이스에 Query를 보내 원하는 데이터만 뽑아올 수 있다. Query란? 질의문 검색창에 적는 검색어도 Query의 일종 저장되어있는 정보를 필터 하기 위한 질문 SQL 사용에 필요한 기본 문법 Select : 데이터셋에 포함될 특성을 특정한다. From : 테이블과 관련한 작업을 할 경우 사용한다. Where : 필터 역할을 하는 쿼리문, 선택적으로 사용가능하다. Where 특성_1 = "특정 값" : 특정 값과 동일한 데이터 찾기 Where 특성_1 "특정 값" : 특정 값을 제외한 값 찾기 Where 특성_1 >,

Basic/Database 2022.11.30

[코딩기초] 개발자들의 플랫폼 'Git, Github' 알아보기

1. Git Git은 Linux OS를 만든 리누스 토르발즈가 만든 프로그램이다. 약 26년 동안 2천만 줄이 넘는 소스 코드를 1만 명이 넘는 소프트웨어 엔지니어들과 함께 오픈 소스 방식으로 작성하며 Linux OS를 만들고 관리했다고 한다. 이에 효율적인 작업 환경을 만들고자 Git이 만들어졌다. 2005년에 Git을 출시하면서 그는 Git을 ‘지옥에서 온 문서 관리자’라고 소개했는데, Linux OS를 만들고 관리하면서 경험했던 지옥을 해결하기 위해 버전 관리, 백업, 그리고 협업과 관련된 기능들을 담아 Git을 탄생시켰다고 한다. 2. Git은 파일의 변경사항 추적, 파일의 버전을 관리할 수 있게 도와준다. 파일을 백업할 수 있게 해 준다. 협업을 위해 파일을 공유하고 취합할 수 있게 해 준다. ..

Basic/코딩기초 2022.11.30

[코딩기초] MAC 터미널 단축어 모음

1. MAC에서 사용하는 터미널의 간단한 단축어를 정리해보자 pwd : 현재 작업 중인 폴더 위치 보여준다. mkdir '폴더명' : ' '폴더 생성한다. ls : list의 약자, 폴더 안에 포함된 파일이나 하위 폴더의 리스트를 보여준다. ls -a : 숨어있는 폴더나 파일을 포함한 모든 항목을 보여준다. ls -l : 폴더나 파일의 포맷을 알려준다. cd '폴더명': ' '폴더로 들어간다.(더블클릭해서 폴더로 들어가는 거랑 같음) touch '파일명' : ' ' 파일을 생성한다. > '파일명' : 실행결과를 저장한다. echo '내용' '파일명' : 내용을 파일 속에 저장한다. cat : 파일의 내용을 터미널에 출력한다. rm : remove의 약자, 비어있는 폴더나 파일을 삭제한다. rm -rf :..

Basic/코딩기초 2022.11.30