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

Hwaseong Nam님의 프로필 이미지
Hwaseong Nam

작성한 질문수

고수가 되는 파이썬 : 동시성과 병렬성 문법 배우기 Feat. 멀티스레딩 vs 멀티프로세싱 (Inflearn Original)

멀티프로세싱 구현 시 플라스크 서버 구성

작성

·

539

0

안녕하세요. 강사님의 강의 유익하게 듣고 있습니다.
제가 강사님의 풀스택 백엔드와 해당 병렬처리 강의를 듣는 도중 질문사항이 있어 질의 드립니다.
 
현재 AI로 영상 디텍션을 하는 코드를 구현하고 해당 코드에 대해 연결된 영상장치 갯수만큼 멀티프로세스를 통해 자식 프로세스를 생성하여 돌리는 형태로 코드를 구성하였습니다.(cctv가 4개면 멀티프로세싱을 통해 동일한 기능을 채널4개에 대해 동작하는 형태)
 
클라이언트에서 변경사항이 발생하면 API를 통해(flask) 값을 변경하려 할 경우, 변경하고자 하는 cctv 채널에 변경값을 전달하는 방법이 궁금합니다.
아래 두 방법 중 어느 방법이 효율이 좋은 것인지, 아니면 둘다 좋지 못한 방법인지 질문드립니다.
 
1) 메인 프로세스에 플라스크 서버 하나를 구성한 후 특정 채널의 변경이 발생하면 해당채널(자식프로세스)과 설정한 공유메모리를 통해 값을 전달하는 방법
2) 각 자식프로세스를 생성할 때마다 플라스크 서버를 생성하여 직접 채널별 API를 구성하는 방법
 
두 수업을 듣다보니 어느쪽에 질의를 올릴지 애매해서 이곳에 올리게 되었습니다.

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

네 안녕하세요.

최종 데이터의 수정 , 가공이 이루어 진다면 1번 방향으로 가야 될것같습니다.

또는 2번으로 하면 성능이 좀더 좋을 것입니다. 각 채널 별로 독립적으로 데이터 처리 후 

데이터 베이스를 사용한다면, 브로커에 맞게 잘 저장을 해줘야 겠네요~

Hwaseong Nam님의 프로필 이미지
Hwaseong Nam

작성한 질문수

질문하기