- How do I install thruway/client in a Laravel application?
- Install it with Composer using the package name thruway/client, then confirm the ReactPHP and event-loop dependencies match your PHP version. Because it is not a Laravel-native package, expect to add your own configuration and service provider wiring rather than relying on package auto-discovery.
- Is thruway/client compatible with Laravel and PHP versions?
- The package itself is a PHP WAMP client, so Laravel compatibility depends on your PHP, ReactPHP, and Laravel version constraints. You must validate Composer constraints against your app and test under long-running workers or Octane before adopting it. The last release was June 2022, so newer PHP or Laravel versions may require patching.
- Can I use thruway/client for WebSocket pub/sub in Laravel?
- Yes, it can publish and subscribe over WAMP v2 WebSockets when your architecture already includes a WAMP router such as Crossbar or Thruway. In Laravel, run subscriptions in dedicated queue workers or daemon processes rather than normal HTTP requests. Keep the client behind an internal interface so your app does not depend directly on its API.
- Can thruway/client make RPC calls from Laravel?
- Yes, the client supports WAMP remote procedure calls over a persistent connection. Model RPC through an adapter such as an RpcGateway and enforce timeouts, retries, and fallback behavior in your Laravel service. Avoid calling RPC directly from controllers if the connection lifecycle is long-running.
- Should I use thruway/client instead of Laravel queues, events, or broadcasting?
- Usually no for a typical Laravel monolith, because native queues, events, broadcasting, and HTTP clients are simpler and better supported. Consider thruway/client only when WAMP is an existing architectural standard or you need router-based pub/sub or RPC between services. It is best treated as a bounded integration adapter, not a core platform dependency.
- How do I run a thruway/client subscriber in Laravel production?
- Host the subscriber in a long-running CLI worker or daemon managed by Supervisor or your existing process manager. Add memory monitoring, graceful restarts, backpressure handling, and reconnect logic because the ReactPHP event loop keeps the process alive. Test message throughput and fan-out against realistic volumes before relying on it.
- What are the maintenance risks of using thruway/client?
- The project has very low adoption, an unknown repository reference, and a last release in June 2022, which suggests stale dependencies and unclear security maintenance. Treat source-code review, license review, dependency pinning, and a fork or vendor-patch plan as mandatory. Expect internal ownership rather than a reliable upstream release cadence.
- Does thruway/client work with Laravel Octane or long-running workers?
- It can work in long-running contexts because it is built on ReactPHP and the event loop, but it is not designed for standard HTTP request lifecycles. Validate behavior under Octane and dedicated workers, including connection reuse, reconnects, heartbeats, and memory growth. Prefer isolating WAMP connections in workers rather than coupling them to web requests.
- What WAMP router and protocol version does thruway/client require?
- The package is described as a WAMP v2 client, so it should target a WAMP v2-compatible router such as Crossbar or Thruway. Confirm the exact router version, authentication, TLS, and reconnect behavior during a time-boxed proof of concept. Protocol or router version drift is a real compatibility risk.
- What alternatives should I consider before adopting thruway/client?
- For normal Laravel pub/sub and async work, evaluate Redis queues, Laravel events, broadcasting, and HTTP clients first. If you need WAMP, compare maintaining your own adapter, forking thruway/client, or using a more actively maintained WAMP client. Adopt it only when a WAMP router is already part of your architecture or clearly justified.