Windows에서 Linux로 MongoDB 마이그레이션 하기
·
DataBase/MongoDB
소개MongoDB를 Windows에서 Linux 환경으로 마이그레이션하는 전체 과정을 상세히 알아보겠습니다. MongoDB 8.0.3 버전을 기준으로 설명하겠습니다.Linux에 MongoDB 설치하기Ubuntu/Debian 환경# 1. MongoDB GPG 키 가져오기sudo apt-get updatesudo apt-get install gnupg curlcurl -fsSL https://pgp.mongodb.com/server-8.0.asc | \ sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \ --dearmor# 2. MongoDB 리포지토리 추가echo "deb [ arch=amd64,arm64 signed-by=/usr/share/key..
requests vs aiohttp - HTTP 요청의 모든 것
·
파이썬/크롤링
소개Python에서 HTTP 요청을 처리할 때 가장 많이 사용되는 두 라이브러리인 requests와 aiohttp의 매개변수와 사용법을 자세히 비교해보겠습니다.설치 방법# requests 설치pip install requests# aiohttp 설치pip install aiohttprequests 라이브러리의 주요 매개변수GET 요청import requestsresponse = requests.get( url="https://api.example.com/data", params={'key': 'value'}, # URL 쿼리 파라미터 headers={'Authorization': 'Bearer token'}, # 요청 헤더 cookies={'session':..
[Pydantic] Field로 데이터 유효성 검사 마스터하기
·
파이썬/Fast API
소개FastAPI와 함께 자주 사용되는 Pydantic의 Field를 통해 데이터 유효성 검사를 구현하는 방법을 알아보겠습니다.설치 방법# pip 사용pip install pydantic# poetry 사용poetry add pydantic# pipenv 사용pipenv install pydantic기본 사용법간단한 모델 정의from pydantic import BaseModel, Fieldclass User(BaseModel): name: str = Field(..., min_length=2, max_length=50) age: int = Field(gt=0, lt=150) email: str = Field(..., pattern=r"^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-..
next.config.js 커스터마이징
·
TypeScript
소개Next.js 애플리케이션의 동작을 세부적으로 제어하고 싶으신가요? next.config.js 파일을 통해 애플리케이션을 원하는 대로 커스터마이징하는 방법을 알아보겠습니다.next.config.js 기본 구조// next.config.js/** @type {import('next').NextConfig} */const nextConfig = { // 기본 설정 reactStrictMode: true, // 여기에 추가 설정}module.exports = nextConfig런타임 구성 설정하기런타임 구성에는 두 가지 유형이 있습니다:서버 런타임 구성const nextConfig = { serverRuntimeConfig: { userEndpoint: 'https://api.example.c..
GitHub Actions로 CI/CD 자동화하기
·
Git
소개GitHub Actions을 사용하여 CI/CD 파이프라인을 구축하는 방법을 처음부터 차근차근 알아보겠습니다. 실제 프로젝트에서 바로 사용할 수 있는 예제도 함께 살펴보겠습니다.GitHub Actions란?GitHub Actions는 빌드, 테스트, 배포 파이프라인을 자동화할 수 있는 CI/CD 플랫폼입니다. git push 등의 이벤트가 발생했을 때 자동으로 정의된 작업을 실행할 수 있습니다.기본 워크플로우 생성1. 워크플로우 파일 위치프로젝트 루트에 다음 경로로 yml 파일을 생성합니다:your-project/ ├── .github/ │ └── workflows/ │ └── main.yml2. 기본 워크플로우 구조name: CI/CD Pipeline# 워크플로우 실행 조건on:..
파이썬 개발을 위한 VSCode 셋팅 가이드
·
파이썬
소개VSCode에서 Python 개발을 할 때, 적절한 settings.json 설정은 개발 경험을 크게 향상시킬 수 있습니다. 오늘은 각 설정의 의미와 효과를 자세히 알아보겠습니다.Type Hint 관련 설정인레이 힌트 설정{ "python.analysis.inlayHints.variableTypes": true, "python.analysis.inlayHints.functionReturnTypes": true}이 설정들은 코드 에디터에 타입 정보를 직접 표시해줍니다. 예시:# 설정 전name = "John"def get_age(): return 25# 설정 후name: str = "John"def get_age() -> int: return 25자동 저장 및 포매팅 설정{ ..
함수 하나로 여러 가지 처리하기? Python 오버로딩
·
파이썬/Basic
소개안녕하세요! 오늘은 Python에서 오버로딩을 구현하는 방법에 대해 알아보겠습니다. 오버로딩이란 무엇이고, 왜 필요한지부터 차근차근 설명드리겠습니다.오버로딩이란?오버로딩은 같은 이름의 함수나 메서드가 다른 매개변수를 받아 다르게 동작하도록 하는 기능입니다. 쉽게 말해서, 하나의 함수가 여러 가지 일을 할 수 있게 만드는 것입니다.실생활 예시계산기를 생각해봅시다:두 숫자를 더할 수도 있고세 숫자를 더할 수도 있고숫자와 문자를 연결할 수도 있죠오버로딩 방법1. singledispatch 사용하기from functools import singledispatch@singledispatchdef greet(arg): print(f"무언가를 받았어요: {arg}")@greet.register(str)def..
[React] React.lazy와 Suspense
·
TypeScript
소개웹 애플리케이션이 커질수록 초기 로딩 시간도 늘어납니다. React.lazy와 Suspense를 사용하면 필요한 시점에 코드를 로드하여 초기 로딩 시간을 줄일 수 있습니다. 쉽게 말해, 처음부터 모든 것을 로드하지 않고 필요할 때 필요한 부분만 가져오는 것입니다.React.lazy란?React.lazy는 컴포넌트를 동적으로 불러올 수 있게 해주는 기능입니다. 쉽게 말해, 필요한 순간에 컴포넌트를 로드하는 것입니다.기본 사용법// 기존 방식import HeavyComponent from './HeavyComponent';// React.lazy 사용const HeavyComponent = React.lazy(() => import('./HeavyComponent'));Suspense란?Suspense는..