Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Connection Manager Extra Laravel Package

clue/connection-manager-extra

Extra connector decorators for ReactPHP Socket. Wrap ConnectorInterface to add retries, timeouts, delays, rejection rules, swapping, consecutive/random selection, concurrency limits and selective routing—without changing your async connect() code.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. Buy: Buy – This package eliminates the need to build custom retry, timeout, or connection management logic from scratch, saving engineering time and reducing technical debt. Ideal for teams already using ReactPHP’s async ecosystem.
  • Feature Expansion: Enables advanced connection strategies (e.g., circuit breakers, connection pooling, or geo-based routing) without rewriting core networking logic.
  • Roadmap Prioritization:
    • High: Async-first architectures (e.g., real-time APIs, WebSockets, or high-throughput services).
    • Medium: Legacy systems migrating to non-blocking I/O (e.g., replacing fsockopen() with ReactPHP).
    • Low: Synchronous or low-latency-critical applications (e.g., CLI tools with strict timeout needs).
  • Use Cases:
    • Resilience: Retry failed connections (e.g., flaky third-party APIs) with ConnectionManagerRepeat.
    • Security: Block malicious domains via ConnectionManagerSelective + ConnectionManagerReject.
    • Performance: Delay non-critical connections (e.g., ads) with ConnectionManagerDelay.
    • Load Balancing: Distribute connections across endpoints using ConnectionManagerRandom or ConnectionManagerConcurrent.
    • Compliance: Enforce TLS/SSL policies by routing traffic through specific connectors.

When to Consider This Package

Adopt if:

  • Your stack uses ReactPHP (or async PHP) and needs connection decorators (retry, timeout, selective routing).
  • You require fine-grained control over connection behavior (e.g., per-domain policies, dynamic failover).
  • Your team lacks expertise in low-level async networking but needs production-grade resilience.
  • You’re building scalable async services (e.g., proxies, gateways, or real-time systems).

Look elsewhere if:

  • Your app is synchronous (e.g., traditional Laravel monoliths without async routes).
  • You need blocking I/O (e.g., file operations, database queries in sync contexts).
  • You’re using alternative async frameworks (e.g., Swoole, RoadRunner’s built-in connectors).
  • Your use case is simple (e.g., single connection with no retries/timeouts).
  • You require GUI-based tools (this is CLI/server-only).

How to Pitch It (Stakeholders)

For Executives: "This package lets us safely scale our async services by adding retry logic, timeouts, and smart routing to network connections—without hiring specialized engineers*. For example:

  • Reduce downtime by auto-retrying failed API calls (e.g., payment gateways).
  • Improve security by blocking malicious domains at the connection layer.
  • Cut costs by delaying non-critical traffic (e.g., ads) to reduce server load. It’s a drop-in upgrade for our ReactPHP stack, with zero runtime overhead when unused. Competitors like Swoole offer similar features but require rewriting core logic."*

For Engineers: *"This is a batteries-included library for ReactPHP’s Socket component. It gives you:

  • Retry decorators (ConnectionManagerRepeat) for flaky services.
  • Timeouts (ConnectionManagerTimeout) to avoid hanging.
  • Selective routing (ConnectionManagerSelective) for ACLs or geo-based rules.
  • Concurrent/Random failover for load balancing. All decorators chain cleanly—compose them like Lego blocks. Example:
$connector = new ConnectionManagerRepeat(
    new ConnectionManagerTimeout($socketConnector, 2.0),
    3
); // Retry 3x with 2s timeout

No need to reinvent wheels—just slap this on your existing ConnectorInterface implementations. MIT-licensed, PHP 5.3–8.5 compatible, and battle-tested in high-traffic async apps."*

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky