{"action":"opened","issue":{"url":"https://api.github.com/repos/vinyldns/vinyldns/issues/274","repository_url":"https://api.github.com/repos/vinyldns/vinyldns","labels_url":"https://api.github.com/repos/vinyldns/vinyldns/issues/274/labels{/name}","comments_url":"https://api.github.com/repos/vinyldns/vinyldns/issues/274/comments","events_url":"https://api.github.com/repos/vinyldns/vinyldns/issues/274/events","html_url":"https://github.com/vinyldns/vinyldns/issues/274","id":368205935,"node_id":"MDU6SXNzdWUzNjgyMDU5MzU=","number":274,"title":"MySQL Message Queue","user":{"login":"pauljamescleary","id":17361753,"node_id":"MDQ6VXNlcjE3MzYxNzUz","avatar_url":"https://avatars2.githubusercontent.com/u/17361753?v=4","gravatar_id":"","url":"https://api.github.com/users/pauljamescleary","html_url":"https://github.com/pauljamescleary","followers_url":"https://api.github.com/users/pauljamescleary/followers","following_url":"https://api.github.com/users/pauljamescleary/following{/other_user}","gists_url":"https://api.github.com/users/pauljamescleary/gists{/gist_id}","starred_url":"https://api.github.com/users/pauljamescleary/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pauljamescleary/subscriptions","organizations_url":"https://api.github.com/users/pauljamescleary/orgs","repos_url":"https://api.github.com/users/pauljamescleary/repos","events_url":"https://api.github.com/users/pauljamescleary/events{/privacy}","received_events_url":"https://api.github.com/users/pauljamescleary/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"pauljamescleary","id":17361753,"node_id":"MDQ6VXNlcjE3MzYxNzUz","avatar_url":"https://avatars2.githubusercontent.com/u/17361753?v=4","gravatar_id":"","url":"https://api.github.com/users/pauljamescleary","html_url":"https://github.com/pauljamescleary","followers_url":"https://api.github.com/users/pauljamescleary/followers","following_url":"https://api.github.com/users/pauljamescleary/following{/other_user}","gists_url":"https://api.github.com/users/pauljamescleary/gists{/gist_id}","starred_url":"https://api.github.com/users/pauljamescleary/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pauljamescleary/subscriptions","organizations_url":"https://api.github.com/users/pauljamescleary/orgs","repos_url":"https://api.github.com/users/pauljamescleary/repos","events_url":"https://api.github.com/users/pauljamescleary/events{/privacy}","received_events_url":"https://api.github.com/users/pauljamescleary/received_events","type":"User","site_admin":false},"assignees":[{"login":"pauljamescleary","id":17361753,"node_id":"MDQ6VXNlcjE3MzYxNzUz","avatar_url":"https://avatars2.githubusercontent.com/u/17361753?v=4","gravatar_id":"","url":"https://api.github.com/users/pauljamescleary","html_url":"https://github.com/pauljamescleary","followers_url":"https://api.github.com/users/pauljamescleary/followers","following_url":"https://api.github.com/users/pauljamescleary/following{/other_user}","gists_url":"https://api.github.com/users/pauljamescleary/gists{/gist_id}","starred_url":"https://api.github.com/users/pauljamescleary/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pauljamescleary/subscriptions","organizations_url":"https://api.github.com/users/pauljamescleary/orgs","repos_url":"https://api.github.com/users/pauljamescleary/repos","events_url":"https://api.github.com/users/pauljamescleary/events{/privacy}","received_events_url":"https://api.github.com/users/pauljamescleary/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2018-10-09T13:18:15Z","updated_at":"2018-10-09T13:18:15Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"**Background**\nThe default message queue for VinylDNS is AWS SQS.  For VinylDNS volumes, SQS can run in the free tier depending on the polling interval and number of nodes being run.\n\nHowever, not all networks have egress to AWS.  Also, while SQS is cheap and robust, administration of an AWS account and access can be cumbersome.\n\n**Solution**\nCreate an SQS like database using MySQL.  Using a database as queue is not an ideal solution for high-throughput message queues with lots of nodes.  However, VinylDNS has relatively low throughput for its message queue, and a limited number of nodes.  The contention in the database should be minimal, and viable for many installations.\n\nUsing MySQL has the added benefit of simplifying operations.  Separate software (RabbitMQ for example) does not also need to be operated.  The entirety of VinylDNS can work just off MySQL."}}
{"actor":{"display_login":"pauljamescleary"}}