You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 22, 2020. It is now read-only.
Start /client and an associated /cmd/agroctl -- the design of which is a little bit clever:
Start /client as another concrete implementation of the agro.Server interface. The difference being that the inode storage, the file abstraction, and so on, are fairly simple stubs into a new set of things: RemoteINodeStorage, RemoteBlockStorage, and RemoteMetadata. These basically make HTTP calls for all their implementations, calling the internal/http endpoint as a proxy and off we go.
The cool part is then agroctl (and the meta-client calls; I would guess things like ls) can self-host. The long-future goal being that it could talk directly to etcd for metadata if it needed, or could do local caching, or can do a lot of things -- which will make the FUSE client quite easy to implement well, without needing to proxy everything. In effect, a long-running FUSE daemon could itself be another node that doesn't register as storage, but speaks the native node-to-node interface.
Meanwhile, for other scenarios, the proxy works great.
The text was updated successfully, but these errors were encountered:
Start
/client
and an associated/cmd/agroctl
-- the design of which is a little bit clever:Start
/client
as another concrete implementation of theagro.Server
interface. The difference being that the inode storage, the file abstraction, and so on, are fairly simple stubs into a new set of things: RemoteINodeStorage, RemoteBlockStorage, and RemoteMetadata. These basically make HTTP calls for all their implementations, calling the internal/http endpoint as a proxy and off we go.The cool part is then
agroctl
(and the meta-client calls; I would guess things likels
) can self-host. The long-future goal being that it could talk directly to etcd for metadata if it needed, or could do local caching, or can do a lot of things -- which will make the FUSE client quite easy to implement well, without needing to proxy everything. In effect, a long-running FUSE daemon could itself be another node that doesn't register as storage, but speaks the native node-to-node interface.Meanwhile, for other scenarios, the proxy works great.
The text was updated successfully, but these errors were encountered: