It depends on size of queue of events for a Function. If deployed Function is slow in terms of execution time and events generated in source bucket are more than no. of events executed per second, then backlog of events that are yet to be processed will grow.
In Admin UI, a stat counter is present which captures size of events backlog which are waiting to get fired. As eventing provides at-least once model, events will eventually get fired from the backlog queue.
De-duplication is an artifact manifested by data service. Eventing and other services like index, FTS, views, XDCR etc are consuming events from data service. So all services notice this behavior from data service. De-duplication doesn’t affect other components as much as Eventing, because for the purpose of indexing/replication - it’s ok to index latest copy of data, without knowing previous revisions against that document.
Regarding how mutations are accumulated - it depends on how long data service keeps data snapshot open. Don’t want to bog you down with details of DCP. But if you’re interested, you could have a look Couchbase Connect session on DCP
We would be interested to know more about the use case you have, for which you’re exploring Eventing.