k6란?k6는 그라파나 랩스(Grafana Labs)에서 개발 및 운영 중인 오픈 소스 도구로, 개발자 친화적으로 부하 테스트를 수행할 수 있도록 돕는 도구이다.k6는 내부적으로 Go언어의 gorutine(go의 경량화된 가상 스레드)을 기반으로 동작하는데, 이러한 점 덕분에 싱글 스레드 내에서 비동기로 가상 유저의 동시 요청을 수행하여 다른 멀티 스레드 기반 도구들에 비해 시스템 리소스를 효율적으로 사용할 수 있다는 특징이 있다.또한, 자바스크립트 문법으로 작성되는 스크립트를 기반으로 동작하여, 개발자는 k6 문법과 사용법에 대한 러닝커브만 감당하면 별도 언어를 학습할 필요가 없다는 장점도 있다.이번 글에서는 이 k6의 실행 조건을 구성하는 설정값인 option에 어떤 정보들이 들어갈 수 있는지 알아보..
최근에 처음으로 Kubernetes를 학습하게 되었다.기존부터 나는 Docker의 애용자였고, 서비스의 배포 및 관리를 위해 AWS ECS를 주로 사용하고 있었다.그러나 Kubernetes는 한 번도 다뤄본 적이 없었는데, 최근 처음으로 Kubernetes 기반으로 구축된 대규모의 시스템을 관리하게 되며 공식 문서와 Udemy 강의 등의 도움을 얻어 Kubernetes를 습득하고 있다.그런데… Kubernetes가 제공하는 기능들을 들으면 들을수록, 계속하여 드는 한 가지 생각이 있었다. 어? 이거 ECS로도 충분히 할 수 있는 건데?여러 개의 컨테이너를 띄우고, 각각의 상태를 체크하고, 원활한 서비스를 위해 개수를 자동으로 조정하는 일 등은 AWS ECS가 제공하는 기능들로도 충분히 할 수 있는 일이었..
AWS 프리티어의 공포백엔드 개발자로 사이드 프로젝트를 해본 경험이 있다면, 프리티어를 통해 AWS 클라우드를 사용해 본 경험이 한 번쯤은 있을 것이다. AWS에서는 1년 동안 EC2, RDS, S3 등 핵심 제품에 대해 무료 제공을 지원한다. 프리 티어를 사용한다면, 큰 추가 지출 없이 가벼운 서비스를 클라우드 환경에서 운영할 수 있다.그러나 프리티어는 1년이 지난 후부터 자동으로 비용이 지불되며, 프리티어 기간 동안에도 무료가 아닌 서비스를 이용하거나 계정 또는 서버에 접근하기 위한 정보들을 탈취당하는 경우 과금이 청구될 수 있다. (AWS 과금 괴담은 많은 개발자들을 두려움에 떨게 하는 이야기이다.)과금 괴담만이 아니더라도 프리티어 기간이 종료되고 나면 지불 비용이 은근히 쎄다. EC2, RDS만을..