agentsclimarketplace

Php concurrency

Skill ComeOnOliver/skillshub/skills/HoangNguyen0403/agent-skills-standard/php-concurrency

Handling concurrency and non-blocking I/O in modern PHP. Use when implementing concurrent requests, async processing, or non-blocking I/O in PHP. (triggers: **/*.php, Fiber, suspend, resume, non-blocking, async)From its SKILL.md

Install
npx -y skills add ComeOnOliver/skillshub --skill php-concurrency

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

1.8 KB, 396 tokens by cl100k_base, as published. Nobody here has run it

PHP Concurrency

Priority: P2 (MEDIUM)

Structure

src/
└── Async/
    ├── Schedulers/
    └── Clients/

Implementation Guidelines

PHP Fibers (8.1+)

  • Multitasking: Use new Fiber() for low-level cooperative multitasking.
  • Yielding Control: Use Fiber::suspend('paused') to yield execution back to the caller.
  • Resuming: Call $fiber->resume('hello') to continue execution. Catch exceptions via $fiber->getReturn().
  • Isolation: Use separate PDO connections per Fiber to avoid shared mutable state.

Non-blocking I/O & Event Loops

  • Loop Setup: Use ReactPHP or Amp. Call Loop::get() to access the event loop.
  • HTTP Clients: Use react/http or the Guzzle Pool($client, ...) for concurrent requests.
  • I/O Safety: Never use blocking file_get_contents or sleep() inside a Fiber or EventLoop.
  • Entry Point: Run Loop::run() at your application entry point to start the async loop.

Concurrency Strategies

  • Queued Jobs: For heavy concurrency, prefer Laravel Horizon or Symfony Messenger over raw PHP Fibers.
  • Self-Contained Logic: Ensure Fibers manage their own state and exceptions to prevent cross-contamination.

Anti-Patterns

  • No deeply nested Fiber suspends: Keep Fiber logic traceable.
  • No blocking I/O inside Fibers: Use async-compatible libraries.
  • No custom scheduler code: Use Amp or ReactPHP instead.

References

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.