Creating Microservices in Laravel (repost)
Background Processing and Microservices
Github estimated that over 40% of workloads are processed in the background. At Iron.io, we have a number of customer stories that back this up including Untappd. In a detailed case study we show how they greatly reduced their user response times by moving 10 different events to the background and processing them using IronWorker.
Creating microservices is an extension of this, essentially formalizing the concept of a worker into a task-specific API-driven service that is highly available and can be run on-demand. The benefits of moving from a monolithic application to a more distributed one are many. They include faster response times (by moving certain events to the background), more effective scaling, a more robust application, and much faster feature development.
In computing, microservices is a software architecture design pattern, in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs. These services are small, highly decoupled, and focus on doing a small task.
– Wikipedia
Iron.io Serverless Tools
Speak to us to learn how IronWorker and IronMQ are essential products for your application to become cloud elastic.
Distributing Workloads in Laravel
By creating workers within IronWorker, Alfred Nutile is able to separate tasks from the main application and then distribute the processing so that multiple events can run concurrently without having to manage any servers or infrastructure.
Alfred's post does a great job of walking through the steps of creating workers, uploading them, and then calling them within his application. It's a very thorough write-up and includes code and a number of screenshots. We definitely recommend checking it out.
To read the full post, go here >>
Unlock the Cloud with Iron.io
Find out how IronWorker and IronMQ can help your application obtain the cloud with fanatical customer support, reliable performance, and competitive pricing.