Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Devolta ao Monolito
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
reinaldob
March 28, 2016
Programming
0
64
Devolta ao Monolito
Uma discussão sobre Microserviços e Monolito
reinaldob
March 28, 2016
Tweet
Share
More Decks by reinaldob
See All by reinaldob
Sistemas Distribuidos Escaláveis com Microserviços
reinaldob
0
58
Home Office
reinaldob
0
87
QCon SP 2013 - Legado Vale Ouro
reinaldob
0
58
Other Decks in Programming
See All in Programming
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
120
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
730
Oxlint JS plugins
kazupon
1
930
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
280
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.4k
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
4
600
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.8k
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
690
CSC307 Lecture 03
javiergs
PRO
1
490
CSC307 Lecture 06
javiergs
PRO
0
680
Featured
See All Featured
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
49
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
65
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
We Are The Robots
honzajavorek
0
160
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
200
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Facilitating Awesome Meetings
lara
57
6.8k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
77
The Curious Case for Waylosing
cassininazir
0
230
Transcript
De volta ao monolito
@reinaldob • Mais de 20 anos de experiência em desenvolvimento
• Programador na Spree Commerce Inc. • Empresa focada em eCommerce • Equipe distribuída • 99% home office
None
Nossa Equipe • Washington-EUA(HQ) • Vermont-EUA • Polônia • São
Paulo • Piauí
2 times
Antes de começar…
None
Como era no início?
Store (Rails, Repo) • Acessado por um volume de usuários
específico • Tem mecanismo de cache diferente • Requisitos diferentes de disponibilidade
Admin (Rails, Repo) • Acessado só pelo administrador • Baixo
acesso • Disponibilidade relaxada
Checkout (Rails, Repo) • Unico app para todas as lojas
• Requisitos de segurança diferentes • Mais simples, menos deploys
Site (Rails, Repo) • App para autenticação • Segurança alta
• Utilizado para o Store e Admin
• Nova feature, temas! • Separar para poder ser feito
fora • Reuso Themes (Gem, Repo)
• Reuso • Duplicação • Sem lugar definido • API
Core (Gem, Repo)
Core (Gem, Repo) Themes (Gem, Repo) Admin (Rails, Repo) Store
(Rails, Repo) Checkout (Rails, Repo) Site (Rails, Repo)
Infra • Docker para cada Rails • Git repo para
cada projeto • Git Flow • AWS (elb, ec2, s3, etc..) • DynamoDB
1 Devops
None
None
Mas as coisas começaram a mudar
Deploy demorado • Tempo para rodar CI • Gerar imagem(AMI)
• Publicar • Montar servidores(EC2, ELB, etc) • 15min por projeto(4 projetos)
Dependencias • 5 projetos • Nova versão, 5 tags, 5
releases, 5 … • 1 Bug = Git flow hell
Duplicação • I18n • Assets • Presenters • Tool (CodeClimate)
FTW
Evolução Rápida • Startup • Features ortogonais a todo o
tempo • Time to Market • Times Pequenos
None
Mesmo assim ta tudo bem…
None
Passo 1
Criar apenas 1 repo • Crazy Ideas • Similar à
Open Source • Sem julgamento
Criar apenas 1 repo • Tag para 1 repo •
Melhor visão (encontrando problemas) • Sem sofrimento para bugs
Passo 2
Deploy • Processo de rodar o CI • Como geramos
as imagens (AMI) • Normalizamos as apps para usarem a mesma estrutura e assim reutilizar as configs
None
Passo 3
Admin + Site • A app site estava meio perdida,
ai margeamos com o Admin • Um passo seguro
Passo 4
Infra • A infra foi toda redesenhada • Tudo imutável
• Evidenciou nossos problemas • Ficou muito pior do que estava
Passo 5
Mergear Tudo • Crazy Ideas de novo • Todos os
projetos viraram 1 só • Rotas, views, assets, etc
Como ficou?
Themes (pasta) Admin Store Site Checkout (Rails) Core (pasta) Repo
• I18n centralizada • Assets centralizados • Packages/Namespaces melhores • Melhores specs
Admin Store Site Checkout (Rails) AMI • CI em 8min
(mesmo com o dobro de features) • Deploy 10min • Scripts de infra simplificados • Arquitetura 100% imutável (inclusive o banco de dados)
E estamos felizes no momento =)
Mas não mudamos só código!
Arquitetura tem que ser baseada no negócio e nas pessoas.
Conway Law
Reavalie seu ambiente com olhos de fora sempre que possível
Ouça seu time
Experimente, experimente e experimente…
Ouça o mercado também, mas não muito…
Obrigado :) Dúvidas?