The debounced way is also ok. But the NIP would be better to state that relay can implement this method and this method is optional.
But the batch way is also optional and need to stated. And it is a way easier to implement.
These two method also can handle hundreds events. I can't find that whick one is better.