ソーシャルゲームを支える技術 ~ クラウドを活用した高負荷対策
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

ソーシャルゲームを支える技術 ~ クラウドを活用した高負荷対策

on

  • 7,769 views

2012年8月30日に北海道大学で行われた「Cloud Week 2012@北海道大学 ~クラウド技術の最先端を探る~」の講演発表で使用した資料。

2012年8月30日に北海道大学で行われた「Cloud Week 2012@北海道大学 ~クラウド技術の最先端を探る~」の講演発表で使用した資料。

Statistics

Views

Total Views
7,769
Views on SlideShare
3,008
Embed Views
4,761

Actions

Likes
9
Downloads
62
Comments
0

10 Embeds 4,761

http://www.infiniteloop.co.jp 3539
http://www.gamebusiness.jp 1202
http://gamebusiness.jp 8
https://www.google.co.jp 3
http://donguri.cc 2
http://www.pinterest.com 2
http://translate.googleusercontent.com 2
https://twitter.com 1
http://219.117.217.221 1
http://pinterest.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

ソーシャルゲームを支える技術 ~ クラウドを活用した高負荷対策 Presentation Transcript

  • 1. ‫ؙ‬পૠெ९‫ش‬३কঝ।‫ش‬঒॑‫੍ؙ‬इॊૼ୒‫  ؙ‬ॡছक़ॻ॑ણ৷खञৈ଀෰ৌੁ ઙૄভ঺ॖথইॕॽॵॺঝ‫ش‬উ‫ૈؙ‬੩ 健太郎
  • 2. ঽഞງஂ 
  • 3. ૈ੩ 健太郎 ైචলମ‫ైؚ‬ච૔ક উটॢছঐ ke-tai.org 管理⼈ ॥‫ش‬ছधংॖॡॶ‫ش‬জথॢऋ஀ऌ ઙૄভ঺ॖথইॕॽॵॺঝ‫ش‬উ৻਀
  • 4. ঽഞງஂ 
  • 5. ઙૄভ঺ॖথইॕॽॵॺঝ‫ش‬উ 北海道札幌市のソフトウェア開発会社 ৫৅ৰౚ‫ق‬਌प१‫ش‬ং१ॖॻ॑૿ਊ‫ك‬‫ؙ‬ঈছक़२ਕবಂ(2009)‫ؙ‬ஶ௟ॡग़५ॺ(2010)‫ؙ‬Lord of Knights(2012)‫ؙ‬ॡॖ‫ش‬থ६ঈঞॖॻ THE CONQUEST (2012) ※プログラム開発のみを担当しており、企画・運営は⾏っておりません
  • 6. 9LPਫ਼৒9LP⼒がぐんぐんと上昇してYLPUFも⻑くなるKHOSप૗ॎॊ୓ৗ৓ऩ9LPभ৾ಆু஺‫پ‬ઽஇभ঳৖म‫ؚ‬क़फ़থॲभ౩ऽोऩः৕୹ञठभରஃपઞ৷औचथःञटःथउॉऽघ
  • 7. 3+3ਫ਼৒৸বਐযभ3+3HUभञीप৫৅3+3⼒がぐんぐんと上昇してSKSLQLも⻑くなる ‫
  • 8. ء‬ZZZSKSQHWPDQXDOMD प৻ॎॊ୓ৗ৓ऩ3+3भ৾ಆু஺L3KRQH‫$ط‬QGURLG૏ৌૢ ੺঩ਁ৫੒৒‫آ‬
  • 9. ँःइॊञ॒੿ॉऽखञॖথইॕॽॵॺঝ‫ش‬উभঐ५॥ॵॺय़কছॡॱ‫ش‬َँःइॊञُ॒॑੿ॉऽखञ‫؛‬
  • 10. ম঩भ৔ઍ ਈ੺भ९‫ش‬३কঝ।‫ش‬঒৫৅হੲपणःथ ॖথইছपणःथ ੉ୁृইঞ‫ش‬঒ড‫ش‬ॡपणःथ ଀෰ৌੁपणःथ‫:ق‬HEౣ‫ك‬ ଀෰ৌੁपणःथ‫%ق‬ౣ‫ك‬ ଀෰ॸ५ॺपणःथ ૞અपखथःॊੲਾपणःथ ऽधी
  • 11. ᾧਈ੺भ९‫ش‬३কঝ।‫ش‬঒হੲ
  • 12. ᾧ९‫ش‬३কঝ।‫ش‬঒धम९‫ش‬३কঝ।‫ش‬঒‫ق‬ஶୁ 6RFLDO *DPH‫ك‬म‫ؚ‬९‫ش‬३কঝ‫ॺॵॿ؞‬ড‫ش‬य़থॢ‫؞‬१‫ش‬অ५‫ك616ق‬঱द઀୹औो‫౎ؚ‬भঘ‫ش‬२‫ش‬ध॥঑গॽॣ‫ش‬३ঙথ॑धॉऩऋैউঞॖघॊड़থছॖথ।‫ش‬঒‫؞‬ঈছक़२।‫ش‬঒दँॊ‫؛‬঩মदमॢজ‫ش‬ऋਈੂप९‫ش‬३কঝ।‫ش‬঒भ઀୹॑৫઩ख‫ؚ‬जभ৏ॹॕ‫؞ش‬ग़ॾ‫؞‬ग़‫ش‬ऋઈ੾घॊ௚ఝਗ਼ਵ਱ऐ१‫ش‬অ५‫ؚ‬ঔং।‫ॱش‬क़থऋ઀୹॑৫઩खञِჁ൯টডॖখঝّऋ৅னभ઩ऽॉधऩढञ‫؛‬年াपम616ব৔ਈপুभ঑ॡ३ॕऋَPL[L॔উজُभ१‫ش‬অ५॑৫઩‫ؚ‬পু।‫ش‬঒ভ঺ऋ઀୹घॊ।‫ش‬঒ऋ਺োऔो‫ؚ‬5HNRRऋ઀୹घॊِ१থ३কॖথฝৃّऋ૞ਸ঻ऋਐয॑௭घऩन‫ؚ‬঳ඩ৒ାघॊेअपऩढञ‫؛‬:LNLSHGLDेॉ௷ხ KWWSMDZLNLSHGLDRUJZLNL९‫ش‬३কঝ।‫ش‬঒
  • 13. ਈ੺भ९‫ش‬३কঝ।‫ش‬঒হੲ 
  • 14. ਰ৐धૻसॊधःौःौକऌथःॊऊु‫ء‬९‫ش‬३কঝ।‫ش‬঒ऋॽগ‫ش‬५दਵ਻पऩॊऒधऋੜइञ‫ڀ‬ ॻজছথॻੜ༢उेलजोपહྖघॊ507ਖ਻‫ڀ‬ ॥থউफ़ॳক๱৿‫ڀ‬ ऩ॒टऊ਼৑भ௯ਊञॉऋਘऎऩढञ‫ڀ‬ ৏ौीञःुभ॑੿ढथःॊणुॉमऩः‫ڀ‬ ग़থ४ॽ॔धखथमૼ୒पૐরखञःৰ੠भ୶஭म‫ँؚ‬ऽॉ૮ः‫્ ڀ‬पঽীभఢॉपঢ়खथमँऽॉ୶஭ऋ૮ःेअट‫ ڀ‬ञटखఢॉभ৸ே९‫ش‬३কঝ।‫ش‬঒प௪௡ऋऩऊढञযऽदऋ‫ؚ‬‫َؙ‬পຣ୏‫ُء‬धୂःथऎॊधःअ୶஭ऋ
  • 15. ਈ੺भ९‫ش‬३কঝ।‫ش‬঒হੲ 
  • 16. 開発者から⾒た最近のソーシャルゲーム開発५ঐ঍ऋ਌ਅৃपऩढथऌथःॊ‫ॿ ڀ‬ॖॸॕঈ॔উজमुठौ॒‫0ؚ‬REDJH‫ु((5*؞‬‫ ڀ‬ガラケー界隈は少し落ち着いて来た印象‫&3 ڀ‬਱ऐभ।‫ش‬঒ ਌प)ODVK॑ઞ৷
  • 17. म਍৒खञ೽ਏृढरॉ৸ேযमଌॉथःऩः‫ڀ‬ ॡছॖ॔থॺ‫؞‬१‫ش‬ং‫؞‬ॖথইছऩन৸थऋଌॉऩः‫ڀ‬ %$‫ق‬DWD%DVH $GPLQLVWUDWRU‫ك‬ऋ੎ฤऔोॊ‫ڀ‬ +70/-6ग़থ४ॽ॔भॽ‫ش‬६ऋੜइजअ‫ڀ‬ धमःइ੸ா৲ऋ઩ऽॉ‫ؚ‬ऩ॒ठूढथभ঵঻‫ط‬ग़থ४ॽ॔म‫ؙ‬ जौजौᇋᆓऔोमगीॊऊु
  • 18. ਈ੺भ९‫ش‬३কঝ।‫ش‬঒হੲ 
  • 19. ૘खङण૗ॎढथःऎ९‫ش‬३কঝ।‫ش‬঒৫৅૽સभ૗৲‫ ڀ‬৫৅ૠெभఁপपൣःग़থ४ॽ॔੷ीैोॊुभु૗ॎढथऌञ‫૽ ڀ‬સী૿भ৥ન৲‫ق‬ग़থ४ॽ॔۸੫઺‫⎻ؚ‬म⎻ોप‫ؚ‬ഄఴम೷ॉନघ‫ك‬求められる能⼒‫ڀ‬ 継戦能⼒(続く運営・アップデート、終わりがない)‫ڀ‬ 情報の横への共有化、他者/他社への展開能⼒‫ڀ‬ 安定したリソース提供、⻑期を⾒越した教育スキームの確⽴‫ڀ‬ 海外展開能⼒९‫ش‬३কঝ।‫ش‬঒ਰਗषभૢ৷ु‫ ڀ‬ৈ଀෰:HE१‫ش‬অ५षभ৚ష‫ؚ‬।‫ش‬঑ইॕॣ‫ش‬३ঙথषभૢ৷‫ ڀ‬జਟभ॥থ३গ‫ش‬ঐ‫ش‬।‫ش‬঒भॿॵॺ৲धजभংॵॡग़থॻ৫৅
  • 20. ᾧॖথইছपणःथ
  • 21. ॖথইছपणःथ(1)ソーシャルゲームとクラウドは相性が良いインフラ視点から⾒たソーシャルゲームの特徴‫؞‬জজ‫ش‬५৐भ঄ॵॺૠெ੒೾ऋ୔खः‫ॻشঁ ڀؙ‬क़ख़॔৹୸ऋ୔खः‫ ڀؙ‬঄ॵॺखञৃ়‫ؚ‬୯ਸঌ‫ش‬५ऋଫः‫؞‬আ‫ش‬ॡ૗৿ऋপऌः‫ ڀؙ‬ફभৢඐৎ‫ؚ‬໤೬ा‫ఽؚ‬৑‫ ڀؙ‬ଅ঩‫ؚ‬াੂ‫ ڀؙ‬य़কথঌ‫ش‬থॖঋথॺऩन
  • 22. ॖথইছपणःथ(2)Q. नऒ॑णऊढथःॊभ‫ء‬A. 最近では国内のクラウドサービスを利⽤しています਌पব৔ॡছक़ॻ॑ઞअऒधऋ੗ःदघ‫ँؚ‬धमAWSुઞःऽघਲਗ਱ऐभ१‫ش‬অ५भৃ়म‫ऻऺؚ‬AWSदघْॖথইছ৭लमశଞपপহ‫ٓآآ‬こんなポイントを⾒て選んでいます‫ ڀ‬コストや安定度(障害履歴)は当然⾒る‫ુ ڀ‬થLBがあり、それが強⼒であること‫ ڀ‬インスタンスの追加が容易で速いこと(電話やメールとかは論外‫ك‬‫ॹ ڀ‬ॕ५ॡषभI/Oऋசऎ਍৒खथःॊऒध‫ؚ‬SSDಉुँॉऋञः‫⾼ ڀ‬価でも強⼒なスペックのインスタンスが⽤意されている、‫ ؙ‬または物理マシンとの併⽤が可能(最後の⼿段的な使い⽅‫ك‬
  • 23. ॖথইছपणःथ(3)१‫ش‬ংଡਛपणःथ‫੶ৣؙ‬भेअऩଡਛदघ‫ق‬नभ੧੯दुপ৬৊ग‫ك‬ ZZZ $SDFKH௺ 3+3௺$3& % 064/௺  0+$ .96 PHPFDFKHG .RWR7FRRQ जभ౎ UVVORJ FDFWL 016
  • 24. ᾧ੉ୁृইঞ‫ش‬঒ড‫ش‬ॡपणःथ
  • 25. ੉ୁृইঞ‫ش‬঒ড‫ش‬ॡपणःथ ੉ୁम਌पPHP॑ઞढथःऽघऋ‫ؚ‬ ୦दुःःधઓःऽघ‫؛‬ইঞ‫ش‬঒ড‫ش‬ॡमঽ੿दघ ৫৅੉ୁ ‫3 3+3 ڀ‬HUO 5XEँञॉ॑ेऎୂऎ ‫ ڀ‬੭ਔऩ੉ୁदेःधઓअऋ‫ؚ‬৫৅জ९‫ش‬५भଓౄृ‫ؚ‬ ‫ ؙ‬新⼈教育が容易な⾔語が向いている ইঞ‫ش‬঒ড‫ش‬ॡ ‫ ڀ‬ঽ੿ইঞ‫ش‬঒ড‫ش‬ॡ॑ઞढथःॊ ‫ ڀ‬以前はあえてのベタ書きだったが、開発効率や再利⽤性など ‫ ؙ‬の⾯からフレームワークを作成し利⽤するように ‫ ڀ‬VPIRQऩनभใோইঞ‫ش‬঒ড‫ش‬ॡ॑੝ୗखथઞढथःॊ ‫ ؙ‬ऩनभਵखुୂऎऋ‫ؚ‬ਈી৓पमဗ੝ୗऔोथःॊेअट
  • 26. ᾧ଀෰ॸ५ॺपणःथ
  • 27. ଀෰ॸ५ॺपणःथ(1)まずはテストプレイなどから数値目標を⽴てる‫؞‬੒୳औोॊ৊ৎமਢਯ‫؞‬ঘ‫ش‬२ऋউঞॖदඝ੿घॊৎ৑‫؞‬ঘ‫ش‬२ऋ分間に⾏うリクエストの数【例】৊ৎமਢਯ য‫ق‬৊ৎமਢਯधमৎ৑दமਢऋँढञঘॽ‫ش‬ॡঘ‫ش‬२ਯधघॊ‫ك‬ঘ‫ش‬२ऋඝ੿घॊৎ৑ 分操作し続けて離脱と想定ঘ‫ش‬२ऋ分間に⾏う平均リクエスト数 ৚‫ ڀ‬ী৑भ৊ৎமਢঘ‫ش‬२ਯ    ঘ‫ش‬२‫ ڀؙ‬ী৑पজॡग़५ॺऔोॊ৚ਯ   ৚‫ ڀؙؙ‬ଧ৑पজॡग़५ॺऔोॊ৚ਯ    ৚ٙ‫ؙ‬਴಑َজॡग़५ॺଧُ॑௥ञचोयेः
  • 28. ଀෰ॸ५ॺपणःथ(2)-0HWHUद३ॼজड़॑੿ॊ‫؞‬ऩॊसऎৰ੠भඝ੿प੺ः३ॼজड़पघॊ‫੿؞‬ਛभু৑ऋऊऊॉघऍऩःेअपघॊ‫؞‬全部をシナリオに⼊れるのは無理なので重い処理ランキングを元に、 利⽤頻度と処理の重さを考慮して配分するॡছक़ॻ঱प-0HWHUクライアントを複数台⽤意して⼀⻫実⾏୳৒खञਯக৯ఏ॑ॡজ॔दऌॊऊ॑નऊीॊॲওऩैॳগ‫ॽش‬থॢ‫ܒ‬೾৒॑೷ॉନघ଀෰ॸ५ॺपमॖথইছ৓ଳਡऋ੗ऎ૑ਏऩञीこのあたりを⼀緒に協⼒してくれるॖথইছग़থ४ॽ॔ऋ੎ฤऔोॊ
  • 29. ᾧ॔উজડभ଀෰ৌੁपणःथ
  • 30. ॔উজડभ଀෰ৌੁपणःथ(1)଀෰ৌੁपु౦‫ँر‬ॊभदದपହ৥खऽघপऌऎ੸णपীऐथৌੁ‫ৢુ ڀؙ‬৖ী‫ق‬ইঞ‫ش‬঒ড‫ش‬ॡ‫ك‬भৈச৲‫଻ ڀؙ‬શঌ‫ش‬४ृ$3,भৈச৲共通部分はあらゆる処理で呼ばれることになるणऽॉPVଫऎऩोय‫ؚ‬জॡग़५ॺऩै೅ୀअા৷ৌ஍ટऋৈःુৢ৖ী॑ર੔खथৌ૪ख‫ؚ‬जभ৏प଻શभউটॢছ঒॑ৌ૪खथःऎ
  • 31. ॔উজડभ଀෰ৌੁपणःथ(2)ৰ੠पઞॎोथःॊ଀෰ৌੁॳख़ॵॡজ५ॺ【共通処理編ٓ 
  • 32. 共通処理内で何をしているかを全て把握しているか‫ ڀ‬どういう処理が⾏われるか、64/は何回流れているか、などを完全に把握すること‫ ڀ‬共通部分に処理を⾜すときは、かならずチーム内で許諾を取ること 
  • 33. そもそも、その処理は本当に必要なのか‫ ڀ‬最も効果的な負荷対策は、処理の速度を速めるより処理⾃体を無くすことである‫્ ڀ‬पॡছॖ॔থॺ  サーバ型のアプリの場合は、相当処理が削れる‫ ڀ‬クライアント側でキャッシュや処理できるような処理がないか⾒直す 
  • 34. य़কॵ३গमदऌऩःऊ‫&3$ ڀ‬य़কॵ३গ ! PHPFDFKH !!!!! 064/ भದदசः‫&3$ق‬म:HE१‫ش‬ং౐ਜ਼दभय़কॵ३গदँॊऒधपିਔ‫ك‬‫ ڀ‬共通処理内では、64/実⾏回数がゼロが望ましい
  • 35. ॔উজડभ଀෰ৌੁपणःथ(3) 
  • 36. 無駄なものの発⾒‫ڀ‬ ૮ྤऩUHTXLUH॑ንघपमड़‫ॺش‬ট‫ॻش‬भ଑োऋ௫‫ڀ‬ ;+3URIभFDOOJUDSKदॳख़ॵॡ‫ڀ‬ -HQNLQVृঽ੿५ॡজউॺद‫ؚ‬‫ؙ‬ ૮ྤऩ৒ਯृઞॎोथःऩःও९ॵॻऩन॑྽௾ 
  • 37. जभ౎ିਔਡ‫ ڀ‬টफ़‫ृش‬ग़ছ‫ঁش‬থॻছऩन‫ؚ‬ઓॎफधऒौऋॿॵॡपऩॊऒधुँॊभद‫ؚ‬‫ ؙ‬ళयोॊ৚ਯऋ੗ःुभम‫ؚ‬૑ङॳख़ॵॡ ॳগ‫ॽش‬থॢघॊऒध‫ ڀ‬B6(66,21の利⽤は最低限に留めること
  • 38. ॔উজડभ଀෰ৌੁपणःथ(4)ৰ੠पઞॎोथःॊ଀෰ৌੁॳख़ॵॡজ५ॺ【個別処理編ٓ 
  • 39. ೚ः3+3ছথय़থॢ॑੿ॊ‫ق‬ঔॢছᇗऌ১‫ك‬‫ ڀ‬実⾏速度を記録する仕掛けを作り、最も遅くて呼ばれる回数の多い順に対処‫$ ڀ‬SDFKHটॢऊैDQDORJऩनदૐੑघॊ্১ु 
  • 40. 64/の⾒直し‫ڀ‬ ೚ःৃ়भऺध॒नम64/ऋਉ౤द೚ः‫॔ق‬উজট४ॵॡदभ଀෰ೄ੖म୔खः‫ك‬‫ڀ‬ ৰ੠भম୞धॹ‫ॱش‬ਯऋୀअध૞અपऩैऩः‫ॱشॹؚ‬मଞप੗ीपোोथउऎऒध‫ڀ‬ ॖথॹॵॡ५౞ઞ৷भॡग़জृ५ট‫ش‬ॡग़জটॢपൗढथऎॊॡग़জ॑ንघ‫ڀ‬ PNTXHUGLJHVWで早くても実⾏回数の多いクエリを発⾒しチューニング‫ڀ‬ FDFWLなどのグラフから問題を発⾒する 
  • 41. 仕様で⾒直す‫ ڀ‬ல஘॑ऺऻ௥ञखणणु‫୶ؚ‬஭ऩऎঝ‫ش‬६प੿ोॊधऒौऋऩःऊ॑ଞपਫ਼ୈ‫ ڀ‬どうしてもダメなら仕様の⾒直しを相談
  • 42. ॔উজડभ଀෰ৌੁपणःथ(5)%ঐ५ॱ‫ش‬भ଀෰ৌੁ଀෰ৌੁभ੦মमَ१‫ش‬ং઎ਯ॑ੜृखथৌ૪घॊऒधُदँॊ‫؛‬ञटख:HE१‫ش‬ংृ%५ঞॖঈम‫ؚ‬઎ਯ॑ੜृघऒधदৌૢदऌॊऋ‫ؚ‬%ঐ५ॱ‫ش‬म౐ෞपमੜृघऒधऋदऌऩःञी‫ؚ‬ऒऒऋॿॵॡधऩॊ‫؛‬ेढथ‫଀ؚ‬෰॑ऩॊसऎ౎भ१‫ش‬ংपীങघॊ૑ਏऋলथऎॊ.96 PHPFDFKHGऩन
  • 43. प਱ऐॊ‫ ڀ‬情報が古い可能性があることに注意、トランザクション処理にはあまり使えない%५ঞॖঈप਱ऐॊ‫ৢ ڀ‬ଞम५ঞॖঈपமਢख‫ॺؚ‬ছথ२ॡ३ঙথ৫઩ %(*,1
  • 44. दঐ५ॱ‫ش‬पமਢघॊ‫قؙ‬ইঞ‫ش‬঒ড‫ش‬ॡঞঋঝदৰಎ‫ك‬‫ ڀ‬ঐ५ॱ‫ش‬ड़থজ‫ش‬द৫৅॑ਤी‫ؚ‬਍৸ऩॡग़জऊैದप.96ृ५ঞ‫ش‬ঈप‫ ؙ‬ஷढथःऎृॉ্ु‫ ڀ‬ॖথইছभଡണ্ଉपु൪॒दऎॊ
  • 45. ॔উজડभ଀෰ৌੁपणःथ(6)%ঐ५ॱ‫ش‬ীસളਯড‫ش‬ঝॻपীऐैोऩःॱॖউभ।‫ش‬঒ृ‫ؚ‬৊ৎઽઍযਯभ੗ः।‫ش‬঒भৃ়‫ؚ‬ঐ५ॱ‫ش‬ীસमೂऐथৢॊऒधऋदऌऩः‫؛‬ႄઉীસ‫ ڀ‬切り離しやすいテーブルを他の%に持って⾏く(例ൕંഝटऐશ%‫ك‬਷਴ীસ‫ ڀ‬ঘ‫ش‬२,౐ਜ਼दীસघॊ‫ॢ ڀ‬ট‫ش‬ংঝ%॑੅ठ‫ؚ‬जऒपঘ‫ش‬२,धતವ%॑੶ஈखञॸ‫ش‬ঈঝ॑੅ण‫ ڀ‬ৗૠఃஈৎपमਈु॔ॡॸॕঈঘ‫ش‬२ਯभ૘ऩः%पఃஈਠ૾म॔উজડदളਯभ%॑ದपॺছথ२ॡ३ঙথ৫઩‫ܒ‬॥঑ॵॺखथःॊ‫ ڀ‬ীસ%が多くなるほど性能が劣化する‫ ڀ‬バックアップ時の整合性や、エラー時の処理が⼤変‫ ڀ‬ঘ‫ش‬२৑भঢ়ॎॉऋਘःेअऩ॔উজम੿ॉतैः‫& /460 ڀ‬OXVWHUप਋ୄखञः
  • 46. ॔উজડभ଀෰ৌੁपणःथ(7) টॵॡ଼়ৌੁ ଀෰मऊऊढथःऩःऋঃইज़‫ش‬ঐথ५ऋলऩः‫ؚ‬ /RFN ZDLW WLPHRXWऋ੗৅घॊ‫ؚ‬ऩनभৃ়मটॵॡ଼়॑ઑअ ঐ५ॱ‫ش‬ীસऔोथःॊৃ়म‫ؚ‬ デッドロック検出がされないので更に厄介 ْৌੁٓ ॺছথ२ॡ३ঙথৎ৑म૭ચऩ଒ॉಢऎ ‫॔ ڀ‬উজડपਫ਼লभலෳऐ॑ःोथःॊ ‫60 ڀ‬ORZ7UDQ&DSWXUHऩनभॶ‫ش‬ঝ॑ણ৷ টॵॡऋ੗ऎऊऊॊॸ‫ش‬ঈঝम಍ऊऎীऐॊ ‫⾏ ڀ‬ロックをかけるので‫ؚ‬つのポイントを同時に更新できない ‫ ڀ‬এॖথॺ௺भॸ‫ش‬ঈঝऩनदีॉऋठऩᵜᡒ user_point_tbl ⁹user_id ṯ user_energy_point_tbl ⁹user_id user_battle_point_tbl ⁹user_id ⁹energy_point ⁹energy_point ⁹battle_point ⁹battle_point
  • 47. ᾧ૞અपखथःॊੲਾ
  • 48. ૞અपखथःॊੲਾఎഭછ॑ओງஂखऽघ‫:؞‬HEग़থ४ॽ॔भञीभॹ‫ॱش‬ঋ‫ش‬५ૼ୒>ৰᄷ@ো୅‫ૈؙؙ‬ਦຫ෇੽෩‫ ڀؙ‬৏઄‫્ؚ‬पฆम९‫ش‬३কঝ।‫ش‬঒৫৅঻म૑ഭ‫؞‬ग़य़५ঃ‫ॺش‬भञीभ064/>ઈ৷管理@‫ॺؙ‬ছঈঝ३গ‫ॸش‬ॕথॢफ़ॖॻ‫ؙ‬ൔ৙ୌื੽෩‫َูৢؙڀؙ‬ჶমُ‫ؚ‬ロックを理解するのにオススメ‫0؞‬REDJH੍॑इॊૼ୒ 〜ソーシャルゲームの舞台裏〜‫ؙؙ‬H1$෩‫ؙڀؙ‬লञयऊॉ‫ؚ‬ৰᄷ৓ऩ৔ઍૼ୒છਰਗटध‫؞‬හ๟धखथ:(%% 35(66‫6ؚ‬RIWZDUHHVLJQ‫؞‬धॉँइङ‫ؚ‬मथवभَ॥থআগ‫ُ7,؞ॱش‬カテゴリは全部⾒てます
  • 49. ऽधी(1) ९‫ش‬३কঝ।‫ش‬঒৫৅ु౦‫ر‬૗ॎॉणणँॊ ੷ीैोॊुभभ૗৲पฑໞपৌૢखथःऌञः クラウドとソーシャルゲームは相性が良い ॖথইছ৭लमశଞप੎ਏ ॥থঃॿृAPIमౄৰखथःॊधृढरॉᇃखः ॹॕ५ॡI/O॑੎ଳ ৈ੼टऐनৈ५ঌॵॡमജऑ੊धखथँॉऋञः
  • 50. ऽधी(2) ইঞ‫ش‬঒ড‫ش‬ॡमঽ੿ऋड़५५ও ଀෰ৌੁमॸ५ॺधॳख़ॵॡজ५ॺ॑੿ढथཤ‫ر‬धৌ ੁ DBঐ५ॱ‫ش‬भ଀෰ೄ੖ऋຩधऩॊ ଀෰पमॖথইছ‫॔؞‬উজऋ঳ீधऩढथৌૢ 基本に忠実に鉄板構成で、ただし⾏けるところはガン फ़থध প૗ऩऒधु੗ःऐन௫खःदघ‫ؚ‬௫खिऒधऋ੎ਏ ःणु૎පभੱ॑ພोङप
  • 51. ੷য൳ૐઙૄভ঺ॖথইॕॽॵॺঝ‫ش‬উदमग़থ४ॽ॔॑൳ૐखथःऽघ 社⻑も含めほぼ全てがプログラマで技術者に優しい環境 ඐਜ৉北海道札幌市 उःखः୫स੟ःढरः‫ؚ‬ঽேःढरः‫ؚ‬୨໨૘ऩः‫ؚ‬ჳखः 短い通勤時間、徒歩や⾃転⾞で通勤ীधऊु२ছ 8ॱ‫ش‬থ‫شॱ,ؚ‬থপຈಶ 3+3৫৅ग़থ४ॽ॔ ५ঐ঍৫৅ग़থ४ॽ॔ 064/ग़থ४ॽ॔ ॖথইছग़থ४ॽ॔
  • 52. ‫ؙ‬ओಯലँॉऋधअओकःऽखञ