• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
multi users online game with memcache

#1
[eluser]itsme[/eluser]
Iam working on a multi-users online game and the scenario is :-

1- I fork a new process for each connection

2- first i stared with making a shared object with (unix sockets) , this object was containing the shared data among the process (ie: this object was the responsible for intercommunication between the processes

3-But i notice that there is al ot of errors on the data returned from the shared objects (unexpected data).

4- so i separated my code and start to depend only on memcache(with 1024 storage capacity) to transfer objects among the processes.

5- the users can play with each other in a specific room.

5-each user has on object(instance of player class) in the memcache

6-each room has an object(instance of room class) in the memcache

The problem is : -

all is ok if there is a few number of players in the server but
If there is a lot of players in the server the memcache produce an error


Memcache::get(): Server localhost (tcp 11211) failed with: Malformed VALUE header (0)
Memcache::replace(): Server localhost (tcp 11211) failed with: Received malformed response (0)
Memcache::get(): Server localhost (tcp 11211) failed with: Failed reading line from stream (0)



and some times the memcache return to me an object of player instead of object of room


ex:
$memcache->get("player1") should return an object for a player class but it sometime return an object for a room class
$memcache->get("room1") should return an object for a room class but it sometime return an object for a player class



i did not know what is the problem


Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2020 MyBB Group.