On Sat, Aug 4, 2012 at 6:33 AM, Richard <[email protected]> wrote:

> Number of users in a game:
>
>
> 522
> 577
> 575
> 602
> 623
> 653
> 259   <----- WTF ?
> 684
>
>
>
> So, queries are still slow/lazy/bad/don't work properly..... Grrrr.
>
> The fail list:
>  - use a synchronised cron job to reap Score() ..... had to build my own
> NTP query engine because cron is unreliable under load
>  - save object in a put() and query for it later .... fails to get all
> objects
>  - push objects into a PULL queue and get them using a backend .... 4-10
> second delay before things can be seen in the PULL queue
>  - Cloud SQL ... client submission tops out around 500 entries.... then
> the backend cannot connect to reap the results!
>  - keep Score objects in the DB and just update them ..... they dont get
> found in a query
>   - in memory backend .... requires MANY back end instances and does not
> scale automatically
>

Just wanted to make sure...
Have you seen my post about auto-scaling in-memory backends?


>
> Anyone have any other possibilities to try ?
>
> -R
>
>
> On Friday, August 3, 2012 5:08:31 PM UTC-4, Richard wrote:
>
>> Currently moved to the following:
>>
>> Lightweight Score() db object has a timestamp with the following:
>>   timestamp = db.DateTimeProperty(auto_now=**True)
>>
>> B1 backend reaps all Score()'s with a timestamp < 1 min old.
>>
>> 20 secs after the reap, the B1 deletes all Score()'s with timestamp at
>> least 10 min old.
>>
>> My theory is:
>>  - When the DB is playing up and creating a Score() is VERY slow and so
>> they don't show up in queries... having an 'old' Score() already there will
>> make the put() strongly consistent and force an instant update.
>>  - Queries based on a timestamp diff will then return the Score
>>  - It may take 1 round for a player to get into the leaderboard, since
>> the first put() will take some time for things to settle.
>>
>> Coments/thoughts ?
>>
>> Any
>> On Friday, August 3, 2012 4:34:02 PM UTC-4, Richard wrote:
>>
>>> Ditched Cloud SQL.  Went back to the old system of savign lightweight DB
>>> objects.  I have no idea what to do tonight when DB queries stop working
>>> again (like they do every night for the last week!)
>>>
>>>
>>> On Friday, August 3, 2012 3:55:01 PM UTC-4, Richard wrote:
>>>
>>>> Well, Cloud SQL is NOT the answer.... it is topping out around 500
>>>> users.  The extra's don't make it into the DB within the 10 second window.
>>>> Then they get shown in the next window.
>>>>
>>>> I can 'fix' this by silently deleting the extra's and doing a client
>>>> update that will insert the user into the results leaderboard if they are
>>>> not there.  HOWEVER, the user's stats will then possibly be wrong (best
>>>> game/etc).
>>>
>>>  --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-appengine/-/Jmu7SkNGZxQJ.
>
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/google-appengine?hl=en.
>



-- 
Takashi Matsuo

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to