I have been looking for some articles or guidence on best practice for id generation (for the federated/primary key) for Azure Federated databases and haven\'t found anything co
In my projects I always using GUID for the federation key, as I don't think it causes massive performance problem. Maybe my project is not that huge, but it does works to me. So my answer to your first question is 'yes'.
Your next question, I'm thinking about to have an ID Generator service there, exactly as that you thought, but yes it could be a bottleneck. I was thinking if we can have an ID pool, which utilizes some distribution cache to store the IDs that generated by this service. So that use anyone wants an ID it will retrieved from the pool, rather than generating on demand. So the ID Generator will continue pushing IDs in that pool and the consumers will pop an ID from it. That might be helpful, but again, I've never implemented in this way so I may not be able to say if it's the best practice or not.
Hope this helps.