{"action":"created","issue":{"url":"https://api.github.com/repos/coreos/fleet/issues/1426","repository_url":"https://api.github.com/repos/coreos/fleet","labels_url":"https://api.github.com/repos/coreos/fleet/issues/1426/labels{/name}","comments_url":"https://api.github.com/repos/coreos/fleet/issues/1426/comments","events_url":"https://api.github.com/repos/coreos/fleet/issues/1426/events","html_url":"https://github.com/coreos/fleet/pull/1426","id":131672144,"number":1426,"title":"[WIP] Use gRPC to communicate the engine and agents ","user":{"login":"hectorj2f","id":3602792,"avatar_url":"https://avatars.githubusercontent.com/u/3602792?v=3","gravatar_id":"","url":"https://api.github.com/users/hectorj2f","html_url":"https://github.com/hectorj2f","followers_url":"https://api.github.com/users/hectorj2f/followers","following_url":"https://api.github.com/users/hectorj2f/following{/other_user}","gists_url":"https://api.github.com/users/hectorj2f/gists{/gist_id}","starred_url":"https://api.github.com/users/hectorj2f/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hectorj2f/subscriptions","organizations_url":"https://api.github.com/users/hectorj2f/orgs","repos_url":"https://api.github.com/users/hectorj2f/repos","events_url":"https://api.github.com/users/hectorj2f/events{/privacy}","received_events_url":"https://api.github.com/users/hectorj2f/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/coreos/fleet/labels/area/performance","name":"area/performance","color":"bfe5bf"},{"url":"https://api.github.com/repos/coreos/fleet/labels/needs%20review","name":"needs review","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2016-02-05T15:30:48Z","updated_at":"2016-02-05T18:28:30Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/coreos/fleet/pulls/1426","html_url":"https://github.com/coreos/fleet/pull/1426","diff_url":"https://github.com/coreos/fleet/pull/1426.diff","patch_url":"https://github.com/coreos/fleet/pull/1426.patch"},"body":"This PR aims to provide a new communication mechanism to improve the performance, data transmission and unit state sharing between the fleet engine and agents in a fleet cluster. \r\n\r\nWe use gRPC/HTTP2 as framework to expose all the required operations (schedule unit, destroy unit, save state, ...) that will allow to coordinate the engine (the fleet node elected as leader) with the agents. In this implementation, we provide a new registry that stores all the information in-memory. Nevertheless, it's also possible to use the etcd registry.\r\n\r\n**TODO**... (some additional information, figures, squash of all commits and plots)\r\n\r\nThis PR has been labeled as WIP, we are still working on improvements, fault tolerance, bug fixing, etc :) ...\r\n\r\n**NOTE:** If you want to try this PR, you need to rebuild the Go dependencies, and preferably to use Go v1.5.1. This PR was so big that we were forced to exclude our new Go dependencies.\r\n\r\nping @htr"},"comment":{"url":"https://api.github.com/repos/coreos/fleet/issues/comments/180485203","html_url":"https://github.com/coreos/fleet/pull/1426#issuecomment-180485203","issue_url":"https://api.github.com/repos/coreos/fleet/issues/1426","id":180485203,"user":{"login":"mischief","id":1487996,"avatar_url":"https://avatars.githubusercontent.com/u/1487996?v=3","gravatar_id":"","url":"https://api.github.com/users/mischief","html_url":"https://github.com/mischief","followers_url":"https://api.github.com/users/mischief/followers","following_url":"https://api.github.com/users/mischief/following{/other_user}","gists_url":"https://api.github.com/users/mischief/gists{/gist_id}","starred_url":"https://api.github.com/users/mischief/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mischief/subscriptions","organizations_url":"https://api.github.com/users/mischief/orgs","repos_url":"https://api.github.com/users/mischief/repos","events_url":"https://api.github.com/users/mischief/events{/privacy}","received_events_url":"https://api.github.com/users/mischief/received_events","type":"User","site_admin":false},"created_at":"2016-02-05T18:28:30Z","updated_at":"2016-02-05T18:28:30Z","body":"@hectorj2f perhaps it would be worth your time to investigate using fleet with the etcd v3 api, which uses gRPC. "}}