asyncio 뽀개기 3 - SIGTERM (CTRL+C) 올바르게 처리하기
asyncio를 사용하는 서버라면 graceful shutdown을 할 수 있어야합니다. Eventloop에 task를 등록하는 구조이기 때문에 graceful shutdown을 하지 않으면 유저 혹은 다른 서버의 요청이 버려지는 현상이 발생할 수 있습니다. 이전 포스트들에서 asyncio의 핵심 요소들의 동작 방식을 이해했다면, 이번 포스트에서는 sign…
기업 기술블로그의 DevOps 관련 글 934개
asyncio를 사용하는 서버라면 graceful shutdown을 할 수 있어야합니다. Eventloop에 task를 등록하는 구조이기 때문에 graceful shutdown을 하지 않으면 유저 혹은 다른 서버의 요청이 버려지는 현상이 발생할 수 있습니다. 이전 포스트들에서 asyncio의 핵심 요소들의 동작 방식을 이해했다면, 이번 포스트에서는 sign…
결제시스템(페이상품권)에서 분산 트랜잭션을 보장하고 안전하게 다루기 위해 고민한 내용을 공유합니다.
티맵 경로탐색 엔진 티맵 경로탐색 엔진은 아래 화면과 같이 출발지로부터 목적지까지 사용자에게 최적의 경로를 안내해주기 위한 엔진입니다. (경로탐색엔진에 대한 상세한 내용은 아래 콘텐츠를 참고해주세요) 신규 경로탐색 엔진은 현재 AWS 환경에서 서비스를 제공하고 있고요. 개발된 지 얼마 되지 않았기 때문에 비교적 최신 개발환경을 유지하고 있습니다. Langu
EventBridge를 활용한 자동화 EventBridge는 AWS 서비스 이벤트를 사용하여 이벤트 기반 애플리케이션을 대규모로 손쉽게 구축할 수 있는 서버리스 이벤트 버스로, 이벤트 소스의 실시간 이벤트 스트림을 원하는 대상으로 전송하는 역할을 합니다.
뱅크샐러드 DevOps팀은 무슨 일을 하나요? 뱅크샐러드 DevOps…
📖 Table of Contents 해당 포스팅은 아래의 시리즈로 구성되어 있습니다. 시리즈대로 포스팅을 읽어주세요 💚 Teamcity 를 사용한 Build Process 구성 방법 Teamcity로 Docker Container Image…
AWS에서 MSA 서비스 구축하기 티맵모빌리티가 출범한 이후 새로운 서비스들이 속속 개발되고 있습니다. 새로 개발되는 서비스들은 AWS 상에서 운영되고 있고, 티맵결제 또한 AWS 상에 구축되어 운영되고 있습니다. 처음 티맵결제를 위한 결제플랫폼을 구축할 때 아래와 같은 고민을 가지고 있었습니다. 새로운 기술을 써보고 싶은데 어떤 것이 좋을까? Devo
안녕하세요. 키친보드 팀의 백엔드 프로그래머 남경호입니다. 최근 스포카는 서울 본사 사무실 이전과 함께 도도 포인트 서비스양도 등 많은 변화의 시간을 가졌습니다. 제가 몸담은 키친보드 팀도 앞으로 더 나은 서비스를 제공하기 위한 정비 기간을 가졌었는데요, 정비 기간에 백엔드 챕터는 현재 운영되고 있는 키친보드 서비스의 서버에 사용된 언어를 변경하기로 하였습니다. 이 글에서는 이 기간 동안 왜, 그리고 어떻게 언어 전환을 이루었는지 이야기해보도록
이전 글에서는 ECS / EKS에서 서비스 하는 것에 대한 개념을 풀어 써봤습니다. 이번 글에서는 잘 만들어진 모듈을 이용해 빠르게 구성해보겠습니다.
ECS 아티클에 이어 이번 글에서는 같은 서비스를 EKS로 구축해보도록 하겠습니다. 간단하게 구축하는 것은 eksctl을 쓰면 되지만, 내부 이해를 위해 여기서는 기본부터 구현하도록 하겠습니다.
카카오스타일에서는 한동한 ECS를 사용해서 어플리케이션을 서비스했습니다. 현재는 EKS로 전환하고 있지만, ECS가 상대적으로 단순하기 때문에 서비스 구축 개념을 익히는데 좋은 것 같습니다. (간단한 서비스는 굳이 쿠버네티스를 쓸 필요가 없다고 생각합니다) 그런 의미에서 이번 글에서는 ECS를 이용해 단순한 서비스를 오픈하는 과정을 단계별로 설명해보려고 합니다.
이 시리즈의 목적은 asyncio의 컴포넌트들과 활용법을 소개하는 것입니다. 최종적으로는 실제 production에 쓰이고 있는 graceful shutdown을 구현하는 것을 목표로 하며, 그 과정에서 필요한 asyncio 지식을 여러 포스트에 걸쳐 설명할 예정입니다. Python에 국한된 내용도 있지만 코루틴, Future 등은 Asynchronous…
사용자에게 검색 서비스를 제공하려면 검색 대상이 될 문서에 대한 색인(indexing) 과정과 사용자가 요청하는 쿼리(query), 즉 검색 내용에 대해 일치하는 결과 문서를 제공해야 합니다. 이때 사용자에게는 언제든지 문제 없이 실시간 서비스를 제공해야 합니다. 이러한 검색 서비스를 제공하기 위해 진행했던 개발 과정에 대해 소개합니다. 1. 프로젝트 개요 본 프로젝트는 줌인터넷 신규 입사자로서 진행했던 파일럿 프로젝트로 주요 목적은 검색 대상
안녕하세요! 저희는 Buzzvil Culture Committee의 Diane과 Jacob입니다. 버즈빌은 지난 번 AWS GameDay에 참여하여 Microservice Magic에서 3위라는 뛰어난 성적을 거두었는데요! 버즈빌 개발팀의 높은 실력을 증명한 시간이 아니었나 싶습니다. 참가하신 다섯 분의 개발자 Liam, Noah, Aiden, Claud,…
안녕하세요. 버즈빌의 데이터 엔지니어 Raf입니다. 버즈빌에서는 Go 마이크로 서비스에서 Elasticsearch와 DynamoDB 등의 AWS SDK를 사용하거나, 내부 서비스가 아닌 애드 네트워크나 앱 퍼블리셔 등의 HTTP로 통신해야 하는 외부 서비스를 연동하는 경우 HTTP 요청을 사용하고 있습니다. 저는 DynamoDB의 응답시간을 낮추기 위해 최…
회사나 팀에서 개발하다 보면 한 번쯤은 거의 필연적으로 내부에서 사용하기 위한 패키지 저장소에 대해 고민해보게 됩니다. 오늘은 그 고민을 통해 사내에서 사용할 수 있는 NPM 패키지 저장소를 구축하기 위해 겪었던 부분들에 대해 짧게나마 공유하려고 합니다.
테라폼 은 메이저 클라우드 프로바이더를 대부분 지원합니다. 화해는 AWS를 주력으로 사용하지만 GCP도 사용하고 앞으로 다양한 환경으로 확장될 가능성이 높습니다. AWS Cloudformation이나 CDK 등도 고려으나 특정 클라우드 환경에 종속된다는 한계가 있었습니
버즈빌 개발팀에서는 매주 수요일, 모든 팀의 개발자들이 모여 본인이 관심있는 분야에 대한 노하우나 담당하고 있는 업무와 관련된 새로운 기술에 대한 논의를 진행하는 시간을 가지고 있습니다. 이 시간을 통해 내가 알고 있는 것들에 대해 더 확실히 알고 모르는 것들에 대해 배우며 이를 바탕으로 보다 효율적이고 창의적으로 업무를 진행하기 위해 노력하고 있습니다.…
페이지 48 / 52 (총 934개)