SlideShare a Scribd company logo
ZgPHP #97
Luka Vavetić and Frano Šašvari:
Microservice architecture in Laravel
www.typeqast.com
ZgPHP #97
Luka Vavetić and Frano Šašvari:
Microservice architecture in Laravel
ABOUT US
• Luka, PHP developer
• Frano, PHP developer
ABOUT PROJECTS
• Backend: PHP (Laravel framework, Doctrine ORM)
• Database: MySQL
• Other: SOAP, RabbitMQ, Docker, Postman…
• Testing: Unit, Integration
TOPICS
RPC STYLE
API
RABBITMQ VALIDATION
HISTORY TESTS
RPC STYLE API
• RPC - Remote Procedure Call
• JSON body
• Why RPC?
• Not for everything (CRUDs?)
• Depends on business logic
RPC STYLE API
REST RPC
• users (GET)
• users/1 (GET)
• users (POST)
• users/1 (PUT/PATCH)
• users/1 (DELETE)
• users.list (GET)
• users.info (GET)
• users.create (POST)
• users.update (POST)
• users.delete (POST)
RPC STYLE API
REST RPC
• users/registration (POST) OR
• users (POST) OR
• registration (POST)
• users.registration (POST)
• users/1/teams/2 (POST)
• users/1/channels/2 (DELETE)
• teams.addUser (POST)
• channels.leave (POST)
RABBITMQ
• Message broker
• Glue in microservice arhitecture
• Publisher/Subscriber
RABBITMQ
RABBITMQ SENDER
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
RABBITMQ CONSUMER
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
VALIDATION
• Laravel’s Validation was not enough
• Why not use Laravel’s FormRequest?
• Custom Validation with error codes needed
• How to handle Validation exceptions?
• Better and more strict communication between
other APIs and frontend APPs
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
HISTORY
• Watch changes on important Entities
• Package? Doctrine Loggable
• Rollback option with versioning
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
TESTS
• Unit Tests
• Integration Tests
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
ZgPHP 97 - Microservice architecture in Laravel
THANK YOU
Drop us a line:
• frano.sasvari@typeqast.com
• luka.vavetic@typeqast.com
Questions?

More Related Content

What's hot (20)

PDF
Exposer des services web SOAP et REST avec symfony 1.4 et Zend Framework
Hugo Hamon
 
PPTX
Laravel overview
Obinna Akunne
 
PPSX
Conhecendo o Django
Marcos Thomaz
 
PPTX
Laravel ppt
Mayank Panchal
 
PDF
Postman 101 for Students
Postman
 
PDF
Apresentação maven
André Justi
 
PDF
Space Camp - API Contract Testing
Postman
 
PPSX
CI-CD Jenkins, GitHub Actions, Tekton
Araf Karsh Hamid
 
PDF
Business Transactions with AppDynamics
AppDynamics
 
PDF
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Ana Medina
 
PDF
CQRS without event sourcing
Thomas Pierrain
 
PPTX
Laravel introduction
Simon Funk
 
PPTX
An Introduction to Prometheus (GrafanaCon 2016)
Brian Brazil
 
PPTX
Final terraform
Gourav Varma
 
PPTX
Laravel
Dyuti Islam
 
PDF
Terraform
Christophe Marchal
 
PPTX
What is an API
Elliott Richmond
 
PDF
What is Docker Architecture | Edureka
Edureka!
 
ODP
Introduction to Swagger
Knoldus Inc.
 
PDF
Testando uma aplicação com Arquitetura Hexagonal e Spring Boot
Henrique Schmidt
 
Exposer des services web SOAP et REST avec symfony 1.4 et Zend Framework
Hugo Hamon
 
Laravel overview
Obinna Akunne
 
Conhecendo o Django
Marcos Thomaz
 
Laravel ppt
Mayank Panchal
 
Postman 101 for Students
Postman
 
Apresentação maven
André Justi
 
Space Camp - API Contract Testing
Postman
 
CI-CD Jenkins, GitHub Actions, Tekton
Araf Karsh Hamid
 
