Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Migração eficiente: do Laravel ao Hyperf
Search
schons
May 31, 2025
Programming
23
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Migração eficiente: do Laravel ao Hyperf
Palestra desenvolvida para o Ingá.php 2025
schons
May 31, 2025
More Decks by schons
See All by schons
Carreira Dev
sschonss
0
9
Migração de Arquitetura
sschonss
0
12
Design for Failure 2.0
sschonss
0
35
Design for Failure: Padrões de Resiliência
sschonss
0
43
Entregas de valor: estratégias para equipes de alta performance
sschonss
0
26
Acelerando a arquitetura de microservicos com PHP: uma introdução ao Hyperf
sschonss
0
25
Desenvolvedor além do código
sschonss
0
40
CORS: no Postman funciona!
sschonss
0
32
Other Decks in Programming
See All in Programming
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5k
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
310
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
120
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
120
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
340
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
270
contenteditable と日本語入力に向き合う
colorful12
0
180
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
570
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
450
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
110
Kubernetes祭り #2 OP/ED
bells17
0
110
Androidだけじゃない、DroidKaigiで広がった私の技術スタック
akkeylab
0
120
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Build your cross-platform service in a week with App Engine
jlugia
234
19k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
350
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Darren the Foodie - Storyboard
khoart
PRO
4
4k
BBQ
matthewcrist
90
10k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
RailsConf 2023
tenderlove
30
1.6k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
320
We Have a Design System, Now What?
morganepeng
55
8.4k
Optimizing for Happiness
mojombo
378
71k
WENDY [Excerpt]
tessaabrams
14
40k
Transcript
MIGRAÇÃO EFICIENTE DO LARAVEL PARA O HYPERF
• Canionista / Montanhista • Atleta de CA • BJJ
• DevParaná • UTFPR • schons.hashnode.dev • Co-Founder Polyglot.ai • Uma curiosidade… Luiz Schons
Disclaimer! 1. Não sou especialista em nada 2. Analise o
cenário que você está 3. Não existe bala de prata 4. Estude e estude…
MIGRAÇÃO DE SOFTWARE UM POUCO DO QUE EU JÁ PASSEI
Vamos entender um pouco dessa história QUAL ERA O CENÁRIO
QUE A GENTE ESTAVA?
None
None
None
Motivos 1. Decisões não assertivas no passado. 2. Programar pisando
em ovos. 3. Performance (Não era culpa do Laravel). 4. Micro-serviço que não era micro. (Domínios) 5. O Deploy era tenso.
POR QUE HYPERF?
None
None
None
None
Motivos 1. Toda a equipe tinha conhecimento em PHP. 2.
Coroutine & Non-Blocking System. 3. Desafio. 4. Performance (Swoole).
Swoole é uma runtime PHP que permite a programação assíncrona
de alta performance, com suporte a coroutines, melhorando significativamente a capacidade de processamento e escalabilidade de aplicações web. ENTENDENDO SWOOLE
FPM X SWOOLE
COMO PLANEJAMOS?
1. Definimos onde queríamos chegar: um software com uma experiência
de desenvolvimento melhor (DX). 2. Entendemos melhor os domínios da aplicação. 3. Criamos um plano de ação. mas nem tudo são flores….
Começou o primeiro desafio
Procedimento 1º Migrar o banco de dados. 2º Migrar o
framework
Começou o segundo desafio
MAS COMO DEFINIR DOMÍNIOS?
None
Elephant Migration AntiPattern
BIFURCAÇÃO TÁTICA OU DECOMPOSIÇÃO BASEADA EM COMPONENTES?
DECOMPOSIÇÃO BASEADA EM COMPONENTES • Refatoração. • Extração de componentes.
• Incremental e controlada.
BIFURCAÇÃO TÁTICA • Réplicas dos serviços. • Remoção de partes
indesejadas.
Arquitetura de Software: as Partes Difíceis: Análises Modernas de Trade-off
Para Arquiteturas Distribuídas
Encontramos um problema Documentação desatualizada
Começou o terceiro desafio Documentação desatualizada Documentação + Architecture Decision
Records (ADR)
Procedimento 1º Migrar o banco de dados. 2º Migrar o
framework. 2º Entender os domínios e separar. 3º Documentar (software e decisões).
Voltando ao segundo desafio
1. Muitas responsabilidades para um "micro-serviço" só. 2. Acoplamento muito
forte entre diferentes domínios da aplicação. 3. Deploy impactava muito no ambiente de produção.
None
None
Procedimento 1º Migrar o banco de dados. 2º Migrar o
framework. 2º Entender os domínios e separar. 3º Documentar (software e decisões). 4º Testes
MAS COMO A EQUIPE REAGIU?
None
1. Comunicação interna bem alinhada com outros setores da empresa.
2. Suporte técnico e espaço para aprendizado contínuo. 3. Medo virou animação. 4. Evolução pessoal e do time.
None
None
MAS E AI? VALE A PENA?
None
Ainda tem muita coisa a evoluir, mas o primeiro passo
foi dado.
Avalie a palestra