본문 바로가기

전체 글65

[Django] webp ,바이트 스트림(Byte Stream) 개념과 이미지 webp 형식으로 변환하기 webp라는 파일이 어떤 것 인지 최근에 알게되어 프로젝트를 진행하며 사용했던 개념을 기록한다 메인페이지에서 이미지를 여러개 뿌려주는 부분이 있다. 고품질의 PNG이미지를 여러개 사용하다보니 로딩하는데 살짝 버벅이는 느낌이 있었다.(아주 미세하지만 로딩이 느린 것 같음) 진행하던 프로젝트 기획 상 특정 페이지의 이미지 파일 업로드는 백오피스에서만 이뤄지고 다운로드는 하지 않기 때문에 파일 용량을 낮추는 것이 좋다고 생각했다. 이미지 포맷 중 하나인 webp는 고품질의 이미지를 상대적으로 작은 파일 크기로 저장할 수 있다. 이 글에서는 업로드된 이미지를 업로드(저장)할 때 webp포맷으로 자동 변환했던 것을 기록한다. webp 변환을 위한 Pillow 라이브러리 설치 pip install Pillow dj.. 2023. 9. 1.
[AWS] CloudFormation : 문법 및 스택정책을 쉽게 이해하기 CloudFormation 은 AWS에서 사용하는 기술중 하나로 IaC 를 위한 서비스이다. CloudFormation 문법 및 스택정책을 알아야 사용할 수 있으므로 가볍게 알아보도록 하겠다 CloudFormation에 사용되는 용어 및 명령어 Infrastructure as Code (IAC)와 YAML AWS CloudFormation은 Infrastructure as Code (IaC)를 가능하게 하는 서비스이다. CloudFormation은 주로 YAML 또는 JSON 파일을 사용하여 인프라를 설계하고 구성한다. !Ref !Ref는 CloudFormation 템플릿 내에서 다른 요소를 참조하는 데 사용되는데, 주로 리소스의 속성이나 파라미터 값을 가져오는 데 사용된다. !FindInMap !Fi.. 2023. 8. 27.
[AWS]Lambda 기초 정리 및 AWS CLI로 확인, ALB<->Lambda 연결 AWS Lambda는 서버리스 컴퓨팅 서비스 FaaS(Function as a Service)의 개념을 기반으로 하고 있으며, 대표적인 AWS 서버리스 서비스는 아래와 같다. Aws Lambda Dynamo DB AWS Cognito AWS API Gateway S3 AWS SNS & SQS AWS Kinesis Data Firehose Aurora Fargate 서버리스를 처음 접하는 사람이라면 Lambda를 써보고 찬양하게 되는 것 같다. 큰 장점으로는 코드를 실행하기 위해 서버를 프로비저닝하거나 관리할 필요가 없다는 것 이다. 이를 통해 간단하게 애플리케이션 이나 원하는 서비스(?)를 구축할 수 있다. 서버리스 환경에서는 인프라의 부담을 줄이고, 애플리케이션 개발과 배포에 집중할 수 있다는 장점이 .. 2023. 8. 22.
[Django] data 순서 필드(row number)를 위한 ORM(Window expression),admin에서 cached queryset 구현 다음과 같은 상황이 있다 게시물 리스트 api 가 필요하다.(pagination 적용) 데이터 기본 정렬 규칙은 최신데이터 순이다. 앞단에서 데이터 옆에 번호가 보여져야 한다. 사실 여기까지만 필요하다고 하면, 페이지네이션과 결합해 프론트만으로도 구현이 가능하지 않을까 싶었다. 백오피스(django admin)에서 해당 모델의 각 데이터 옆에 똑같은 순서로 번호가 보여져야 한다. 데이터에 제약조건들이 있다.(여러가지가 있지만 편의상 노출/비노출 여부 만 적용) 데이터 순서 부여에 대한 의견. 리스트형태의 api에서는 restful한 개발을 위해 id를 포함해서 데이터를 내려주는 것이 좋다고 생각하지만 기본적으로 존재하는 id(pk) 외에 데이터의 번호를 부여해야 상황이 생겼다. id는 데이터가 생성됨에 .. 2023. 8. 20.