open:셀러리와-메시지-버스는-비슷한가

셀러리와 메시지 버스는 비슷한가?

⇒ 아니오

셀러리 Celery는 파이썬 세계에서 그 자체로 완결적인 작업들을 비동기 작업 큐에 넣어서 처리하는 유명한 도구다.
메시지 버스Node.js 앱이나 UI 이벤트 루프, 액터 프레임워크 등에서 흔하게 볼 수 있다

작업을 메인 스레드 밖으로 빼야 한다는 요구 사항이 있어도 여전히 이벤트 기반의 비유를 사용 할 수 있다.
이를 위해서는 외부 이벤트를 사용하는 걸 권한다

근본적으로 여러분이 중앙 집중 스토어에 이벤트를 영속화하는 방법을 구현하면 다른 컨테이너나 마이크로서비스가 이 중앙 집중 이벤트 스토어를 구독할 수 있다. 그 후에는 한 프로세스나 서비스 내에서 작업 단위별로 책임을 분산하기 위해 이벤트를 사용한다는 개념을 그대로 여러 프로세스에 걸친 이벤트에 적용할 수 있다. 이때 각 프로세스는 같은 서비스 내 다른 컨테이너이거나 완전히 다른 마이크로서비스일 수도 있다.

이런 접근 방법에 따르면 작업을 분배하기 위한 API는 이벤트 클래스가 되거나 이벤트 클래스에 대한 JSON 표현이 될 수 있다.
이벤트 클래스나 JSON을 작업 분배용 API로 사용하면 작업을 위임할 대상을 폭넓게 고를 수 있다.
예를 들면 작업을 맡을 프로세스가 꼭 파이썬 서비스일 필요가 없다.
셀러리의 작업 분배 API는 근본적으로 '함수 이름과 인수'로 이루어지며, 이런 방식은 좀 더 제한적이고 파이썬 안에서만 통하는 방식이다.


  • open/셀러리와-메시지-버스는-비슷한가.txt
  • 마지막으로 수정됨: 2022/01/09 05:58
  • 저자 127.0.0.1