On Fri, Apr 17, 2020, at 5:01 PM, Abhilash Raj wrote:
On Fri, Apr 17, 2020, at 8:54 AM, skenny@scss.tcd.ie wrote:
Hi Steve, I replied to your personal email address earlier today. - I guess it's no harm to add my reply to the thread here, so here goes:
Hi Stephen,
Thanks for your message. The documentation I was referring to is from Gunicorn, specifically this:
http://docs.gunicorn.org/en/latest/settings.html#timeout
(I was led to it by Abhilash's reference in the thread).
Did you also add the config file in mailman.cfg
[webservice] # Configuration for webservice. configuration: /path/to/gunicorn.cfg
This is needed to notify Mailman of the new configuration file that you added. And then format and options of the config file is the URL that you already mentioned above. This information should be documented somewhere, I'll create a bug report for that.
As for the length of the list, I'm talking about in the region of 1,800 members.
When I say "pretty slow", I mean that it takes about 2.5 minutes to return the list of members via the REST API.
Which database backend are you using? The performance would definitely vary with different database backend but 2.5minutes in my opinion is too slow, even for the slowest SQLite database backend.
I did some benchmarking and with a SQLite database, I created a MailingList with abour 2200 members and 2000 non-members.
In [18]: %time mlist.members
CPU times: user 19.9 ms, sys: 975 µs, total: 20.9 ms
Wall time: 9.59 s
In [19]: %time mlist.nonmembers
CPU times: user 16 ms, sys: 2.88 ms, total: 18.8 ms
Wall time: 7.33 s
I don't think the list you have should be taking 2.5 minutes at all unless there is something seriously wrong.
Note that the above numbers are without pagination. My paginated Postorius page load times for nonmembers page is (from Firefox console):
5 requests 213.87 KB / 41.76 KB transferred Finish: 1.20 s
I'm not sure I understand your last paragraph - "paginated interface" and "at the receiving end" don't make much sense to me at present. I should add however that I am pretty novice when it comes to all of this (and Python programming too). It took me a while to understand the difference between accessing Mailman3 via the REST API versus mailman shell - for example!
Stephen
Mailman-users mailing list -- mailman-users@mailman3.org To unsubscribe send an email to mailman-users-leave@mailman3.org https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/
-- thanks, Abhilash Raj (maxking)
-- thanks, Abhilash Raj (maxking)