언어 바꾸기English
이전 목록

나는 3년 동안 이벤트에 대해 틀렸다—Async Runtime이 실제로 치르고 있던 대가를 알기 전까지

I Was Wrong About Events for Three Years—Until I Learned What Async Runtime Was Really Costing

TL;DR AI

핵심 요약

1분
  1. 초당 200만 건 이상의 이벤트를 처리하던 Rust 게임 백엔드가 GC 튜닝과 코드 수정에도 불구하고 꼬리 지연, 메모리 증가, 장애를 겪었습니다.

  2. 프로파일링 결과, 병목은 애플리케이션 로직이 아니라 syscall이 많은 큐 처리에서 async 런타임이 막히는 데 있었습니다.

  3. 팀은 tokio에서 smol로 전환하고, 락프리 bounded 큐를 도입했으며, 네트워크 쓰기를 분리했습니다.

  4. 그 결과 할당이 줄고 메모리가 안정화됐으며, 고부하에서도 처리 예측 가능성이 개선됐습니다.

  5. 이 사례는 고처리량 시스템에서 async 런타임 설계가 GC나 애플리케이션 코드만큼 지연과 메모리를 좌우할 수 있음을 보여줍니다.

원문 보기