Enviar pesquisa
Carregar
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysing Needs Of Massively Multiplayer Online Game Servers
•
10 gostaram
•
2,446 visualizações
l xf
Seguir
Tecnologia
Notícias e política
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 16
Baixar agora
Baixar para ler offline
Recomendados
Jai kumar fpga_prototyping
Jai kumar fpga_prototyping
Obsidian Software
Siyapath - A P2P, Gossip based Volunteer Computing Framework
Siyapath - A P2P, Gossip based Volunteer Computing Framework
Nadeeshani Hewage
Anatomy of the MMO
Anatomy of the MMO
George Dolbier
Mmorpg
Mmorpg
Tímea Kovács
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
Amazon Web Services
Clash royale hack
Clash royale hack
loseclashroyale clashroyale
Supercell Company report
Supercell Company report
Brandon Kittle
brgames_games
brgames_games
Sung Goo Lee
Recomendados
Jai kumar fpga_prototyping
Jai kumar fpga_prototyping
Obsidian Software
Siyapath - A P2P, Gossip based Volunteer Computing Framework
Siyapath - A P2P, Gossip based Volunteer Computing Framework
Nadeeshani Hewage
Anatomy of the MMO
Anatomy of the MMO
George Dolbier
Mmorpg
Mmorpg
Tímea Kovács
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
Amazon Web Services
Clash royale hack
Clash royale hack
loseclashroyale clashroyale
Supercell Company report
Supercell Company report
Brandon Kittle
brgames_games
brgames_games
Sung Goo Lee
The Multiplayer Classroom: Designing Coursework as a Game
The Multiplayer Classroom: Designing Coursework as a Game
gamifyforthewin
SRECon EU 2016: Riot Games Vs the Internet
SRECon EU 2016: Riot Games Vs the Internet
Adam Comerford
Game Server by Teguh
Game Server by Teguh
Agate Studio
Make your-game-multiplayer
Make your-game-multiplayer
Andrew Lee
Online mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabase
Nguyễn Bá Thành
Cedec2013 photon network engine
Cedec2013 photon network engine
GMO GlobalSign Holdings K.K.
Supercell
Supercell
Clayton Beyers
Clash of Clans: Secrets of Success
Clash of Clans: Secrets of Success
anastasiaalikova
Clash royale
Clash royale
FUENSANTA ALFONSO
Online game server on Akka.NET (NDC2016)
Online game server on Akka.NET (NDC2016)
Esun Kim
Clash Royale vs Clash of Clans
Clash Royale vs Clash of Clans
Laura Irazoqui
Supercell Report
Supercell Report
Brandon Kittle
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
sametmax
3D Graphics & Rendering in Computer Graphics
3D Graphics & Rendering in Computer Graphics
Faraz Akhtar
Riot Games Scalable Data Warehouse Lecture at UCSB / UCLA
Riot Games Scalable Data Warehouse Lecture at UCSB / UCLA
sean_seannery
Albion Online - Software Architecture of an MMO (talk at Quo Vadis 2016, Berlin)
Albion Online - Software Architecture of an MMO (talk at Quo Vadis 2016, Berlin)
David Salz
Server side game_development
Server side game_development
Yekmer Simsek
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
Seungmin Shin
Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
Electronic Arts / DICE
Novell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database Management
Novell
Siyapath - A P2P, Gossip Based Volunteer Computing Framework
Siyapath - A P2P, Gossip Based Volunteer Computing Framework
Nadeeshani Hewage
Extending Io Scalability
Extending Io Scalability
The Linux Foundation
Mais conteúdo relacionado
Destaque
The Multiplayer Classroom: Designing Coursework as a Game
The Multiplayer Classroom: Designing Coursework as a Game
gamifyforthewin
SRECon EU 2016: Riot Games Vs the Internet
SRECon EU 2016: Riot Games Vs the Internet
Adam Comerford
Game Server by Teguh
Game Server by Teguh
Agate Studio
Make your-game-multiplayer
Make your-game-multiplayer
Andrew Lee
Online mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabase
Nguyễn Bá Thành
Cedec2013 photon network engine
Cedec2013 photon network engine
GMO GlobalSign Holdings K.K.
Supercell
Supercell
Clayton Beyers
Clash of Clans: Secrets of Success
Clash of Clans: Secrets of Success
anastasiaalikova
Clash royale
Clash royale
FUENSANTA ALFONSO
Online game server on Akka.NET (NDC2016)
Online game server on Akka.NET (NDC2016)
Esun Kim
Clash Royale vs Clash of Clans
Clash Royale vs Clash of Clans
Laura Irazoqui
Supercell Report
Supercell Report
Brandon Kittle
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
sametmax
3D Graphics & Rendering in Computer Graphics
3D Graphics & Rendering in Computer Graphics
Faraz Akhtar
Riot Games Scalable Data Warehouse Lecture at UCSB / UCLA
Riot Games Scalable Data Warehouse Lecture at UCSB / UCLA
sean_seannery
Albion Online - Software Architecture of an MMO (talk at Quo Vadis 2016, Berlin)
Albion Online - Software Architecture of an MMO (talk at Quo Vadis 2016, Berlin)
David Salz
Server side game_development
Server side game_development
Yekmer Simsek
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
Seungmin Shin
Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
Electronic Arts / DICE
Destaque
(19)
The Multiplayer Classroom: Designing Coursework as a Game
The Multiplayer Classroom: Designing Coursework as a Game
SRECon EU 2016: Riot Games Vs the Internet
SRECon EU 2016: Riot Games Vs the Internet
Game Server by Teguh
Game Server by Teguh
Make your-game-multiplayer
Make your-game-multiplayer
Online mobile game server use Firebase realtime aatabase
Online mobile game server use Firebase realtime aatabase
Cedec2013 photon network engine
Cedec2013 photon network engine
Supercell
Supercell
Clash of Clans: Secrets of Success
Clash of Clans: Secrets of Success
Clash royale
Clash royale
Online game server on Akka.NET (NDC2016)
Online game server on Akka.NET (NDC2016)
Clash Royale vs Clash of Clans
Clash Royale vs Clash of Clans
Supercell Report
Supercell Report
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
Introduction to WAMP, a protocol enabling PUB/SUB and RPC over Websocket
3D Graphics & Rendering in Computer Graphics
3D Graphics & Rendering in Computer Graphics
Riot Games Scalable Data Warehouse Lecture at UCSB / UCLA
Riot Games Scalable Data Warehouse Lecture at UCSB / UCLA
Albion Online - Software Architecture of an MMO (talk at Quo Vadis 2016, Berlin)
Albion Online - Software Architecture of an MMO (talk at Quo Vadis 2016, Berlin)
Server side game_development
Server side game_development
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
Semelhante a A Virtual World Distributed Server Developed In Erlang As A Tool For Analysing Needs Of Massively Multiplayer Online Game Servers
Novell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database Management
Novell
Siyapath - A P2P, Gossip Based Volunteer Computing Framework
Siyapath - A P2P, Gossip Based Volunteer Computing Framework
Nadeeshani Hewage
Extending Io Scalability
Extending Io Scalability
The Linux Foundation
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
The Linux Foundation
CloudBridge and Repeater Specifications Sheet
CloudBridge and Repeater Specifications Sheet
Nuno Alves
Managing a Website Performance Optimization (WPO) Project
Managing a Website Performance Optimization (WPO) Project
Yottaa
Solaris 10 10 09 what's new customer presentation
Solaris 10 10 09 what's new customer presentation
xKinAnx
Creating a cost-analysis of a distance education program
Creating a cost-analysis of a distance education program
Sultan Qaboos university
Semelhante a A Virtual World Distributed Server Developed In Erlang As A Tool For Analysing Needs Of Massively Multiplayer Online Game Servers
(8)
Novell ZENworks Configuration Management Database Management
Novell ZENworks Configuration Management Database Management
Siyapath - A P2P, Gossip Based Volunteer Computing Framework
Siyapath - A P2P, Gossip Based Volunteer Computing Framework
Extending Io Scalability
Extending Io Scalability
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
COLO: COarse-grain LOck-stepping Virtual Machines for Non-stop Service
CloudBridge and Repeater Specifications Sheet
CloudBridge and Repeater Specifications Sheet
Managing a Website Performance Optimization (WPO) Project
Managing a Website Performance Optimization (WPO) Project
Solaris 10 10 09 what's new customer presentation
Solaris 10 10 09 what's new customer presentation
Creating a cost-analysis of a distance education program
Creating a cost-analysis of a distance education program
Mais de l xf
Asynchronous Io Programming
Asynchronous Io Programming
l xf
The Proactor Pattern
The Proactor Pattern
l xf
Scalable Networking
Scalable Networking
l xf
Erlang Message Passing Concurrency, For The Win
Erlang Message Passing Concurrency, For The Win
l xf
Stackless Python In Eve
Stackless Python In Eve
l xf
Comparing Cpp And Erlang For Motorola Telecoms Software
Comparing Cpp And Erlang For Motorola Telecoms Software
l xf
The Migration From Erlang To Otp A Case Study Of A Heavy Duty Tcpip Clients...
The Migration From Erlang To Otp A Case Study Of A Heavy Duty Tcpip Clients...
l xf
Messaging With Erlang And Jabber
Messaging With Erlang And Jabber
l xf
Improving Robustness In Distributed Systems
Improving Robustness In Distributed Systems
l xf
Concurrency And Erlang
Concurrency And Erlang
l xf
Learning Erlang And Developing A Sip Server Stack With 30k Potential Users
Learning Erlang And Developing A Sip Server Stack With 30k Potential Users
l xf
Mais de l xf
(11)
Asynchronous Io Programming
Asynchronous Io Programming
The Proactor Pattern
The Proactor Pattern
Scalable Networking
Scalable Networking
Erlang Message Passing Concurrency, For The Win
Erlang Message Passing Concurrency, For The Win
Stackless Python In Eve
Stackless Python In Eve
Comparing Cpp And Erlang For Motorola Telecoms Software
Comparing Cpp And Erlang For Motorola Telecoms Software
The Migration From Erlang To Otp A Case Study Of A Heavy Duty Tcpip Clients...
The Migration From Erlang To Otp A Case Study Of A Heavy Duty Tcpip Clients...
Messaging With Erlang And Jabber
Messaging With Erlang And Jabber
Improving Robustness In Distributed Systems
Improving Robustness In Distributed Systems
Concurrency And Erlang
Concurrency And Erlang
Learning Erlang And Developing A Sip Server Stack With 30k Potential Users
Learning Erlang And Developing A Sip Server Stack With 30k Potential Users
Último
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Rizwan Syed
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Addepto
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Sergiu Bodiu
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
null - The Open Security Community
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Fwdays
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
RankYa
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Kalema Edgar
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
Mark Billinghurst
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
charlottematthew16
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Alfredo García Lavilla
Último
(20)
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysing Needs Of Massively Multiplayer Online Game Servers
1.
A Virtual World
Distributed Server developed in Erlang as a Tool for analysing Needs of Massively Multiplayer Online Game Servers Erlang/OTP User Conference Stockholm on November 10, 2005 Michał Ślaski michal@erlang-consulting.com © 2005 Erlang Training and Consulting Ltd
2.
Contents •
Massively Multiplayer Online Games • Problems to solve • Prototyping • Using Erlang/OTP for the prototype • Client and server applications • Determining the maximum number of players • Architectures with single and double-function nodes • Synchronisation of the game’s state • Conclusions Page 2 © 2005 Erlang Training and Consulting Ltd
3.
Massively Multiplayer Online
Games • Significant increasing in number of active subscribers • Fast growing online games market 9 000 000 8 000 000 Total active subscribers 7 000 000 6 000 000 5 000 000 4 000 000 3 000 000 2 000 000 1 000 000 0 1997 1998 1999 2000 2001 2002 2003 2004 2005 Source: MMOGCHART.COM Source: IGDA, quot;2004 Persistent Worlds White Paperquot; Page 3 © 2005 Erlang Training and Consulting Ltd
4.
Problems to solve •
Big amount of data to process • Frequent synchronisation – acceptable delay 150 - 500 ms • Adaptation to the connection quality • Limited opportunity for full testing with thousands of players during early phase of development Page 4 © 2005 Erlang Training and Consulting Ltd
5.
Prototyping • Experimenting with
the functional and technical aspects • Determining the scalability of the architecture • Testing new solutions Page 5 © 2005 Erlang Training and Consulting Ltd
6.
Using Erlang/OTP for
the prototype • Open source • Compatible with various platforms • Concurrent oriented programming – one process for every connected player • Efficient internal communication • Supporting distributed applications • Distributed database Mnesia • Distributed load testing tool IDX-Tsunami Page 6 © 2005 Erlang Training and Consulting Ltd
7.
Client application • Java
+ Java3D • Actions: – moving – collecting objects – magic – chat • Player’s state kept on the server Page 7 © 2005 Erlang Training and Consulting Ltd
8.
Server application
• Server distributed on a • The game terrain cluster of machines divided into zones • Players placed within the same zone are processed on the same node Page 8 © 2005 Erlang Training and Consulting Ltd
9.
Determining the maximum
number of users 1 200 Legend Collecting object transaction 1 050 transaction time [msec] 900 750 600 450 180 300 160 overload 150 122 players 140 number of players The server 0 120 0 20 40 60 80 100 120 140 160 was time of the test [s] 100 overloaded 80 800 in the 60th overload 60 second of 700 network traffic [kbits / sec] 40 the test 600 20 500 0 0 20 40 60 80 100 120 140 160 400 time of the test [s] 300 200 100 Legend Outgoing network traffic 0 0 20 40 60 80 100 120 140 160 time of the test [s] Page 9 © 2005 Erlang Training and Consulting Ltd
10.
Architectures with double-function
nodes 900 800 700 number of players 600 500 400 300 200 Legend maximum number of players that c an be handled by the arc hitec ture 100 0 1 2 3 4 5 6 7 8 9 10 number of nodes processing network traffic and player's actions Page 10 © 2005 Erlang Training and Consulting Ltd
11.
Architectures with single-function
nodes 700 120 600 100 CPU utilisation [%] 500 80 number of players 400 60 300 40 200 20 Legend maximum number of players ac tion proc essing nodes' CPU utilisation network proc essing nodes' CPU utilisation 100 0 0 1 2 3 4 5 6 number of nodes processing player's actions (2 network nodes) Page 11 © 2005 Erlang Training and Consulting Ltd
12.
Synchronising issue
Client A Server Client B Try to pick up a mushroom Try to pick up a mushroom Action status - OK mushroom collected by client A Action status - FAIL Page 12 © 2005 Erlang Training and Consulting Ltd
13.
Desynchronisation of the
game’s state 0,1 • Server Legend suc c essful ac tions 0,09 number of transactions / number of players not suc c essful ac tions is not y=0.04855 (suc c essful) y=0.0009119 (not suc c essful) 0,08 overloaded 0,07 • More 0,06 successful 0,05 actions 0,04 0,03 0,02 0,01 0 0 100 200 300 400 500 600 700 800 900 1 000 time of the test [s] Page 13 © 2005 Erlang Training and Consulting Ltd
14.
Desynchronisation of the
game’s state 0,05 • Server is Legend suc c essful ac tions number of transactions / number of players 0,045 not suc c essful ac tions overloaded y=0.04855 (suc c essful) y=0.0009119 (not suc c essful) 0,04 0,035 • More actions 0,03 fail 0,025 0,02 0,015 0,01 0,005 0 0 100 200 300 400 500 600 700 800 900 1 000 time of the test [s] Page 14 © 2005 Erlang Training and Consulting Ltd
15.
Conclusions • Erlang/OTP is
appropriate for developing prototypes of the distributed MMOG systems • Rapid development of the prototype allows examining different algorithms in a relatively short period of time • Future work – algorithms not dependent on the player’s position Page 15 © 2005 Erlang Training and Consulting Ltd
16.
Contents •
Massively Multiplayer Online Games • Problems to solve • Prototyping • Using Erlang/OTP for the prototype • Client and server applications • Determining the maximum number of players • Architectures with single and double-function nodes • Synchronisation of the game’s state • Conclusions Page 16 © 2005 Erlang Training and Consulting Ltd
Baixar agora