nosql games
play

NOSQL GAMES Patrick Huesler wooga GmbH D o you like to play? - PowerPoint PPT Presentation

NOSQL GAMES Patrick Huesler wooga GmbH D o you like to play? technical challenges monthly acti v e use r s 20,543,500 f o r D iamond D ash http:/ /www.appdata.com/apps/facebook/127995567256931-diamond-dash (03/10/2012) daily acti v e use r s


  1. NOSQL GAMES Patrick Huesler wooga GmbH

  2. D o you like to play?

  3. technical challenges

  4. monthly acti v e use r s 20,543,500 f o r D iamond D ash http:/ /www.appdata.com/apps/facebook/127995567256931-diamond-dash (03/10/2012)

  5. daily acti v e use r s 3,871,133 f o r D iamond D ash http:/ /www.appdata.com/apps/facebook/127995567256931-diamond-dash (03/10/2012)

  6. b ackend t r affic up to 6,500 RPS f o r M onste r W o r ld

  7. w hat does mean that f o r a Database?

  8. r ead /wr ite r atio ? write heavy

  9. W ooga ’ s EVOLUTION o f a r chitectu r e

  10. Facebook Game backend Flash Reporting iOS

  11. B uilt w ith LAMP ... w ell , nginx instead o f apache

  12. mys q l does scale

  13. f o r ce r tain use cases

  14. w ith the r ight people

  15. T o the cloud

  16. L et ’ s use Rails instead o f PHP

  17. load balancer app server app server app server master shard 1 master shard 2 slave shard 2 slave shard 2

  18. long story sho r t

  19. load balancer app app app app app app app app app app app app app app app app app app app app app app app app db db db db db db db db db db db db db db db db

  20. diffe r ent use case

  21. a r cade games Are NOT f a r ming games

  22. Tis is NOT going to w o r k

  23. b ut the r e is Light at the end o f the tunnel

  24. M o v e SLOW PARTS to r edis

  25. rinsE and REPEAT

  26. b ack to dedicated

  27. M o r e bang f o r the b uck

  28. F aste r Machines

  29. f aste r network

  30. L et ’ s use REdis all the w ay

  31. load balancer app server app server app server redis redis slave

  32. REDIS HASH

  33. all is w ell in Redis Land

  34. Memory Leaks

  35. ho w does BGSAVE w o r k again ?

  36. dumps a r e no longer w o r king

  37. Tis is NOT going to w o r k

  38. Fx it w ith Restore on Demand

  39. R edis Disk Store ( ne v e r r eally suppo r ted )

  40. L et ’ s go Stateful

  41. no database is f aste r than no data b ase

  42. L et ’ s use S3 all the w ay

  43. L et ’ s use erlang

  44. http://www.slideshare.net/wooga/from-0-to-1000000-daily-users-with-erlang

  45. http://www.slideshare.net/wooga/from-0-to-1000000-daily-users-with-erlang

  46. p r oject SPARTAN

  47. it has to b e ready yeste r day

  48. I t has to scale eno r mously

  49. node.js

  50. W hat DB Scales w ithout sha r ding ?

  51. w hat DB has masterless replication?

  52. Async Saving

  53. Riak

  54. good enough for now

  55. good enough for good

  56. li f e w ith Riak

  57. 1 { 2 "userId" : 1000000011100 , 3 "xp" : 20 , 4 "coins" : 400 , 5 "cash" : 300 , 6 "rooms" : [ 7 { 8 "id" : 1 , 9 "type" : "x-ray", 10 "status" : "busy" 11 } 12 ] 13 } 14

  58. no SPoF is plain a w esome

  59. b itcask w as suboptimal f o r ou r use case

  60. D o not map/reduce o v e r all keys !

  61. d r eadfl ulimit

  62. the tale o f riak Attach

  63. M onste r s go Mobile

  64. A n i OS client is NOT a flash client

  65. do w e need a database at all ?

  66. C ould w e just use s3 in a stateless a r chitectu r e ?

  67. do w e need a backend at all ?

  68. w hat i f the client wr ites to S3?

  69. wooga.com/ jobs

Recommend


More recommend