You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When many entries have to be published to many clients, the performance of feedspora is disappointing. Entries are created by a generator on the fly, and published sequentially to each client in (here).
The low hanging fruit would be to publish to several clients in parallel (w/async). Ideally, each client should be provided with its own generator (fed with the "master" entry generator), out of which entries can be consumed (i.e. published). itertools can probably help.
This would not address a bigger issue: each client is responsible for preparing/formatting an entry according to its configuration/target service. While this makes sense as they are different, some operations can probably be extracted, merged and cache, e.g. using memoization with a static function in GenericClient.
The text was updated successfully, but these errors were encountered:
When many entries have to be published to many clients, the performance of feedspora is disappointing. Entries are created by a generator on the fly, and published sequentially to each client in (here).
The low hanging fruit would be to publish to several clients in parallel (w/async). Ideally, each client should be provided with its own generator (fed with the "master" entry generator), out of which entries can be consumed (i.e. published). itertools can probably help.
This would not address a bigger issue: each client is responsible for preparing/formatting an entry according to its configuration/target service. While this makes sense as they are different, some operations can probably be extracted, merged and cache, e.g. using memoization with a static function in
GenericClient
.The text was updated successfully, but these errors were encountered: