분류 전체보기 121

[MYSQL] 3월에 태어난 여성 회원 목록 출력하기(프로그래머스/Level 2)

# 3월에 태어난 여성 회원 목록 출력하기 https://school.programmers.co.kr/learn/courses/30/lessons/131120 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ⭐ 코드 SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') FROM MEMBER_PROFILE WHERE (MONTH(DATE_OF_BIRTH) = 3) AND (GENDER = 'W') AND (TLNO IS NOT NULL) ORDER BY MEMBER_ID A..

Database/MySQL 2023.05.17

[Docker] 로컬 환경에서 도커를 활용해보자

✅ 도커 컴포즈(Docker Compose)란 무엇인가? 도커 컨테이너를 일괄적으로 정의하고 제어하는 도구 설정 파일을 도커 CLI로 번역하는 역할 CLI는 터미널과 비슷한 환경을 말함 # 도커 컴포즈를 실행하기 위한 코드 docker-compose -f local-infra.yml up --build ✅ 도커 컴포즈 설정 파일 version services 실행하려는 컨테이너들을 정의하는 역할 이름, 이미지, 포트 매핑, 환경 변수, 볼륨 등을 포함 해당 정보를 가지고 컨테이너를 생성하고 관리 imgae: 컨테이너를 생성할 때 쓰일 이미지 지정 build: 정의된 도커파일에서 이미지를 빌드해 서비스의 컨테이너를 생성하도록 설정 environment: 환경 변수 설정, docker run 명령어의 --e..

Docker 2023.04.06

[Docker] Docker 알아보기

✅ Docker란 무엇일까? 도커는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 다양한 프로그램들과 실행환경을 컨테이너로 규격화시켜 프로그램의 배포 및 관리를 단순화할 수 있다. 프로그램의 코드뿐만 아니라 실행에 필요한 모든 dependency들도 컨테이너에 담기 때문에 다른 환경에서도 빠르게 애플리케이션을 실행할 수 있다. 또한 어떠한 프로그램이라도 컨테이너로 규격화할 수 있기 때문에 편리하다. 🔎 요약 컨테이너 기반 가상화 도구 리눅스 컨테이너 기술인 LXC(Linux Containers) 기반 애플리케이션을 컨테이너라는 단위로 격리하여 실행하고 배포하는 기술 다양한 운영체제에서 사용할 수 있으며, 컨테이너화된 애플리케이션을 손쉽게 빌드, 배포, 관리할 수 있는 다양한 기능을 제공 ✅ 컨테이너 기반 ..

Docker 2023.04.04

인증과 인가

인증과 인가의 특징은 정확히 무엇이고 무엇이 다를까? 정확하게 짚고 넘어가보자. ✅ 인증 인증은 사용자의 신원을 검증하는 행위로 보안 프로세스에서 첫 번째 단계이다. 아파트로 예를 들면 주민이 아파트 공동 현관문에 출입 카드를 대는 것을 인증이라고 볼 수 있다. 사용자의 신원을 검증하는 방법은 여러가지가 있을 수 있지만 대체적으로 비밀번호를 사용한다. 사용자가 올바른 비밀번호를 입력했다면 시스템은 인증을 통해 유효하다고 판단하고 엑세스를 허용한다. ✅ 인가 인증과 조금 다르게 인가는 사용자가 어떤 리소스에 접근할 수 있는지, 또는 어떤 동작을 수행할 수 있는지 검증하는 것이다. 예를 들면 어떤 커뮤니티 홈페이지에 사용자로서 인증을 받고 서비스를 이용하고 있다고 볼 때, 인증된 사용자이기 때문에 글을 남길..

Computer Science 2023.04.02

[DRF] CORS에러 처리하기

얼마전 면접을 봤던 회사에서 CORS를 처리한 경험을 말해달라고 했다. CORS에 대해서 간략하게만 알고 있었고, Django에서는 프론트엔드와 백엔드가 분리되어 있지 않다보니 CORS 에러를 경험하지 못했고, 제대로 된 답변을 하지 못했다. 탈탈털린 경험을 바탕으로 오늘은 CORS에 대해서 정리해보고자 한다. ✅ CORS란? CORS란 Cross-Origin Resource Sharing의 약자로, 의미 그대로 서로 다른 출처에서 리소스를 공유하는 것을 CORS라고 한다. CORS는 출처가 다른 자원들을 공유한다는 뜻으로 한 출처에 있는 자원에서 다른 출처에 있는 자원에 접근하도록 하는 개념이다. 하지만 CORS를 위해서는 별도의 설정이 필요하다. 필요한 설정을 하지 않은 채 서로 다른 출처에서 리소스..

Python/DRF 2023.03.29

[DRF] 이론 정리(Serializer, REST API)

