You might also consider whether you definitely need to maintain state in the broker. The API requests contain identifiers for service instance and service plan, as well as ids for org and space.
If your backend is simple enough, the plan guid can be sufficient for the broker to know what backend to contact. If you have multiple backends for a given plan, and the broker balances placement of instances across backends, then maintaining state may be necessary. Another way to avoid keeping state in the broker is to use a message bus system between the broker and an agent on your backends, such that the broker simply puts a request out on the bus and the agents are responsible for (1) responding that they have capacity for the instance and taking the provision request (first to respond takes it), and (2) identifying that they are responsible for the instance for subsequent operations.