From: William P. <wil...@ya...> - 2011-11-17 15:02:43
|
On Nov 17, 2011, at 9:11 AM, Mattison Ward wrote: > Apache has a module that can limit the number of requests per second to specific URLs. For example, requests to /treebase-web/phylows/ could be limited to 10 requests per second while requests to any other URL could be unlimited. That would be another option to control overloading by API requests if we can isolate the URLs. That might do the trick. Unfortunately it's not as easy as simply throttling "purl.org" because purls to objects are used by the web interface as well (to encourage people to cite the canonical URI to objects). My sense is that the following can be throttled: http://purl.org/phylo/treebase/phylows/study/find?query=[...] http://purl.org/phylo/treebase/phylows/matrix/find?query=[...] http://purl.org/phylo/treebase/phylows/tree/find?query=[...] http://purl.org/phylo/treebase/phylows/taxon/find?query=[...] But the following should not be throttled: http://purl.org/phylo/treebase/phylows/study/TB2:[...] http://purl.org/phylo/treebase/phylows/matrix/TB2:[...] http://purl.org/phylo/treebase/phylows/tree/TB2:[...] http://purl.org/phylo/treebase/phylows/taxon/TB2:[...] Also, the information returned by calls to "/phylows/study/TB2:" do not change very much, so they can be cached. Every once in a while the data returned might get updated, but typically it's always the same. Therefore, if you also know of an Apache plugin that will cache results for "/phylows/study/TB2:", that would greatly help. bp |