> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Concurrency

> Laravel Copilot SDK의 stdio / TCP 모드에서 Laravel Concurrency를 사용해 병렬 실행할 때의 실전 포인트를 설명합니다.

## Laravel의 Concurrency를 사용한 병렬 실행

## stdio 모드의 경우

각각의 프로세스를 기동하는 것은 낭비지만, 이 방식으로만 동작했습니다. Concurrency 내부에서는 복잡한 직렬화를 하므로 SessionEvent 클래스가 아니라 `content()`의 문자열만 반환합니다.

```php theme={null}
use Revolution\Copilot\Facades\Copilot;
use Illuminate\Support\Facades\Concurrency;

$prompt = 'Tell me something about Copilot.';

[$gpt5_response, $sonnet_response] = Concurrency::run([
    fn () => Copilot::run($prompt, config: ['model' => 'gpt-5.2'])->content(),
    fn () => Copilot::run($prompt, config: ['model' => 'claude-sonnet-4.5'])->content(),
]);

echo 'GPT-5 Response: '.$gpt5_response;
echo 'Claude Sonnet Response: '.$sonnet_response;
```

## TCP 모드의 경우

프로세스 기동이 없어 빠를 것 같지만 실제로는 크게 다르지 않았습니다.

Process 드라이버에서는 어느 쪽이든 60초에 타임아웃되는 경우가 많습니다. CLI 환경 전용 `fork` 드라이버에서는 한쪽만 성공했습니다. 예외로 전부 실패가 되지는 않습니다. `gpt-5`만 실패하고 있어서 `gpt-5.2`로 바꿨더니 양쪽 모두 성공했습니다. 단순히 모델의 응답 시간 문제였을 수도 있습니다.

Concurrency는 기능으로 존재하지만 실용화가 가능한지는 불명입니다. 시간이 걸리는 처리는 큐를 사용하는 것이 기본입니다.

<Info>
  최신 정보는 [GitHub 저장소](https://github.com/invokable/laravel-copilot-sdk)를 참고하세요.
</Info>


## Related topics

- [병행 처리](/ko/concurrency.md)
- [Laravel 11에서 12로의 업그레이드 가이드](/ko/blog/upgrade-11-to-12.md)
- [2026년 4월 Laravel 업데이트](/ko/blog/changelog/202604.md)
- [엔진 API 연동 앱 개발 가이드 - VOICEVOX for Laravel](/ko/packages/laravel-voicevox/app-guide.md)
