-
Week00. 개발일지SW Jungle/TIL 2024. 3. 17. 17:31
jinja2, https, session, token, jwt, .env, db 주소 숨겨서 깃허브에 올리기, 폴링, 서버부하테스트
오자마자 3박 4일 프로젝트를 진행함
정글러들의 위치를
팀원들에게 적극적으로 도움을 요청하지 않은 것이 후회됨.
중요한 정보를 숨겨서 깃허브에 올리기
프로젝트에 사용하는 코드에 db 비밀번호가 담긴 몽고db 주소가 담겨있어 이를 그대로 깃에 올리면 안됨.
중요한 정보들을 따로 불러와서 코딩하는 방법이 필요했음..env
포트, DB관련 정보, API_KEY등 개발자 혼자서 또는 팀만 알아야 하는 값이 있다. 이를 위해 dotenv 패키지 이며 환경변수 파일을 외부에 만들어 저장시켜 소스코드 내에 하드코딩하지 않고 사용할수 있다.
python에서 .env 사용하기
프로젝트 최상위 루트에 .env 파일 만들기
📂PROJECT_FOLDER
.env 👈👈👈👈👈👈 파일생성
.gitignore
📂 .venv
📂static
📂template
.env 파일
MONGO_DB_PATH = "mongodb+srv://아이디:비밀번호@cluster0.ywajy5m.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0" KEY="#rnjswl" # 등등 민감 정보
❗ .gitignore 에 .env 등록하기
.gitignore 에 안쓰고 깃허브에 올라가버리면 도루묵이다.
/shelf/ /workspace.xml /.venv /.idea .env checkEnv.py JunglerRoute.iml
Flask 에 적용
import os from dotenv import load_dotenv load_dotenv(verbose=True) # DB 설정 _PATH_ = os.getenv('MONGO_DB_PATH') # Flask 키 설정 _KEY_ = os.getenv('KEY') app = Flask(__name__) app.secret_key = _KEY_
환경변수 확인해보기
import os from dotenv import load_dotenv load_dotenv(verbose=True) mongo_db_path = os.environ.get("MONGO_DB_PATH") if mongo_db_path: print("MongoDB 경로:", mongo_db_path) else: print("MONGO_DB_PATH 변수가 설정되어 있지 않습니다.")
변수 바꾸면 서버, 툴 껏다키기...!
사이트 부하 테스트 해보기
locust 설치
pip install locust
스크립트 작성 하고 로컬 포트 링크로 들어가서 테스트 진행하기
from locust import HttpUser, task, between class ServerTest(HttpUser): @task def api_test(self): self.client.get("/main") # get 요청
터미널에
locust
쳐서 실행하고
http://localhost:8089/
접속
Jinja2 로 서버사이드 렌더링 사용해보기
서버사이드 렌더링
클라이언트사이드 렌더링
BootStrap 을 대체할만한 CSS 라이블러리
- Bulma << 부트스트랩이랑 거의 똑같은데 별도로 신경쓰지않아도 모바일 템플릿에서도 잘 나오는 점이 좋았음
- Tailwind
HTTP Authorization header
Session, cookie, JWT
쿠키, 세션, 토큰(JWT) 방식에 대한 설명
https://ksh-coding.tistory.com/113
[인증/인가] 쿠키 VS 세션 VS 토큰 (JWT) 방식 중 무엇을 사용할까?
대표적으로 사용자의 인증/인가를 처리할 때 사용하는 방식이 다음과 같이 3가지가 있습니다. 1. 쿠키 방식 2. 세션 방식 3. JWT 토큰 방식 위의 3가지 방식들의 장단점을 살펴보고, 무엇을 사용해
ksh-coding.tistory.com
폴링
화면을 켜지 않아도 폴링이 되지않는지 생각해보기 (알트탭상태 등)
폴링한채로 30분 이상 있어보기
https://jihyun-wiki.tistory.com/15
https://github.com/Arklimits/swjungle-archive/tree/main/development-log
'SW Jungle > TIL' 카테고리의 다른 글
PintOS's Memory Structor (0) 2024.05.21 pintos fork (0) 2024.05.14 malloc lab binary 케이스 메모리 이용률 개선하기 (1) 2024.04.18 변수에 대한 이해 (0) 2024.04.12 week01 (0) 2024.03.24