{"action":"closed","issue":{"url":"https://api.github.com/repos/Netflix/eureka/issues/181","repository_url":"https://api.github.com/repos/Netflix/eureka","labels_url":"https://api.github.com/repos/Netflix/eureka/issues/181/labels{/name}","comments_url":"https://api.github.com/repos/Netflix/eureka/issues/181/comments","events_url":"https://api.github.com/repos/Netflix/eureka/issues/181/events","html_url":"https://github.com/Netflix/eureka/issues/181","id":41300156,"number":181,"title":"Guaranteed instance id uniqueness ","user":{"login":"tbak","id":728768,"avatar_url":"https://avatars.githubusercontent.com/u/728768?v=3","gravatar_id":"","url":"https://api.github.com/users/tbak","html_url":"https://github.com/tbak","followers_url":"https://api.github.com/users/tbak/followers","following_url":"https://api.github.com/users/tbak/following{/other_user}","gists_url":"https://api.github.com/users/tbak/gists{/gist_id}","starred_url":"https://api.github.com/users/tbak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tbak/subscriptions","organizations_url":"https://api.github.com/users/tbak/orgs","repos_url":"https://api.github.com/users/tbak/repos","events_url":"https://api.github.com/users/tbak/events{/privacy}","received_events_url":"https://api.github.com/users/tbak/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Netflix/eureka/labels/2.x","name":"2.x","color":"bfd4f2"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2014-08-27T16:01:02Z","updated_at":"2016-06-02T22:26:03Z","closed_at":"2016-06-02T22:26:03Z","body":"Current Eureka design assumes that clients choose their instance id, and submit it to the Eureka server during registration process. It has some pros/cons versus reversed process, where the server assigns an id to a client and sends it back in a reply to a registration request.\r\n\r\n**Client side instance id assignment**\r\nPros:\r\n* client can choose their own naming schema (use instance id in AWS, or IP address or a descriptive name like backend-server-X)\r\n\r\nCons:\r\n* client is responsible for instance id uniqueness, across multiple applications\r\n* Eureka server must be able to detect situations where the same id is used by multiple different clients (when the id uniqueness contract is violated by clients)\r\n\r\n**Server side instance id assignment**\r\nPros:\r\n* clients are relieved from assigning globally unique ids\r\n* no problem with misbehaving clients\r\n\r\nCons:\r\n* it is difficult to generate compact, descriptive and unique ids in a distributed system. For example ip address itself is not enough (can be reassigned).\r\n* using UUIDs would solve the uniqueness problem, but would leave us with long and cryptic ids\r\n\r\n"}}
{"actor":{"display_login":"qiangdavidliu"}}