Business Transactions with AppDynamics
AppDynamics
 
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Ana Medina
 
CQRS without event sourcing
Thomas Pierrain
 
Laravel introduction
Simon Funk
 
An Introduction to Prometheus (GrafanaCon 2016)
Brian Brazil
 
Final terraform
Gourav Varma
 
Laravel
Dyuti Islam
 
What is an API
Elliott Richmond
 
What is Docker Architecture | Edureka
Edureka!
 
Introduction to Swagger
Knoldus Inc.
 
Testando uma aplicação com Arquitetura Hexagonal e Spring Boot
Henrique Schmidt
 

Similar to ZgPHP 97 - Microservice architecture in Laravel (20)

PDF
Develop microservices in php
Zend by Rogue Wave Software
 
PPT
nguyenhainhathuy-building-restful-web-service
hazzaz
 
PDF
Building APIs in an easy way using API Platform
Antonio Peric-Mazar
 
PDF
Creating native apps with WordPress
Marko Heijnen
 
PPT
Hanoi php day 2008 - 05. nguyen hai nhat huy - building-restful-web-service-w...
Nguyen Duc Phu
 
PDF
Modern Functional Fluent CFML REST by Luis Majano
Ortus Solutions, Corp
 
PDF
What's New In Laravel 5
Darren Craig
 
PDF
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpcondo
Shohei Okada
 
PDF
SDPHP Lightning Talk - Let's Talk Laravel
marcusamoore
 
PDF
REST easy with API Platform
Antonio Peric-Mazar
 
ODP
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
King Foo
 
PDF
Expressive Microservice Framework Blastoff
Adam Culp
 
PPTX
Dmytro Dziubenko "Developer's toolchain"
Fwdays
 
PDF
Introduction to Zend Framework web services
Michelangelo van Dam
 
PPTX
Creating web APIs with apigility
Kaloyan Raev
 
PDF
Don't screw it up: how to build durable web apis
Alessandro Cinelli (cirpo)
 
PDF
Don't screw it up: how to build durable web apis @ PHPDay 2014 in Verona (ITA)
Alessandro Nadalin
 
PDF
Building APIs in an easy way using API Platform
Antonio Peric-Mazar
 
PDF
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpconokinawa
Shohei Okada
 
PDF
Service-Oriented Architecture
Samantha Geitz
 
Develop microservices in php
Zend by Rogue Wave Software
 
nguyenhainhathuy-building-restful-web-service
hazzaz
 
Building APIs in an easy way using API Platform
Antonio Peric-Mazar
 
Creating native apps with WordPress
Marko Heijnen
 
Hanoi php day 2008 - 05. nguyen hai nhat huy - building-restful-web-service-w...
Nguyen Duc Phu
 
Modern Functional Fluent CFML REST by Luis Majano
Ortus Solutions, Corp
 
What's New In Laravel 5
Darren Craig
 
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpcondo
Shohei Okada
 
SDPHP Lightning Talk - Let's Talk Laravel
marcusamoore
 
REST easy with API Platform
Antonio Peric-Mazar
 
Building Web Services with Zend Framework (PHP Benelux meeting 20100713 Vliss...
King Foo
 
Expressive Microservice Framework Blastoff
Adam Culp
 
Dmytro Dziubenko "Developer's toolchain"
Fwdays
 
Introduction to Zend Framework web services
Michelangelo van Dam
 
Creating web APIs with apigility
Kaloyan Raev
 
Don't screw it up: how to build durable web apis
Alessandro Cinelli (cirpo)
 
Don't screw it up: how to build durable web apis @ PHPDay 2014 in Verona (ITA)
Alessandro Nadalin
 
Building APIs in an easy way using API Platform
Antonio Peric-Mazar
 
クリーンアーキテクチャの考え方にもとづく Laravel との付き合い方 #phpconokinawa
Shohei Okada
 
Service-Oriented Architecture
Samantha Geitz
 
Ad

Recently uploaded (20)

PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
July Patch Tuesday
Ivanti
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Ad

ZgPHP 97 - Microservice architecture in Laravel