백엔드
기본 정보
개요
백엔드는 사용자가 직접 보지 않는 서버 영역에서 데이터 처리, 비즈니스 로직 실행, 데이터베이스 관리, 인증 및 권한 관리 등을 담당하는 개발 분야이다.
프론트엔드에서 요청한 데이터를 처리하여 결과를 반환하며, 웹사이트와 모바일 앱의 핵심 기능을 수행한다.
백엔드 구조
사용자
↓
브라우저 / 모바일 앱
↓
프론트엔드
↓
REST API
↓
백엔드 서버
├── 인증
├── 회원관리
├── 게시판
├── 비즈니스 로직
├── 파일관리
├── 로그관리
└── 외부 API
↓
Database
↓
MySQL / MariaDB / PostgreSQL
주요 역할
- 회원 관리
- 로그인 및 인증
- 데이터 저장
- 데이터 조회
- 파일 업로드
- API 제공
- 권한 관리
- 로그 관리
- 이메일 발송
- 결제 시스템 연동
핵심 기술
PHP
- 그누보드
- 워드프레스
- Laravel
국내 웹서비스에서 많이 사용된다.
Java
- Spring
- Spring Boot
대규모 기업 시스템에서 널리 사용된다.
Node.js
JavaScript 기반 서버 개발 환경이다.
실시간 서비스와 REST API 개발에 많이 활용된다.
Python
- Django
- Flask
- FastAPI
AI, 데이터 분석 및 웹 개발에 폭넓게 사용된다.
C#
- ASP.NET Core
Microsoft 기반 기업 환경에서 많이 사용된다.
데이터베이스
대표적인 관계형 데이터베이스
NoSQL 데이터베이스
API
백엔드는 일반적으로 API를 통해 프론트엔드와 통신한다.
대표 방식
- REST API
- GraphQL
- WebSocket
인증 방식
대표 인증 기술
- Session
- Cookie
- JWT
- OAuth 2.0
- OpenID Connect
서버 구조
Client
↓
Load Balancer
↓
Web Server
↓
Application Server
↓
Database
↓
Cache
↓
Storage
웹 서버
대표 웹 서버
정적 파일 처리 및 요청 전달을 담당한다.
WAS
대표 WAS(Web Application Server)
- Tomcat
- Jetty
- WildFly
Java 기반 애플리케이션 실행 환경이다.
캐시 서버
대표 기술
- Redis
- Memcached
조회 성능 향상을 위해 사용된다.
ORM
대표 ORM
- JPA
- Hibernate
- Entity Framework
- Sequelize
- Prisma
객체와 데이터베이스를 매핑하여 개발 생산성을 높인다.
로그 관리
대표 도구
- ELK Stack
- Grafana
- Prometheus
- Loki
운영 환경의 장애 분석과 모니터링에 활용된다.
대표 프레임워크
주요 업무
- 회원 시스템 개발
- 게시판 개발
- 쇼핑몰 개발
- 관리자 시스템 개발
- ERP 개발
- API 서버 개발
- 파일 서버 개발
- 인증 서버 개발
- 결제 시스템 개발
협업 대상
- 프론트엔드 개발자
- 모바일 개발자
- DBA
- DevOps 엔지니어
- UI/UX 디자이너
- 기획자
장점
- 서버 로직을 직접 설계할 수 있음
- 다양한 시스템과 연동 가능
- 대규모 서비스 개발 가능
- 높은 확장성과 안정성 확보 가능
단점
- 서버 운영 지식 필요
- 보안 고려 사항이 많음
- 데이터베이스 설계 능력 필요
- 장애 대응 및 성능 최적화가 중요함
실무 메모
실무에서는 다음과 같은 방식이 권장된다.
- RESTful API 설계
- JWT 또는 OAuth 기반 인증
- SQL Injection 방지
- XSS 및 CSRF 대응
- 트랜잭션 처리
- 예외 처리 공통화
- 로그 및 모니터링 구축
- Docker 기반 배포
- Redis 캐시 활용
- API 문서(OpenAPI/Swagger) 관리
백엔드 개발 로드맵
프로그래밍 언어
↓
자료구조 · 알고리즘
↓
SQL
↓
데이터베이스 설계
↓
HTTP
↓
REST API
↓
Framework
↓
Authentication
↓
Cache
↓
Docker
↓
CI/CD
↓
Cloud
백엔드와 함께 사용하는 기술
대표 개발 도구
- Visual Studio Code
- IntelliJ IDEA
- Postman
- DBeaver
- Docker Desktop
- Git
- GitHub
관련 문서
출처
- MDN Web Docs - Server-side Development
- The Twelve-Factor App
- REST API 설계 원칙 문서