mingkeJan 16, 2024Python 암호화 AES-128-CBC 암호화 구현하기 - pycryptodome과 cryptography 사용하기암호화는 데이터 보안의 중요한 측면 중 하나입니다. 그리고 AES(Advanced Encryption Standard)는 가장 널리 사용되는 대칭 키 암호화 알고리즘 중 하나입니다. 최근 데이터를 암호화 할 일이 있었습니다. 하지만 저는 암호학에 대해 아는게 없습니다. 하지만 Python 라이브러리를 이용하면 쉽게 구현할 수 있습니다Python
mingkeJan 13, 2024Python QRCode 생성하기QRCode를 Python으로 간단하게 만들어봅니다. qrcode 라이브러리를 이용하면 아주 쉽게 만들수 있습니다.Python
mingkeJan 10, 2024SQLAlchemy ORM 속도 측정하기최근 FastAPI + Async SQLAlchemy 조합으로 백엔드 개발을 주로하고 있습니다. 며칠전까지 별 문제 없었는데 어제 API 응답 속도가 좀 느려진 것을 감지했습니다. 원인을 파악하던 도중에 ORM 속도를 측정봐야겠다고 생각했습니다. Async SQLAlchemy ORM의 Query를 실행하는데 걸리는 시간을 측정하는 데코레이터를 만들어보았습니다.PythonSQLAlchemy
mingkeJan 5, 2024Poetry - Python dependency 매니저 알아보기Poetry는 Python 프로젝트 관리의 많은 작업을 간소화하는 아주 강력한 의존성 관리 및 패키징 도구입니다. 최근 poetry를 사용하지 않는 팀원에게 poetry를 사용하는 방법을 알려줬었는데, 블로그에도 글로 한 번 남겨봅니다.Python
mingkeJan 3, 2024Python - ast, Abstract Syntax Tree 추상 구문 트리AST는 소스 코드의 구조를 트리 형태로 나타내는 것으로, 코드의 구조를 분석하고 다양하게 조작하는 데 사용할 수 있습니다. 오늘은 ast를 간단하게 알아보고 사용경험을 공유하고자 합니다.Python
mingkeDec 28, 2023EC2 기타 비용 분석작은 프로젝트를 EC2에 배포하고 운영, 관리까지 하면서 비용에 대해서 자연스레 관심을 가지게 되었습니다. Cost Explorer에서 비용을 살펴보다가, EC2-기타 항목이 있어 그것이 무엇이가 살펴보는 시간을 가지려고 합니다.AWS
mingkeDec 22, 2023FastAPI - 나만의 FastAPI 라이브러리 만들기FastAPI는 microframework라서 개발하다보면 자유도가 참 높다고 느껴지는것 같습니다. 백엔드를 개발하는데 정말 필수적인 것들만 있고 나머지는 원하는 대로 만들어서 쓰면 되는것 같습니다.FastAPIPython
mingkeDec 13, 2023Openpyxl으로 엑셀 파일 Python으로 쉽게 다루기Python에는 Pandas라는 강력한 데이터분석 라이브러리가 있습니다. Excel역시 pandas를 이용하면 쉽게 읽고 데이터를 가져올 수 있습니다. 하지만 pandas는 사이즈가 큰 라이브러리이기 때문에 Excel만 읽고 쓰고 하려 한다면 pandas를 설치하는것은 낭비일 수 있습니다. 오늘은 openpyxl을 이용하여 python으로 excel을 다루는 것을 익혀보려고 합니다. openpyxl은 xlsx확장자 파일의 엑셀을 읽고 쓸수있는 라이브러리입니다.Python
mingkeDec 8, 2023AWS ECS EC2에서 Replica와 Daemon 전략 비교이 글에서는 Replica와 Daemon, 두 가지 주요 배치 전략의 차이점과 적절한 사용 시나리오에 대해 알아보고자 합니다. ECS에 처음 배포해볼 때 서비스 유형에서 Replica, Daemon을 보고 이게 뭐지 했던 것에서 시작하게 되었습니다.AWS
mingkeDec 6, 2023Boto3 - ECS 서비스 실행 및 종료하기AWS 콘솔에 들어가서 서비스를 삭제할 수도 있고 AWS CLI 를 통해서 할 수도 있고 다양한 방법이 있겠지만 Boto3를 이용해서 실행 및 종료하는 어드민 API를 만들기로 결정했습니다. 개발자가 아니더라도 권한이 있는 사람이라면 쉽게 가능할 수 있도록 하기 위해서 내린 결정이었습니다.AWSPython