[DataBase] 트랜잭션 이란?
·
CS/DataBase
1. 트랜잭션이란 무엇인가요?트랜잭션(Transaction)이란 데이터베이스의 상태를 변환시키는 하나의 논리적인 작업 단위를 의미합니다. 여러 개의 SQL 명령어(쿼리)가 하나의 묶음처럼 처리되어, 이 묶음 속의 작업들이 모두 성공하거나 (Commit), 모두 실패하여 원래 상태로 되돌아가야 (Rollback) 하는 특성을 가집니다.가장 대표적인 예는 은행 계좌 이체입니다. A 계좌에서 돈을 인출하는 작업과 B 계좌로 돈을 입금하는 작업은 단 하나의 논리적 작업(이체)이며, 둘 중 하나라도 실패하면 데이터의 불일치(돈이 사라지거나 생성됨)가 발생하므로 전체 작업을 취소해야 합니다. 트랜잭션은 이러한 데이터의 일관성을 보장하는 핵심 메커니즘입니다.2. 트랜잭션의 핵심: ACID 속성모든 트랜잭션은 데이터의..
[Network] Local Port Forwarding
·
CS/Network
1. 로컬 포트 포워딩이란?로컬 포트 포워딩은 네트워크에서 데이터를 로컬 시스템의 특정 포트로 전달하고, 그 포트를 원격 서버로 연결하는 방식입니다. 이를 통해, 예를 들어 원격 서버에 있는 데이터베이스나 웹 애플리케이션을 로컬에서 마치 로컬 서버처럼 접근할 수 있습니다.2. 로컬 포트 포워딩 기본 명령어SSH를 사용하여 로컬 포트 포워딩을 설정할 수 있습니다. 기본적인 형식은 아래와 같습니다:ssh -L :: @: 로컬 시스템에서 사용할 포트 번호 (예: 8080).: 원격 서버의 호스트명이나 IP 주소.: 원격 서버의 서비스 포트 (예: 3306 - MySQL, 80 - HTTP).: 원격 서버의 사용자 이름.3. 사용 예시3 - 1. MySQL 데이터베이스 접속 예시ssh -L 3306:localh..
[Network] 다양한 API 설계 방식(REST, GraphQL, gRPC)
·
CS/Network
1. REST APIREST API는 자원을 중심으로 설계된 API 아키텍처 스타일로, HTTP 프로토콜을 활용하여 요청과 응답을 처리하며, REST는 Representational State Transfer의 줄임말로, 웹 API를 구축하는 방법에 대한 일련의 규칙 및 지침입니다1 - 1. 특징HTTP 프로토콜 기반으로 표현URI를 사용하여 자원을 명확히 표현무상태성(Stateless)응답 데이터 형식은 주로 JSON이나 XML 사용1 - 1 - 1. HTTP 메서드GET : 데이터를 조회POST : 데이터를 생성PUT, PATCH : 데이터를 수정DELETE : 데이터를 삭제1 - 2. 장점표준화된 설계REST는 명확하고 직관적이며 전 세계적으로 널리 사용됩니다다양한 환경에서 사용 가능브라우저, 모..
[Network] WEB과 WAS
·
CS
회사에서 진행하는 오전 스터디에서 RDBMS와 NoSQL 다음으로 나온 주제는 'WEB과 WAS'이다. 이 둘을 굳이 나눠놓은 이유는 무엇인지에 대한 질문에 가장 처음 떠올랐던 대답은 Front와 Back의 역활을 좀 더명확하게 분리하기 위해서와 Client가 내부 로직까지 접근할 수 없도로 보안적 이슈, 이렇게 크게 2가지 이유로 인해 나눠둔게 아닐까 라는 생각을 하였지만 반을을 보니 더 핵심이 되는 부분이 있는거 같아서 학습을 해볼려고 한다.1. WEB웹 서버는 클라이언트의 HTTP 요청을 처리하고, 정적인 콘텐츠(HTML, CSS, JavaScript, 이미지 등)를 응답하는 서버입니다. 주요 특징은 다음과 같습니다정적 콘텐츠 제공 : HTML 파일, 이미지, CSS, JavaScript와 같은 정..
[DataBase] RDBMS vs NoSQL
·
CS
Intro회사에서 배선임님이 주도하는 오전 스터디에서 RDBMS와 NoSQL의 특징, 그리고 일반적으로 왜 RDBMS를 사용하는 이유에 대해 이야기가 나왔다. 이전에 정처기를 취득할 때 공부했던 기억으로는 RDBMS는 ACID 원칙에 따르며 테이블 형태로 데이터를 관리하여 일관성이 중요하게 여겨지는 경우에 사용되고, NoSQL은 유동적으로 스키마를 추가할 수 있고 비정형 데이터를 처리하는 등 확장성을 중요하게 여겨지는 경우라고 답변을 하였지만, 아직 원하는 키워드가 나오지 않았다고 하여 RDBMS와 NoSQL에 대해 더 찾아볼려고 한다. 1. RDBMS1 - 1. 특징테이블 기반 구조 : 데이터를 행(Row)과 열(Column)로 구성된 테이블 형태로 저장스키마 : 데이터 구조를 사전에 정의해야 함. 스..
[Network] OSI Model 7 Layers
·
CS
OSI(Open Systems Interconnection) 모델ISO에서 제정한 네트워크 통신을 위한 표준 프레임워크로, 다양한 장비와 시스템이 상호 운용될 수 있도록 각기 다른 역할을 수행하는 7개 계층으로 구성되어 있습니다.다.7계층으로 나눈 이유OSI 7계층은 네트워크 통신을 단계별로 나누어 각 계층에서 발생하는 문제를 독립적으로 해결할 수 있게 하여, 오류 추적과 상태 관리가 용이하고, 다른 계층에 영향을 미치지 않으며 직관적인 흐름을 제공합니다.단계별 파악 가능: OSI 7계층은 네트워크 통신의 과정을 단계별로 나누어, 각 계층에서 발생하는 문제를 다른 계층에 영향을 주지 않고 독립적으로 해결할 수 있게 합니다.문제 해결 용이: 계층을 나누면 특정 계층에서 이상이 생겼을 때, 다른 계층이나 장..