From 8ed0099514422aa609985f2f6875802702bcdb1e Mon Sep 17 00:00:00 2001 From: Michal Pristas Date: Thu, 18 Oct 2018 21:34:47 +0200 Subject: [PATCH] Updated communication docs (#745) * updated docs * updated pics * Update communication.md s/cache/storage * Update communication.md more comments addressed --- docs/content/design/communication.md | 53 ++++-------------- docs/static/athens-clear-scenario.png | Bin 25114 -> 10601 bytes .../athens-new-proxy-old-olympus-scenario.png | Bin 21509 -> 0 bytes docs/static/athens-private-repo-scenario.png | Bin 15130 -> 0 bytes 4 files changed, 10 insertions(+), 43 deletions(-) delete mode 100644 docs/static/athens-new-proxy-old-olympus-scenario.png delete mode 100644 docs/static/athens-private-repo-scenario.png diff --git a/docs/content/design/communication.md b/docs/content/design/communication.md index c27b7323..981c9764 100644 --- a/docs/content/design/communication.md +++ b/docs/content/design/communication.md @@ -6,60 +6,27 @@ date: 2018-02-11T15:57:56-05:00 ## Communication flow This is the story of a time long ago. A time of myth and legend when the ancient Gods were petty and cruel and they plagued build with irreproducibility. -Only one project dared to challenge their power...Athens. Athens possessed a strength the world had never seen. Filling its cache. +Only one project dared to challenge their power...Athens. Athens possessed a strength the world had never seen. Filling its storage. ### Clean plate -At the beginning, there's theoretical state when a cache of proxy and registry is empty. +At the beginning, there's theoretical state when a storage of the proxy is empty. When User makes a request at this ancient time, it works as described on the flow below. -- User contacts proxy asking for module M, version v1.0 -- Proxy checks whether or not it has this module in its storage. It does not. --So it responds with a redirect to Olympus and schedules a background job to fetch the module from Olympus. -- User receives redirect to Olympus and asks it for module M, version v1.0 -- Olympus doesn't have the module in its cache as well, so it asks the underlying VCS (e.g github.com) for a module. -- After it receives all the bits, it stores it into its own cache and serves it to the User. +- User runs `go get` to acquire new module. +- Go CLI contacts the proxy asking for module M, version v1.0 +- The proxy checks whether or not it has this module in its storage. It does not. +- The proxy downloads code from the underlying VCS and converts it into the Go Module format. +- After it receives all the bits, it stores it into its own storage and serves it to the User. - User receives module and is happy. -- Concurrently the proxy asks Olympus for module M, version v1.0 as well. Olympus, now aware of this module, serves it so proxy can fill its own cache. + +The process from the user using `go get` all the way to the user downloading a module is synchronous. ![Communication flow for clear state](/athens-clear-scenario.png) -### New proxy joins the party - -At this point, we have 1 proxy and 1 registry, each of them aware about module M. Now new proxy joins with an empty cache. - -We can see the flow is very similar. - -- User contacts new proxy, which checks internal storage to find out it is missing the module. - - Redirects to Olympus, - - Schedules new cache fill job. -- User contacts Olympus aware of the module and receives the response right away. -- The proxy, after some time, contacts Olympus and fills its cache. - -![Communication flow for new proxy](/athens-new-proxy-old-olympus-scenario.png) - - ### Happy path -Now that all proxies and olympus are aware of module M at version v1.0, they can all serve that module immediately to the user, without redirecting or fetching it from the VCS. +Now that the proxy is aware of module M at version v1.0, it can serve that module immediately to the user, without fetching it from the VCS. ![Communication flow for new proxy](/athens-proxy-filled.png) - - -### Private Code - -There are times when you do not want the mighty gods of Olympus to know about your desires. E.g: - -- You are requesting a private module, -- Communication between the proxy and Olympus is disabled. - -In this case - -- User contacts proxy asking for a private module. -- Proxy detects this repo is private and checks its storage. It does not find it there. -- Proxy contacts internal VCS directly. -- VCS responds with a module which is then stored in a cache Synchronously. -- The module is served to the User. - -![Communication flow for new proxy](/athens-private-repo-scenario.png) diff --git a/docs/static/athens-clear-scenario.png b/docs/static/athens-clear-scenario.png index 022e67d95f16c8eb6893533b3480eb24a38e01c6..073cb63b2ef9e13f072123b26ddb9895144bbdcf 100644 GIT binary patch literal 10601 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 Td=dO~C&W}xzKzJwO*k=Wt_nB&jbMj@veNtqAIM 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 V(rbDWcxe=L+{nx@@92eF{|9wp^JoA7