인프런 커뮤니티 질문&답변

모진종님의 프로필 이미지
모진종

작성한 질문수

실리콘밸리 엔지니어와 함께하는 샐러리(Celery)

Celery란 무엇인가?

셀러리 사용에 문의드립니다.

작성

·

146

·

수정됨

1

현재상황은 다음과 같습니다.

 

  1. 윈도우 gui 오토메이션을 해야하는 task 가 있습니다.

  2. 큐(sqs)는 우선큐 일반큐 두개를 스위칭 해야하는 상황입니다.

  3. 우선큐에 메세지가 없을경우만 일반큐를 컨슘해야합니다.

  4. 메세지를 처리하는 인스턴스는 윈도우 gui 를 사용하기 때문에 한대의 장비에서 동시에 하나의 task 만 실행될 수 있습니다.

 

위의 제약조건들로 인하여 gui 기반의 셀레니움 자동화 스크립트를 구성하고 우선큐와 일반큐를 스위칭하면서 10개 이상의 윈도우 장비가 큐를 폴링하고 있습니다.

 

이를 윈도우 장비 하나에 하나의 스탠드얼론 워커를 띄우는 형태로 구성하고. 예를 들어 열개의 인스턴스에 각각하나씩 열개의 스탠드얼론 셀러리 워커를 띄우려고 합니다.

하나의 스탠드 얼론 워커가 두개의 큐를 priority 따라서 폴링하는게 가능할까요? 스펙상에서는 되는거 같긴한데 문서를 봐도 잘 모르겠어서 혹시나 문의드립니다.

 

안된다면 각각의 큐를 폴링하는 스탠드 얼론 워커를 인스턴스에 브로커의 개수만큼 띄우고 (하나의 인스턴스 두개의 스탠드얼론워커) 뒤에 별도의 자동화 로직을 구성하고 큐의 우선순윈는 서비스로직으로 풀어야 하나 고민중입니다.

답변 2

0

모진종님의 프로필 이미지
모진종
질문자

브라우저핸들링은 문제가 없는데 해당 브라우저 후속 프로세스에 exe 파일 실행이 있습니다. exe 파일 격리를 통해서 이걸 빼면 여러개 실행이 될 거도 같은데 현재 상황에선 그걸 기술검토하면서 개선사항을 도출하기 보단 장비 n개 깔아서 통제하는게 급한 상황이라.. 나중에 패킷이라도 따서 개선하는거를 고민해보고는 있습니다 ㅎ
어제 밤에 이전에 봤던 강의 한번 더 보다가 혹시나 하고 질문드렸는데 빠른 답변에 대해서 감사드립니다.

0

미쿡엔지니어님의 프로필 이미지
미쿡엔지니어
지식공유자

안녕하세요 모진종님,

물론 가능합니다. 강의를 들어보시면 아시겠지만 Routing을 사용하셔서 복수의 큐를 읽으실 수 있습니다.

제가 전문가는 아니지만, 서로 다른 Webdriver 사용하시면 여러개의 윈도우도 돌릴수 있지 않나요? 그리고 스케일이 커지신다면 Selenium Grid도 한번 고려해 보시면 리소스를 절약하실 수 있을 듯 합니다.

 

도움이 되셨으면 좋겠습니다.

모진종님의 프로필 이미지
모진종

작성한 질문수

질문하기