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
Backend de jogos multiplayer
Search
Rodrigo Delduca
August 15, 2017
Programming
130
0
Share
Backend de jogos multiplayer
Rodrigo Delduca
August 15, 2017
More Decks by Rodrigo Delduca
See All by Rodrigo Delduca
Mágica com Qt’s meta-object system
skhaz
1
98
Como criar o seu próprio joystick
skhaz
0
2.2k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
140
「Linuxサーバー構築標準教科書」を読んでみた #ツナギメオフライン.7
akase244
0
1.4k
書き換えて学ぶTemporal #fukts
pirosikick
2
350
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
360
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
21
11k
[RubyKaigi 2026] Require Hooks
palkan
1
290
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
5
1.1k
実践ハーネスエンジニアリング:ステアリングループを実例から読み解く / Practical Harness Engineering: Understanding Steering Loops Through Real-World Examples
nrslib
4
3.8k
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
290
SREに優しいTerraform構成 modulesとstateの組み方
hiyanger
2
170
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
2.8k
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
1.6k
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
HDC tutorial
michielstock
2
650
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
690
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
110
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Designing for Performance
lara
611
70k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
140
Skip the Path - Find Your Career Trail
mkilby
1
110
Marketing to machines
jonoalderson
1
5.2k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
240
Transcript
Backend de jogos multiplayer Rodrigo Delduca (@skhaz) https://skhaz.io https://nullonerror.org https://ultratech.software
PUC PR - 2017
Brace yourself. Sopa de letrinhas is coming!
Formas de comunicação • TCP • UDP • RawSocket •
WebSockets • SocketIO • WebRTC
Arquitetura
Otimizando o tamanho do payload
Otimizando o tamanho do payload payload = { "UpPressed": true,
"downPressed": false, "attackPressed": true } // 76 bytes
Otimizando o tamanho do payload payload = { "u": true,
"d": false, "a": true } // 46 bytes
Escovando os bits
Escovando os bits
Escovando os bits
Escovando os bits
Escovando os bits
Tecnologias • C/C++ • Python • Elixir • Java •
NodeJS • Swift • Erlang • … Ou qualquer outra linguagem que permita abrir uma conexão.
Qual tecnologia é melhor?
Qual tecnologia é melhor? A que você dominar melhor*
Qual tecnologia é melhor? A que você dominar melhor* só
não vale usar Visual Basic :)
E onde hospedar? • Google Cloud • Heroku • Digital
Ocean • Amazon Web Services (AWS) • Scaleway • Rackspace • Azure • IBM Bluemix
Banco de dados • PostgreSQL, MySQL, Oracle e SQLite (relacional)
• MongoDB, CouchBase e RethinkDB (orientado a documento) • Redis, memcached e Cassandra (chave-valor) • Neo4J e ArangoDB (banco de dados de grafos)
Outras alternativas … Que podem ser ideias para hackathon e
gamejams
Exemplo usando Socket.IO
Demo http://bit.ly/pucpr-mmo
• https://davidwalsh.name/websocket • http://blog.soom.la/2016/02/top-10-parse-alternatives-game-backend.html • https://realm.io/docs/realm-object-server/ • https://firebase.google.com/ • http://heroku.com/
• https://www.meteor.com/ • https://phaser.io • https://socket.io/ • https://cloud.google.com/ • http://choongsoo.info/docs/starcraft2.netgames12.pdf • https://blog.heroku.com/introducing_session_affinity
Perguntas?
Muito obrigado :) Scorpion wins Flawless victory Fatality!