1. 깃허브 Actions1) Events : 어떤 일이 발생했는지 지정- 예시: 내 Pull Requests를 main 브랜치로 머지할 때 테스트를 수행해야 한다면 이벤트 지정할 수 있음 2) Workflows : event가 발생하면 일어날 일(Job), 자동화하고 싶은 일 등록. 각각의 job은 병렬적으로 실행됨- 예: action이나 npm install 등3) Runners- 각각의 job을 실행시켜주는 도구, NM머신, Docker 컨테이너.. 2. 사용법- ./github/workflows/workflow.ymlname: learn-github-actions # workflow 이름 on: [push] # 이벤트 지정jobs: check-bats-version: # job의 이름 r..
1. Thread란?- 프로그램이 동시에 여러 작업을 처리할 수 있도록 하는 작은 실행 단위→ 예시: 인터넷 브라우저에서 스레드가 있다면, 한 스레드는 웹 페이지를 로드하고, 다른 스레드는 동영상 재생을 처리하고, 또 다른 스레드는 버튼 클릭 응답을 처리 2. I/O 바운드- 프로그램이 입출력 (Input/Output) 작업 때문에 실행 속도가 제한되는 상황- I/O : 컴퓨터가 데이터를 주고 받는 작업→ 예시: 하드디스크에서 파일을 읽거나 쓰는 작업, 인터넷에서 데이터를 다운로드하거나 서버와 통신하는 작업- 바운드: 제한/제약, 작업의 성능이나 처리 속도를 결정하는 요소가 무엇인지 설명할 때 사용- I/O 바운드: I/O 작업이 성능의 병목이 되는 상황, 프로그램의 속도가 CPU의 연산 능력이 아니..
[ 서버리스 컴퓨팅]1. AWS Lambda: 서버리스 컴퓨팅- 특정 이벤트 트리거에 반응하여 코드 단위로 실행 2. Fargate- 컨테이너 단위로 애플리케이션을 배포하고 실행, EC2 없이 컨테이너 실행- AWS가 서버 관리 및 확장 처리 [API 관리]3. API Gateway- Rest API와 WebSocker API를 생성, 관리, 배포하는 서비스- AWS Lambda, EC2 등과 통합해 클라이언트와 백엔드를 연결 4. Rest API- 클라이언트- 서버 간의 요청/응답 방식으로 데이터를 교환하며 HTTP를 기반으로 동작- 요청마다 연결 및 해제- CRUD 작업, 정적 데이터 전송 등 5. WebSocket API- 클라이언트와 서버 간의 양방향 실시간 통신을 가능하게 하는 프로토콜- 지속적..
의존성 주입이란?외부에서 객체를 주입하여 사용하는 방식Depends지정된 함수를 호출하고 반환값을 엔드포인트 함수에 전달엔드포인트 함수란?클라이언트(브라우저) 특정 url로 요청을 보낼때 실행되는 함수@app.get(”/users/)는 GET요청을 처리하는 엔드포인트를 정의, /users/는 클라이언트가 요청을 보낼 urlyield# main.pyfrom fastapi import FastAPI, Dependsfrom sqlalchemy.orm import Sessionfrom db import get_db # 의존성 주입 함수app = FastAPI()@app.get("/users/")def read_users(db: Session = Depends(get_db)): # 엔드포인트 함수 # 데..
1. 나의 상황- mysql포트를 43306으로 변경해둔 상황- docker compose에 db port 지정시 43306:3306으로 하니 db가 실행이 안됨(3306:3306도 동일)- .env파일에 url입력시 localhost:43306 으로 해뒀음 2. 해결방법- 실제 내가 하는 db연결 url인 localhost:43306이 아니라 > docker 컨테이너가 연결하는 db:3306이어야함!!!!- .envDATABASE_URL=mysql+pymysql://아이디:비밀번호@db:3306/데이터베이스이름- docker-compose파일에 설정한 이름, 포트와 동일하게 지정해줘야함(db:3306)services: backend: build: context: ./back d..

1. 호스팅 - 무료: 도커허브 https://hub.docker.com/- 유료: AWS ECR 2. create a Repository (이미지 보관 폴더) 선택 3. public은 무료! 누구나 다운 받을 수 있음 ※ 주의 : 민감한 정보 들어있는 것들은 private 4. Docker Desktop의 터미널- 기존 이미지 이름 => dockerhub닉네임/이미지이름:태그로 변경 => push- 이미지 이름이 repository랑 같아야 해서 이름 변경해줘야 함- 업로드 안되면 docker login하고 진행docker tag 이미지이름:태그명 dockerhub닉네임/이미지이름:태그docker push dockerhub닉네임/이미지이름:태그# 내 이미지를 다운받고 싶으면docker pull 이미..
1. 내 프로그램을 이미지로 만들고 싶으면?Dockerfile 생성 > 내용 작성 > 터미널에 docker build 1) 이미지 생성- docker init 입력하면 자동 완성해줌(필요한것만 수정) # Dockerfile# 1. 어떤 OS / 프로그램 쓸건지:버전 => Docker hub에서 찾기FROM node:20-slim# 2. 어떤 프로그램 설치할건지##복사하기 싫은 파일은 .dockerignore파일 만들고, 폴더 경로 기재## 현재 작업 경로 설정 및 설치 파일 복사WORKDIR /폴더명COPY 내_컴퓨터_파일경로 이미지_내부_파일_경로RUN ["npm", "install"]# 3. 포트 번호 기재EXPOSE 8080# 유저 권한 낮추는게 좋음# 4. 파일 실행 명령어CMD ["node"..
- Total
- Today
- Yesterday
- 프로그래머스
- 빅데이터 분석기사
- 경제
- 습관
- C언어
- IH
- 티스토리챌린지
- 오픽
- 미라클모닝
- 기초
- 다이어트
- SQL
- 아침
- 줄넘기
- 30분
- llm
- Ai
- 운동
- 루틴
- 갓생
- 뉴스
- opic
- 스크랩
- 고득점 Kit
- 실기
- ChatGPT
- 아침운동
- Python
- 영어회화
- 오블완
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |