Clarity needed on some core concepts

Hey @TomF thanks for clearing these. follow back questions…
Q1, so in case of burst the principle would be same right? each event is an independent entity i presume , so they all will be sent to
NAB and then to TRB (just like u mentioned , stripping , meta data , checking consumers etc).? i would really like to understand this “heavily tuned” mechanism if possible.
Q2) so the reason i wanted to understand connection pools is i am sending messages in distributed architecture(SPARK). so i have partitions (logical piece of code ) may or may not sharing Jvm’s depending on which node they run. So if i don’t have to explicitly close connections i can increase my parallelism by making a single connection(using singleton) per jvm and inccrease number of partitions in one JVM . how ,much is this heartbeat time after which broker closes the connection. and by reading your explanation i think it’s best to keep the connection open.