버
버즈빌
May 30, 20221회
asyncio 뽀개기 3 - SIGTERM (CTRL+C) 올바르게 처리하기

간단 소개
asyncio 기반 서버에서 signal 처리를 통해 graceful shutdown을 구현하는 방법과 주의사항을 설명합니다.
AI Summary
- asyncio와 Graceful Shutdown
- asyncio 서버는 graceful shutdown이 필수적이며, 그렇지 않으면 요청이 손실될 수 있음
- signal을 이해하고 Eventloop에 signal handler를 추가하여 graceful shutdown 구현
- Signal의 이해 및 활용
- SIGTERM, SIGKILL, SIGINT 등 주요 signal을 이해하고, 각 signal에 적합한 handler를 설정해야 함
loop.add_signal_handler를 사용하여 signal handler를 등록하고, Eventloop 조작 또는 async 함수 등록 가능
- Signal Handler 구현 시 주의사항
loop.add_signal_handler는 가능한 한 빨리 실행하여 초기화 중 발생하는 signal도 처리해야 함- signal handler 내부에서
await를 사용하려면loop.create_task를 사용해야 하지만, 실행 딜레이가 발생할 수 있음을 고려해야 함 - 컨테이너 환경에서는 Dockerfile 설정에 따라 signal 처리 방식이 달라질 수 있음을 유의해야 함
Next Feeds

뱅크샐러드 iOS팀이 숨쉬듯이 테스트코드 짜는 방식 3편 - 스펙별 단위 테스트
뱅크샐러드 iOS팀의 테스트 코드 작성 방식과 TDD 적용 전략을 소개하고, 단위 테스트를 위한 다양한 도구 및 기법을 설명합니다.
iOS테스트TDDRxSwift뱅크샐러드
2022. 5. 30.
뱅크샐러드
![[여의도 43층 사람들] VP of Engineering에게 무엇이든 물어보세요!](https://blog.banksalad.com/static/4a13c025767831388a2bd36a181eaf93/cover.png)
[여의도 43층 사람들] VP of Engineering에게 무엇이든 물어보세요!
뱅크샐러드 VP of Engineering 정채상 님의 역할, 뱅크샐러드 합류 이유, 그리고 뱅크샐러드가 추구하는 테크 조직 문화에 대한 인터뷰.
뱅크샐러드VP of Engineering정채상테크 조직개발 문화
2022. 5. 27.
뱅크샐러드

하루 100억 트래픽도 끄떡없는 시스템을 만드는 팀으로 - Data Pipeline Team 인터뷰
AB180 Data Pipeline Team은 대용량 데이터 처리 시스템 구축 및 개발자 성장을 추구하며, 안정적이고 효율적인 서비스 제공을 목표로 합니다.
Data PipelineAB180마테크대용량 데이터개발 문화
2022. 5. 26.
AB180
MSA 환경에서 네트워크 예외를 잘 다루는 방법
MSA 환경에서 네트워크 예외를 효과적으로 처리하고 결제 트랜잭션의 무결성을 보장하는 방법에 대한 카카오페이의 기술적 접근 방식.
MSA글로벌 트랜잭션멱등성예외 처리함수형 프로그래밍
2022. 5. 25.
카카오페이

테스트 자동화 구축 이야기
스포카 QA팀의 Appium을 활용한 모바일 앱 테스트 자동화 구축 과정과 향후 계획, 그리고 테스트 자동화의 효과적인 활용 방안에 대한 이야기.
테스트 자동화Appium리그레션 테스트테스트 커버리지모바일 앱
2022. 5. 24.
스포카
사람인 Android App Refactoring
사람인 아이엠그라운드 앱의 MVC 패턴 문제점을 개선하고자 MVVM 패턴, AAC, Dagger-Hilt, DataBinding 등을 적용하여 리팩토링을 진행한 사례 공유.
MVVMAACDagger-HiltDataBindingViewBinding
2022. 5. 23.
사람인