i'm working with getting a grpc client written in clojure (protojure) working against spiceDB, and i'm running into problems with the connection closing down after a request or two. it's built directly on a jetty client (i.e. not using the official Java gRPC client) because the java client wants to be handed specific types that aren't implemented in the clojure code. my sense is that this is a combination of the behavior of this particular library and gRPC semantics, but i'm really not familiar with the latter beyond "it uses http2 so it can reuse connections." are there resources out there that give an overview of how i can expect gRPC connections to behave, and how i should write my code in terms of when it should attempt to create vs reuse a connection?