멀티 Agent

동시 실행의 비용: 누가 동시에 실행될 수 있나?

읽기는 병렬 가능합니다: 여러 검색을 동시에 실행해도 충돌하지 않습니다. 쓰기는 순서대로 해야 합니다: 두 Agent가 동시에 같은 파일을 수정하면 문제가 생깁니다. 작업의 병렬 가능 여부를 판단하는 핵심은 단 하나: 읽기 전용인가요?

병렬 가능 vs 직렬 필수
병렬 가능 (읽기 전용 작업)
웹 검색
파일 읽기
API 쿼리
데이터 분석
데이터베이스 쿼리
메모 읽기

이 작업들은 아무것도 수정하지 않으므로 여러 개가 동시에 실행되어도 서로 영향을 주지 않습니다. 10개의 Agent가 동시에 검색해도 충돌하지 않습니다.

직렬 필수 (쓰기 작업)
파일 쓰기
이메일 전송
명령 실행
리소스 삭제
결제 작업
메모 편집

이 작업들은 외부 상태를 변경합니다. 두 Agent가 동시에 같은 파일을 수정하면 = 데이터 덮어쓰기, 내용 손실.

타임라인 비교

동일 태스크: 검색 3회 + 쓰기 1회

검색 3개 병렬, 쓰기는 마지막
검색 A
2s
검색 B
3s
검색 C
2s
쓰기
1s
0s2s4s6s
총 소요 시간: ~4초 ✓
판단 규칙
병렬 가능 여부를 판단하는 한 가지 규칙:
이 작업이 완료된 후 외부 상태가 변했나요? 변하지 않음 → 병렬 가능
이 작업이 완료된 후 외부 상태가 변했나요? 변함 → 순서대로 처리 필요
두 쓰기 작업이 서로 다른 대상을 수정한다면 (다른 파일, 다른 DB 테이블) → 병렬 가능

간단히 말해: 충돌은 여러 작업이 같은 리소스를 수정할 때 발생합니다. 대상이 다르다면 쓰기 작업끼리도 병렬로 실행할 수 있습니다.

병렬 실행은 시간을 절약하지만, 읽기 전용 작업만 안전합니다. 쓰기가 포함된 작업은 순서대로 처리해야 합니다. 멀티 Agent 시스템을 설계할 때 첫 번째 단계는 도구를 "읽기"와 "쓰기" 두 가지로 분류하는 것입니다.