Oops, forgot to post the 
link: https://www.parleys.com/tutorial/easy-scalability-akka (you'll need 
to register a free account to view the full video).

On Friday, June 19, 2015 at 4:36:05 PM UTC-7, Luis Medina wrote:
>
> I just saw this really interesting presentation from Scala Days that 
> Martynas posted in another thread that talks about scaling with Akka. I 
> think it will give you some ideas for how to design your app in a way that 
> scales even if you are starting out small right now.
>
> On Thursday, June 18, 2015 at 12:57:30 AM UTC-7, Amir Karimi wrote:
>>
>>  Hi,
>>
>> I'm working on a simple MMO game as a side project which is like Travian 
>> <https://en.wikipedia.org/wiki/Travian>. I've decided to use Akka as the 
>> game back-end, so I would like to share my design with you. Your 
>> suggestions and feedbacks are very appreciated.
>>
>> Each of the following entities are modeled as an actor:
>> - Player
>> - Village
>> - Building of a village
>> - etc.
>>
>> Villages have some resources which are constantly decreasing or 
>> increasing based on multiple factors like buildings level, village 
>> population, etc. (Clearly, I'm not going to change the resource values 
>> periodically but I save the last resource value, its time and the 
>> coefficient of increase or decrease.)
>>
>> Each player may have multiple villages. As villages can be conquered by 
>> other players, each village has an state for it's owner player (e.g. 
>> playerId or playerActorRef) and also a player has a list of his/her own 
>> villages (village actors or IDs).
>>
>> Each village may contains multiple buildings. As buildings won't be moved 
>> and owned by other villages, they will be created as village actor 
>> children. So the buildings will communicate with their village through 
>> `context.parent`.
>>
>> For persisting the game world state I'm going to use Akka persistence 
>> module.
>>
>> This is the fundamental of my design although I have several concerns:
>>
>>    - I'm not sure if players profile information should be stored into 
>>    the database or into the player actors (as states). 
>>    - According to 80/20 rule, I except 80% of the players to be much 
>>    less active than the others but their corresponding actors are still 
>>    resident in the memory even if they have no activity at all. What are the 
>>    best practices to reduce the RAM usage for those? 
>>    - How can I show the statics and other information in the admin 
>>    panel? For example I want to be able to search among players and get 
>> their 
>>    information. I know I can use actorSelection with wildcard but what about 
>>    data pagination? I'm not going to load all players information.
>>     
>> First of all please let me know if this is a good idea to use actors for 
>> such project. I'm not sure if this approach will make things more complex 
>> or simpler.
>>
>> Thanks a lot,
>> Amir
>>  
>

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to