More Related Content Similar to Multi thread game server Similar to Multi thread game server (18) Multi thread game server2. Contents
●
Summary & Simple Test
●
게임 서버 구조 사례
●
문제점 및 개선 방안
10. 4 Threads
Core A Core B
100%
Core A Core B
18. 경쟁 상태
Wor
ker A
Worker B Enemy Thread
C Time Wo
rker r ker
Wo [User]
20. 경쟁 상태의 문제점
●
Crash (ntdll?)
●
드랍 아템 다수가 획득
●
인벤 꼬임
●
경험치 이상
●
...
25. 보너스
●
Self Deadlock (← single thread에서도)
●
Half Deadlock
26. Chaos
Wo
rke ad
rA my Thre
Ene
B T im
r ker eW
Wo or k
er
33. Chaos
Wo
rke ad
rA my Thre
Ene
B T im
r ker eW
Wo or k
er
41. 경쟁 상태
er
Work
Thread
User
Wo
rker
Ti
m
er
r
r ke
Wo
47. Updatable Runnable
+update() +run()
Player update() update()
update()
Zone Room
Player Zone Room Room run()
Core
Zone Room
Thread
Player
Zone Room
Player x N
49. Thread Safe
NPC
Room Zone
Enemy
Projectile
User Player
Script
51. t1
Core A
t2
t3
Core B
t4
time
0 33 66 99 132 165 198
52. t1
Core A
t2
t3
Core B
t4
time
0 33 66 99 132 165 198
53. t1
Core A
t2
t3
Core B
t4
time
0 33 66 99 132 165 198
59. Core A
t1
Core B
Core A
t2
Core B
time
0 33 66 99 132 165 198
60. t1 Core A
t2 Core B
t3 Core A
t4 Core B
time
0 33 66 99 132 165 198
62. GameLogic
Zone Player
Room
Core A
Thread
Room User
Core B
Worker
Network
Thread
64. L og
ic
recvBuf
Wo
rke
r
65. r
ke
or
W
t
kce
Pa
1
g ic
Lo
2
g ic
Lo
3
g ic
Lo
72. 끝
http://javawork.egloos.com 01/21/2011