CS 3

경험을 위한 사이드 프로젝트 설계 시 기술선정

안녕하세요 오늘은 백엔드 공부를 처음 시작하고 팀 프로젝트나 개인 프로젝트를 진행할 때 도움이 될만한 설계할 때 기술 선정에 대한 이야기를 해보도록 하겠습니다. 저도 따로 복잡한 아키텍처를 설계해본적이 없기 때문에 그렇게까지 복잡한 이야기는 하지 않을 거고, 요즘에는 졸업 작품이나 부트캠프 같은 곳에서 백엔드를 배우고 프로젝트를 한다거나 개인적으로 토이 프로젝트를 시작하시는 분들이 많은데 그런 분들을 위해 간단하게나마 이야기하고자 합니다. 일단 프로젝트에서 아키텍처는 정말 중요합니다. 아키텍처를 통해 이 프로젝트가 어떤 기술을 사용하고 있고 어떻게 데이터가 흐르는지 볼 수 있기 때문입니다. 일단 이글을 쓰는 이유와 일화를 먼저 말씀드리자면저도 처음 팀 프로젝트를 했을 때 저와 팀원들 전부 모든 데이터를 ..

CS/시스템 설계 2026.02.06

[네트워크] HTTP와 HTTPS

이번 포스트에서는 HTTP와 HTTPS에 대해서 이야기해 보겠습니다. HTTP & HTTPS 서버와 클라이언트의 통신을 위해 사용하는 프로토콜 HyperText Transfer Protocol의 약자로 설명대로 서버와 클라이언트의 통신을 위해 사용하는 프로토콜입니다.그중 HTTPS는 HTTP에 보안 인증을 추가한 것입니다. (Secure) 특징두 프로토콜의 공통적인 특징으로는1. 비연결성 프로토콜로 클라이언트의 요청에 서버가 응답하면 연결이 종료된다.2. 무상태 프로토콜로 클라이언트의 상태를 서버에 저장하지 않는다.이 두 가지가 있습니다.그래서 HTTP는 한번 연결하면 연결이 끊길 때까지 계속 사용할 수 있는 웹소켓이나 SSE 등과 다르게 매번 요청해야 한다는 특징이 있습니다. 차이점HTTPS는 HTTP..

데이터베이스 - 인덱스

오늘은 데이터베이스의 인덱스에 대해서 알아보려고 한다. 보통 RDB에서 조회 성능을 개선하기 위해 가장 먼저 생각할 수 있는 게 캐시와 인덱스인데그중 캐시는 따로 레디스와 같은 DB를 이용하는 경우가 많기 때문에 인덱스에 눈을 들이게 된다. 나 또한 대부분의 튜닝을 인덱스를 활용했었지만, 추후 인덱스에 대해서 좀 제대로 알아보고 코드를 다시 살펴본 결과내가 잘못하고 있다는 것을 깨닫게 되었다. 그래서 이 글은 막 엄청 깊게 다루지는 않겠지만 그래도 기본적으로 인덱스를 처음 사용하고자 하는 사람들에게나 같은 실수를 하지 말고 도움이 되었으면 좋겠다.데이터베이스 - 인덱스데이터베이스에서 테이블의 검색 속도를 향상시키기 위해 사용하는 자료구조동작 방식해당 컬럼의 값을 정렬하여 물리적 주소를 별도의 공간에 저장..