✅ DRF(Django Rest Framework)와 Django 차이점이 뭔데? Django로 프로젝트를 진행하다가 DRF를 사용해보면서 이해가 안됐던 점들이 많다. 지금은 어느정도 사용법에 익숙해진 느낌이지만 이론적인 부분을 정확하게 짚고 넘어가고자 차이점을 비교해보고자 한다. ✅ DRF(Django REST Framework) Django는 프론트엔드와 백엔드를 모두 처리해주는 풀스택 프레임워크이다. 프로젝트에 적용한걸 예시로 들어보면 @login_required def create(request): form = QuestionForm(request.POST or None, request.FILES or None) if form.is_valid(): temp = form.save(commit=Fal..

Python/DRF 2023.03.28

[MongoDB] SQL vs MQL

✅ SQL이란? 관계형 데이터베이스와 같은 경우에는 데이터를 테이블에 직관적으로 간단하게 나타내는 '관계형' 모델을 기반으로 한다. 우리가 익숙하게 알고있는 SQL(Structured Query Language)은 관계형 데이터베이스에 정보를 저장하고 처리하기 위한 프로그래밍 언어이다. 테이블의 열에는 데이터의 속성이 들어 있으며, 각 레코드에는 일반적으로 각 속성에 대한 값이 있으므로 데이터 포인트 간의 관계를 손쉽게 설정할 수 있다. ✅ MQL이란? MQL은 MongoDB Query Language로 몽고디비의 쿼리 언어이다. SQL이 테이블에 대한 모든 데이터를 조회할때 아래와 같이 문법을 작성한다면 select * from table; MQL은 아래와 같이 문법을 작성한다. MQL은 객체로서 데이..

Database/MongoDB 2023.03.28

[MongoDB] Replica Set vs Sharded Cluster

먼저 배포하기 전에 2가지를 고려해야한다. 1. 서비스의 요구사항 확인 -> 하루에 쌓이는 데이터양, 얼마나 보관하는지, 쓰기가 많은지 읽기가 많은지 등 2. 어떤 환경에서 배포하느냐 -> 내가 준비할 수 있는 서버의 스펙을 확인해야 한다. ✅ Replica Set vs Sharded Cluster 장단점 배포 형태 장점 단점 Replica Set - 운영이 쉽다. - 장애 발생시 문제 해결 및 복구가 쉽다. - 서버 비용이 적게 든다. - 성능이 좋다. - 개발 시 설계가 용이하다. - Read에 대한 분산이 가능하지만, Write에 대한 분산은 불가능하다. Sharded Cluster - Scale-Out이 가능하다. - Write에 대한 분산이 가능하다. - Replica Set의 모든 장점이 상대..

Database/MongoDB 2023.03.25

[AWS] AWS EC2란?

✅ AWS EC2 Amazon Elastic Compute Cloud(EC2)는 안전하고 크기 조정이 가능한 컴퓨팅 파워를 클라우드에서 제공하는 웹 서비스이다. 개발자가 더 쉽게 웹 규모의 클라우드 컴퓨팅 작업을 할 수 있도록 설계되었다. Amazon EC2의 간단한 웹 서비스 인터이스를 통해 간편하게 필요한 용량을 얻고 구성할 수 있다. 컴퓨팅 리소스에 대한 포괄적인 제어권을 제공하며, Amazon의 검증된 컴퓨팅 인프라에서 실행할 수 있다. EC2를 요약하면 컴퓨팅을 빌려 쓰는 서비스이다. ✅ EC2의 사용 서버를 구축할 때 게임서버, 웹서버, 어플리케이션 서버 어플리케이션을 사용하거나 호스팅할 때 데이터베이스 머신 러닝 비트코인 채굴 연구용 프로그램 기타 다양한 목적 그래픽 렌더링 게임 등 ✅ EC..

AWS 2023.03.09

[AWS] AWS API Gateway, AWS Lambda란?

이 포스팅의 흐름은 Serverless => AWS Lambda => AWS API Gateway 순으로 진행된다. 1. Severless 2. AWS Lambda 3. AWS API Gateway ✅ Serverless 서버리스에 대해서 간단하게 요약하자면 관리할 서버가 없다는 뜻으로, 서버 인프라를 구축 운영관리 하지 않고도 코드 배포만으로 백엔드 애플리케이션을 구축할 수 있는 아키텍처라고 보면 될 것 같다. 그렇기 때문에 서버리스로 개발을 하면 서버 구축이나 운영에 대한 고민 없이 서비스 자체에 집중할 수 있다. ✅ AWS Lambda AWS 람다는 서버를 관리하지 않고도 코드를 실행할 수 있게 해주는 컴퓨팅 서비스이다. 쉽게 말하면 람다는 코드로 이루어진 함수를 실행한다고 보면 될 것 같다. 이때..

AWS 2023.03.09
728x90