I don't think it's just you Giles because I'm beginning to notice a maked slowing down in the speed of downloading endpoint data as well. Although that may have more to do with what I'm trying to do at the moment.
I've been developing a script to check the qualifying criteria of the clubs & their nominated admins that take part in TMCL & Knockout Leagues. One thing in particular left me frustrated because we specify a minimum club size of 25 members in TMCL. You'd think that was simple to obtain because club size is clearly stated on the web page. But not in any of the club endpoints as far as I can see.
So the only solution I've found is to download the complete members' list of each club taking part. Picking one of those clubs at random - France-Deutschland Group - shows 2666 members, so you can imagine the time it takes to download these sizeable data-sets.
All because there's no 'club size' field in the club profile endpoint.
Hi,
One of the things I use the stats endpoint for is for checking/finding members to invite.
This turns out to be really slow.
a) Start with the profile endpoint for last_online time, join date and (sometimes) location
b) Grab the stats
c) Get group memberships for the total number of clubs
d) Go to their game archives to get the total number of current daily games.
Now, note in (c) and (d) I'm only wanting a count, not the actual data.
I think the total number of daily games would fit quite well into the stats endpoint. There are W/L/D records; any reason not to add number of in progress games to each of chess_daily and chess960_daily?
The number of clubs someone is a member of might fit better into the profile than the stats endpoint, but if it were available in either I could at least halve the number of endpoints I need to use for this task.
Thoughts anyone?
I'm working with what I have and trying to cache more data to speed things up, but oh is it slow to collect some of that data to cache. I probably should have been more selective about what members I even looked up, but the single-threaded rate of queries per minute (it's better measured in queries per minute, not queries per second) is pretty damn slow.
If there is intentional throttling (other than the number-of-connections thing) would someone please check that a zero hasn't been dropped? If I'm only getting 10% of the speed I'm supposed to be permitted I'd not be at all surprised. It's that slow, and pretty much across all the endpoints.
I am using persistent connections (with https (SSL) an absolute must) and not using HTTP 2.0 (only 1.1) but compression of headers will not help; it's not a bandwidth problem or at least not a bandwidth problem anywhere near me, and the website has some chunky pages and is pretty zippy.
Thanks for reading,
Giles