---
title: "Parallel Task Execution in PHP... with Go"
url: https://daily.dev/posts/parallel-task-execution-in-php-with-go-hb3ifarpn
source_url: https://maximegosselin.com/posts/parallel-task-execution-in-php-with-go/
type: article
source: "Maxime Gosselin"
published: 2026-03-22T11:39:32.187Z
updated: 2026-03-22T11:39:53.173Z
tags: ["golang", "php"]
reading_time: 6
upvotes: 0
comments: 0
language: en
---

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

# Parallel Task Execution in PHP... with Go

**[Maxime Gosselin](https://daily.dev/sources/maximegosselin)** · 6 min read · 0 upvotes · 0 comments

## Summary

Gyproc is a small Go tool (~200 lines) that enables parallel task execution from PHP by delegating concurrency to Go goroutines. PHP, being inherently blocking, sends a list of commands to Gyproc, which runs them in parallel and streams back a newline-delimited JSON event stream. Each event is tagged with a `seq` identifier so the PHP client can track individual process progress, output, and exit codes in real time. The post compares alternatives like shell backgrounding, `pcntl`, and `spatie/async`, explaining why each falls short, then walks through a concrete image-resizing example using ImageMagick with a concurrency limit.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://maximegosselin.com/posts/parallel-task-execution-in-php-with-go/>

---

Tags: [#golang](https://daily.dev/tags/golang), [#php](https://daily.dev/tags/php)

[View this post on daily.dev](https://daily.dev/posts/parallel-task-execution-in-php-with-go-hb3ifarpn)
