for a multiplayer mobile game • Ruby on rails servers managing all the user-data • One API called before a new quest calculates many stuff (QuestLevel, Enemy, Item drops, AI) Woah! • Why on the server side not client • overhead of publish to app store • anti-cheat • limited connectivity • measure API performance: • rails log, rack-mini-profile, peek, NewRelic, JMeter • Performance tuning • N+1, Query tuning add index, pluck get array, model level caching