2012-05-15 2 views
0

두 대의 웹 서버가 있습니다. 하나는 비동기식이고 다른 하나는 동기식입니다. 비동기 서버는 페이지에서 클라이언트와의 실시간 상호 작용을 처리하는 반면, 동기식 서버는 동기식 웹 서버의 다른 일반적인 작업 (예 : 인증, 정적 페이지 등) 중 페이지의 정적 컨텐츠를 제공합니다.이 유스 케이스에서 Celery (분산 작업 대기열)가 필요합니까?

두 대의 서버를 연결하여 비동기 서버에서 수집 한 상호 작용 데이터를 동기식 서버로 보내면 데이터를 데이터베이스에 저장할 수 있습니다. 이를 구현하기 위해 RabbitMQ를 사용하여 데이터가 포함 된 각 메시지가 비동기 서버에서 동기식 서버로 전송됩니다. 이 메시지를 수신하면 동기 서버는 메시지를 하나씩 처리합니다.

이 두 서버의 경우 성능을 향상시키기 위해 셀리를 사용해야 할 수도 있습니까? 이 설정을 여러 비동기식 서버와 여러 동기식 서버로 확장해야하는 경우 어떻게해야합니까? 셀러리를 어떻게 활용해야합니까?

답변

0

당신은 모든 것을 올바르게 이해하고 있지만, 셀러리 데몬에 저장 작업을 구현할 수 있습니까? 또한 다른 쉬운 솔루션을 볼 수 있습니다. 비동기 서버에서 동기화 서버로 으로 GET-POST 요청을 호출하면됩니다. 그래서. 비동기에서 동기화까지의 간편한 전환. 나는 당신을 위해 그것의 더 나은 지금 생각한다.

+0

제안에 감사드립니다. GET-POST 요청보다 메시지 대기열을 선택합니다. 특히 두 개의 서버 사이의 통신에 대해 더 강력합니다. 특히 rabbitmq 사용을 고려해야합니다. 여기 rabbitmq 외에 셀러리를 사용해야하는 이유에 대해 좀 더 자세히 설명해 주시겠습니까? – skyork

관련 문제