I chatted with a colleague about best practices and the TL;DR is that we don’t have any specific recommendations. One engineer I know who uses GitHub webhooks quite heavily for his project has set things up so that all deliveries get captured in a queue, so that if he fails to process a delivery he can troubleshoot and redeliver more easily than manually navigating to a settings page on GitHub. Other folks use load balancers.
I’ve confirmed that our webhooks infrastructure does not pay attention to anything at the DNS layer—it fires off the payload to the configured URL, and that is all. If the delivery fails, then you would need to manually redeliver the payload by navigating to your hook’s setting and pressing the
Troubleshooting these things can be a bit finicky, so if you are seeing problems with your deliveries then you can always contact email@example.com. Our support engineers can check the logs on our end and otherwise help figure out what is going on, whether it is on your end or ours.