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
Arquiteturas Multi-Tenant RubyConf 2022
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Gabriel Sobrinho
September 09, 2022
Programming
0
230
Arquiteturas Multi-Tenant RubyConf 2022
Gabriel Sobrinho
September 09, 2022
Tweet
Share
More Decks by Gabriel Sobrinho
See All by Gabriel Sobrinho
Introduction to Go
sobrinho
1
120
Casos de otimização em aplicações Ruby on Rails
sobrinho
0
320
Introduction to automated tests (Goiania)
sobrinho
0
150
Introduction to automated tests
sobrinho
3
240
Otimização de Aplicações RoR
sobrinho
1
280
Introdução ao React (Simplificado)
sobrinho
0
150
Algoritmos de pesquisa
sobrinho
0
680
Introdução ao Docker
sobrinho
1
120
Introdução ao React
sobrinho
0
340
Other Decks in Programming
See All in Programming
MUSUBIXとは
nahisaho
0
130
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.9k
AI & Enginnering
codelynx
0
110
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.3k
今から始めるClaude Code超入門
448jp
8
8.8k
Basic Architectures
denyspoltorak
0
680
Fluid Templating in TYPO3 14
s2b
0
130
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
180
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
3.9k
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
How to build a perfect <img>
jonoalderson
1
4.9k
Test your architecture with Archunit
thirion
1
2.2k
Mind Mapping
helmedeiros
PRO
0
87
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
120
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
180
The untapped power of vector embeddings
frankvandijk
1
1.6k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
86
Designing for humans not robots
tammielis
254
26k
The Spectacular Lies of Maps
axbom
PRO
1
520
Transcript
Arquiteturas Multi-Tenant Gabriel Sobrinho Senior Software Engineer at Code1
O que é um Tenant? @sobrinho
Um tenant é um consumidor lógico da sua aplicação, não
importando o seu tamanho @sobrinho
Podendo ser dimensionado como um usuário, uma organização, um conjunto
de organizações ou qualquer outro agrupamento lógico @sobrinho
None
None
Arquitetura Single-Tenant @sobrinho
A arquitetura Single-Tenant consiste no isolamento da aplicação e banco
de dados para cada unidade consumidora @sobrinho
@sobrinho
@sobrinho
@sobrinho
Vantagens @sobrinho
Isolamento físico completo entre tenants a nível de aplicação e
banco de dados @sobrinho
@sobrinho
@sobrinho
@sobrinho
@sobrinho
Backup e restauração simplificados em caso de desastre @sobrinho
Precificação descomplicada para clientes enterprise @sobrinho
Deploy planejado e incremental para diferentes clientes @sobrinho
Desvantagens @sobrinho
Custos elevados de infra-estrutura Especialmente para clientes que não precisam
de SLA @sobrinho
@sobrinho
@sobrinho
@sobrinho
Alta complexidade na coordenação, monitoramento e redimensionamento @sobrinho
Baixa eficiência no uso de memória, processador e armazenamento @sobrinho
Arquiteturas Multi-Tenant @sobrinho
@sobrinho
Arquiteturas multi-tenant compartilham os recursos alocados para diferentes consumidores afim
de reduzir e simplificar a operação @sobrinho
Aplicação compartilhada Bancos separados @sobrinho
@sobrinho
Aplicação compartilhada Banco compartilhado @sobrinho
@sobrinho
Vantagens @sobrinho
Monitoramento centralizado em aplicações como NewRelic, Scout, AppSignal e etc
@sobrinho
Infra-estrutura simplificada para escalar horizontalmente e/ou verticalmente @sobrinho
Redução do custo operacional @sobrinho
Desvantagens @sobrinho
Alta complexidade para backup e recuperação de dados em caso
de desastre @sobrinho
Como exportar os dados de um único tenant em caso
de encerramento de contrato? @sobrinho
Como recuperar os dados de um único tenant em caso
de desastre? @sobrinho
Falta de isolamento físico entre tenants, isolamento apenas lógico @sobrinho
@sobrinho
@sobrinho
@sobrinho
@sobrinho
Arquitetura Híbrida @sobrinho
Single-Tenant Aplicação Compartilhada Bancos Dedicados Aplicação Compartilhada Banco Compartilhado @sobrinho
Single-Tenant Aplicação Compartilhada Bancos Dedicados Aplicação Compartilhada Banco Compartilhado @sobrinho
Single-Tenant Aplicação Compartilhada Bancos Dedicados Aplicação Compartilhada Banco Compartilhado @sobrinho
Single-Tenant Aplicação Compartilhada Bancos Dedicados Aplicação Compartilhada Banco Compartilhado @sobrinho
Separação Lógica @sobrinho
Foreign Keys @sobrinho
@sobrinho
Postgres Schemas @sobrinho
@sobrinho
Bancos dedicados @sobrinho
@sobrinho
Qual a melhor opção? @sobrinho
¯\_(ツ)_/¯ @sobrinho
Depende do contexto do seu produto, financeiro e operacional @sobrinho
@sobrinho
Performance @sobrinho
Particionamento lógico de dados @sobrinho
Arquiteturas Master/Master e Master/Slave @sobrinho
Escalabilidade horizontal e vertical @sobrinho
Obrigado! @sobrinho
Perguntas? @sobrinho
Estamos contratando! @sobrinho @sobrinho
https://ascendixtech.com/multi-tenant-security-model/ https://www.ronenbekerman.com/showcase/modern-apartment-building-by-vladimir-lyaschenko/ https://www.archdaily.com/217155/single-family-house-in-jozefow-zag-architekci https://www.redbubble.com/i/poster/Everybody-Hates-Chris-by-DiscoveryWord/85976851.LVTDI