$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Migração eficiente: do Laravel ao Hyperf
Search
schons
May 31, 2025
Programming
0
3
Migração eficiente: do Laravel ao Hyperf
Palestra desenvolvida para o Ingá.php 2025
schons
May 31, 2025
Tweet
Share
More Decks by schons
See All by schons
Design for Failure 2.0
sschonss
0
10
Design for Failure: Padrões de Resiliência
sschonss
0
13
Entregas de valor: estratégias para equipes de alta performance
sschonss
0
4
Acelerando a arquitetura de microservicos com PHP: uma introdução ao Hyperf
sschonss
0
7
Desenvolvedor além do código
sschonss
0
5
CORS: no Postman funciona!
sschonss
1
7
Other Decks in Programming
See All in Programming
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
240
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
250
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
11k
AIコーディングエージェント(skywork)
kondai24
0
130
NUMA環境とコンテナランタイム ― youki における Linux Memory Policy 実装
n4mlz
1
210
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
120
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
160
関数の挙動書き換える
takatofukui
4
770
Level up your Gemini CLI - D&D Style!
palladius
1
180
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.2k
FluorTracer / RayTracingCamp11
kugimasa
0
200
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
200
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
697
190k
Speed Design
sergeychernyshev
33
1.4k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
What's in a price? How to price your products and services
michaelherold
246
12k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Optimizing for Happiness
mojombo
379
70k
The Invisible Side of Design
smashingmag
302
51k
Being A Developer After 40
akosma
91
590k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Context Engineering - Making Every Token Count
addyosmani
9
480
Optimising Largest Contentful Paint
csswizardry
37
3.5k
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