Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Ruby which Supports Social Platform

Ruby which Supports Social Platform

GREE Platform is a large social platform on which worldwide users can play games with each other.
It's developed by PHP, but Ruby is also used, especially in DevOpts.
I'll talk about how we are using Ruby.

7b2811ce112d0221e1dfd1fe86fc24d7?s=128

Koichiro Ohba

November 09, 2012
Tweet

Transcript

  1. 3VCZXIJDI 4VQQPSUT4PDJBM 1MBUGPSN %FWFMPQNFOU%FQBSUNFOU %FWFMPQNFOU1MBUGPSN (3&& JOD ιʔγϟϧϓϥοτϑΥʔϜΛࢧ͑Δ3VCZ ,PJDIJSP0ICB େ৔ޫҰ࿠

    3VCZ8PSME$POGFSFODF,VOJCJLJ.FTTF 12೥11݄9೔༵ۚ೔
  2. 12೥11݄9೔༵ۚ೔

  3.         Making the

    world a better place through the power of the Internet. 12೥11݄9೔༵ۚ೔
  4. 12೥11݄9೔༵ۚ೔

  5. San Francisco São Paulo Vancouver London Tokyo Beijing Singapore Amsterdam

    Seoul Dubai Osaka 11 branches in the world 12೥11݄9೔༵ۚ೔
  6. 12೥11݄9೔༵ۚ೔

  7. ςΩετ http://developer.gree.net/sp/globalplatform/en/products/ 12೥11݄9೔༵ۚ೔

  8. ੈքԯਓʹରԠ͢Διʔγϟϧ ϓϥοτϑΥʔϜͰ͢ɻ *U`TBTPDJBMQMBUGPSN TVQQPSUJOHCJMMJPOQFPQMF JOUIFXPSME 12೥11݄9೔༵ۚ೔

  9. GREE Platform Stream Social Graph Community Auth App Portal Web

    Platform GREE Platform SDK Social API Web Service Node M iddleware 12೥11݄9೔༵ۚ೔
  10. ౷Ұ͞Εͨ4%,"1*ʹΑΓɺ ౓ͷ։ൃͰ࠷େͷࠃ͓Αͼ஍ ҬͷϢʔβʔʹΞϓϦέʔγϣϯ Λ഑৴Ͱ͖·͢ɻ 6OJpFE4%,"1*FOBCMFT EFMJWFSZPGBQQMJDBUJPOT UPVTFSTJODPVOUSJFT 12೥11݄9೔༵ۚ೔

  11. ςΩετ 12೥11݄9೔༵ۚ೔

  12. http://product.gree.net/jp/ja/apps/ 12೥11݄9೔༵ۚ೔

  13. (3&&1MBUGPSN 12೥11݄9೔༵ۚ೔

  14. 0WFSCJMMJPO VTFST ԯϢʔβʔΛࢧ͑ΔϓϥοτϑΥʔϜ 12೥11݄9೔༵ۚ೔

  15. (3&&JTCVJMEPO 0QFO4PVSDF Powered by 12೥11݄9೔༵ۚ೔

  16.  4FSWFS%BTICPBSE "1*  4FSWFS$POpHVSBUJPO.BOBHFNFOU  %/4#JOE1SJN%/4 PSJHJOBM  -PBE#BMBODFS

     "QQ4FSWFS  ,74  -BSHF0CKFDU4UPSBHF  .FTTBHJOH2VFVF  'VMM5FYU4FBSDI .POJUPSJOH"MFSUT %FQMPZNFOU "OBMZUJDT 12೥11݄9೔༵ۚ೔
  17. 4FSWFS%BTICPBSE "1* %FQMPZNFOU -PBE#BMBODFS "QQ4FSWFS 3VCZ JOTJEF 12೥11݄9೔༵ۚ೔

  18. 4FSWFS %BTICPBSE 12೥11݄9೔༵ۚ೔

  19. .BOBHFNBOZTFSWFST ͨ͘͞ΜͷαʔόΛ؅ཧ 12೥11݄9೔༵ۚ೔

  20. αʔόଐੑ؅ཧ w04$16TQFD wαʔό໾ׂ w৔ॴ %$ ϥοΫ w*1໊લ wαʔόॳظԽɺߏ੒มߋ wঢ়ଶɺෛՙ؂ࢹ (BOHMJB

    12೥11݄9೔༵ۚ೔
  21. 12೥11݄9೔༵ۚ೔

  22. 12೥11݄9೔༵ۚ೔

  23. 12೥11݄9೔༵ۚ೔

  24. IUUQBQJQSPEVDU@JETFSWFST ςΩετ {“results”  =>    [{“property”  =>  {“server_type”  =>  “DB”,

       “ipaddr”  =>  “XX.XX.XX.XX”,    “hardware”  =>  “Intel  Xeon  2.6Ghz”,    ...    } } 12೥11݄9೔༵ۚ೔
  25. 4FSWFS %BTICPBSEͷར఺ 12೥11݄9೔༵ۚ೔

  26. αʔόͷ໾ׂ 4FSWFSTIBWF NBOZQVSQPTFT 12೥11݄9೔༵ۚ೔

  27. LVS Proxy (Apache+mod_proxy) Web (Apache+PHP) ඪ४ߏ੒ 12೥11݄9೔༵ۚ೔

  28. LVS Proxy Web Proxy Web Web Web Web Web LVS

    12೥11݄9೔༵ۚ೔
  29. %FQMPZNFOU 12೥11݄9೔༵ۚ೔

  30. HSFF@EFQMPZ 3VCZ JOTJEF 12೥11݄9೔༵ۚ೔

  31. 8IZXFEPO`U VTF$BQJTUSBOP ͳͥ$BQJTUSBOPΛ࢖Θͳ͍ͷ͔ 12೥11݄9೔༵ۚ೔

  32. lͨͱ͑ͦΕ͕ंྠͷ࠶ൃ ໌Ͱ͋ͬͯ΋ߏΘͳ͍ɻԿ Ͱ΋΍ͬͨ΄͏͕͍͍ͱࢥ ͏ΜͰ͢ΑͶz .BU[BUࡳຈ3VCZձٞ http://www.flickr.com/photos/recompile_net/5952565740/ l:PVTIPVMEEPXIBUFWFSZPVXBOUɼ FWFOJGJU`TSFJOWFOUJPOPGUIFXIFFMz 12೥11݄9೔༵ۚ೔

  33. ͻͱͭͷϓϩμΫτ Ͱෳ਺ͷHJUϦϙδτ ϦΛ࢖͍͍ͨ 12೥11݄9೔༵ۚ೔

  34. αʔϏεΛՔಇͨ͠ ··ߋ৽͢Δ -JWF6QEBUF 12೥11݄9೔༵ۚ೔

  35. LVS Proxy Web Proxy Web Web Web Web Web LVS

    Deploy 12೥11݄9೔༵ۚ೔
  36. LVS Proxy Web Proxy Web Web Web Web Web LVS

    Deploy 12೥11݄9೔༵ۚ೔
  37. LVS Proxy Web Proxy Web Web Web Web Web LVS

    Deploy 12೥11݄9೔༵ۚ೔
  38. "1*͔Βඞཁͳ໾ׂͷαʔ όϦετΛऔಘ͠ɺҰ෦ͷ αʔόΛαʔϏεΞ΢τ͠ ͯ഑Δ Get the target servers list and

    make part of them in- active and deploy the application there. 12೥11݄9೔༵ۚ೔
  39. gree_deploy Dashboard Web Collect Proxy Control Deploy Proxy Enable/ Disable

    Worker Worker Worker Worker Restart Deploy Dist. 12೥11݄9೔༵ۚ೔
  40. require  'gree/server' servers  =  GREE::Server.find({          

         'virtual_server_name'  =>  'ds%',                'type'        =>  'master',                'service'  =>  'mail',                'state'      =>  'on_service', }) 12೥11݄9೔༵ۚ೔
  41. HFNJHSFFSVCZMJC 12೥11݄9೔༵ۚ೔

  42. Improvement 12೥11݄9೔༵ۚ೔

  43. %FQMPZNFOU 'MPX 12೥11݄9೔༵ۚ೔

  44. Commit stage Capacity test User acceptance test Acceptance test stage

    Production ʰܧଓతσϦόϦʔʱ+F[)VNCMF %BWJE'BSMFZஶ "4$** %FQMPZNFOU1JQFMJOF gree_deploy 12೥11݄9೔༵ۚ೔
  45. @release-open Staging Test please @ok 0b70750bd @release-close Deploy Production 12೥11݄9೔༵ۚ೔

  46. HJUEBJMZ http://labs.gree.jp/blog/2011/05/3528/ 12೥11݄9೔༵ۚ೔

  47. HFNJHJUEBJMZ https://github.com/koichiro/git-daily 3VCZ JOTJEF 12೥11݄9೔༵ۚ೔

  48. +*3",1* 1BDLBHF .BOBHFNFOU 3VCZ JOTJEF 12೥11݄9೔༵ۚ೔

  49. 0QFO4PVSDF 12೥11݄9೔༵ۚ೔

  50. HJUIVCDPNHSFF 12೥11݄9೔༵ۚ೔

  51. -8' 6OJUZ 'MBSF 0SJPO 12೥11݄9೔༵ۚ೔

  52. http://techtalk1.labs.gree.jp/ 12೥11݄9೔༵ۚ೔

  53. ·ͱΊ $PODMVTJPO 12೥11݄9೔༵ۚ೔

  54. άϦʔͷγεςϜΛࢧ ͑ΔͨΊͷॏཁͳಓ۩ ͱͯ͠3VCZΛ͔ͭͬ ͍ͯ·͢ 8FBSFVTJOH3VCZUIBOZPVFYQFDUUP TVQQPSU(3&&`TTZTUFNT 12೥11݄9೔༵ۚ೔

  55. 3VCZͷଞʹ΋ͨ͘ ͞ΜͷΦʔϓϯιʔ εΛ࢖͍ͬͯΔ͠ɺ ެ։΋͠·͢ɻ "MTPVTJOHNBOZPUIFS044 8FQSPWJEF044UPP 12೥11݄9೔༵ۚ೔

  56. 3VCZͷ΄͏͕޲͍ ͍ͯΔྖҬͳΒ 3VCZͰॻ͍ͪΌ͑ ͹͍͍ɻ 1)1DPEFDBOCFSFQMBDFEUP3VCZJG 3VCZJTCFUUFSGPSUIFQVSQPTF 12೥11݄9೔༵ۚ೔

  57. http://jobs.gree.net/ 12೥11݄9೔༵ۚ೔