---
title: "组件"
date: 2018-02-11T16:57:56-05:00
weight: 5
---

从一个非常高的角度来看，系统中有三个主要的组件。

### 客户端

客户端必须是一个支持 module 的 go.编写该文档时，它是 [Go v1.12+](https://golang.org/dl).

### VCS

VCS 对 Athens 而言是一个外部源。Athens 扫描类似 `github.com` 等的多种 VCS，并获取源。

### 代理

我们部署在企业内部的代理主要是为了：

* 托管私有模块
* 排除对公有模块的访问
* 存储公有模块

重点在于，这个代理并不打算成为上游代理的完整镜像。对于公有模块，它的角色是为了存储并提供访问控制。
