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
0
120
Backend de jogos multiplayer
Rodrigo Delduca
August 15, 2017
Tweet
Share
More Decks by Rodrigo Delduca
See All by Rodrigo Delduca
Mágica com Qt’s meta-object system
skhaz
1
86
Como criar o seu próprio joystick
skhaz
0
2.2k
Other Decks in Programming
See All in Programming
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
260
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
970
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
7.8k
効率的な開発手段として VRTを活用する
ishkawa
0
150
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
140
ニーリーにおけるプロダクトエンジニア
nealle
0
880
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
5
1.2k
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
180
GPUを計算資源として使おう!
primenumber
1
180
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
780
Hack Claude Code with Claude Code
choplin
5
2.3k
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
2
14k
Featured
See All Featured
The Language of Interfaces
destraynor
158
25k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Speed Design
sergeychernyshev
32
1k
Six Lessons from altMBA
skipperchong
28
3.9k
Practical Orchestrator
shlominoach
189
11k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
970
Designing for Performance
lara
610
69k
4 Signs Your Business is Dying
shpigford
184
22k
Embracing the Ebb and Flow
colly
86
4.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
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!