目录
概述
GoEdge 是一款高性能的、支持多种功能的反向代理服务器,通常用于流量管理、负载均衡、安全防护等场景。GoEdge 是基于 Go 语言开发的,设计目标是为开发者和运维人员提供灵活、高效、易用的代理解决方案。
核心功能
反向代理:
- 支持 HTTP、HTTPS、WebSocket 等多种协议的反向代理。
- 支持对请求进行负载均衡、分流、缓存、压缩等操作。
流量管理:
- 具备流量监控、限速、带宽管理等能力,可以针对不同的请求进行流量控制。
安全防护:
- 支持多种安全功能,如 IP 黑白名单、防 DDoS 攻击、WAF(Web 应用防火墙)等,增强服务的安全性。
负载均衡:
- 支持多种负载均衡算法(如轮询、最少连接等),确保请求的高效分发。
-
静态资源加速:
- 提供静态资源加速的能力,提升静态文件的访问速度。
-
SSL/TLS 支持:
- 支持 SSL/TLS 协议,能够为 HTTPS 提供加密和安全传输。
典型应用场景
- Web 应用的流量分发:将请求分发到不同的后端服务器,实现负载均衡。
- API 网关:可以作为 API 网关,为微服务架构提供接口管理和流量控制。
- 安全防护:通过多种安全机制防止恶意攻击,保障服务的稳定运行。
优点
- 高性能:基于 Go 语言,具有极高的并发处理能力。
- 易部署:轻量级、易于安装配置。
- 功能丰富:集成了多种常用功能,能够满足各种复杂场景的需求。
适用对象
GoEdge 适用于有反向代理、流量管理、安全防护需求的开发者、运维人员,以及需要高性能代理服务的中小型企业和个人站点。
GoEdge中文文档:https://goedge.cloud/docs/About.md
安装
GoEdge的安装比较简单,详情可参照 https://goedge.cloud/docs/Admin/install-script.md。
使用
域名准备
在使用 GoEdge 保护我们的网站之前,我们需要到第三方平台上为我们的网站注册一个域名。如腾讯云的域名注册如下:域名注册购买_域名注册选购 - 腾讯云
DNSPOD的API秘钥申请
因 GoEdge 管理平台可远程同步DNS记录,因此需要提前申请第三方厂商的 API秘钥,腾讯云的API秘钥申请如下:账号登录 - DNSPod-免费智能DNS解析服务商-电信_网通_教育网,智能DNS 。申请完毕后将 SecretId、SecretKey分別保存备用。
添加DNS厂商账号
将上一步申请的SecretId、SecretKey配到平台的DNS账号中,并添加上面配置好的域名
添加集群
集群是一系列边缘节点的集合,是边缘节点集中管理的单位。一个集群下的所有边缘节点共享一个公共的域名。
在这一步中,我们将设置好集群的域名、DNS、集群的防御策略等。
添加节点
集群的工作必须以实际的边缘节点为载体,因此,我们还需要网集群中国至少添加一个节点,每个节点都会在DNS厂商管理平台中添加一条DNS的记录。
添加网站
集群和节点都添加完后,CDN的环境算是准备完成了,这个时候我们需要网准备好的集群中添加要保护的网站对象。
到这一步,我们就可以通过网站的CNAME访问网站了。
工作原理
- 用户通过浏览器访问域名 ipudev.millerlai.online 。这个请求会被发送到DNS服务器做一个域名查询,解析出背后的边缘节点IP 192.168.122.237、192.168.122.238。
- 请求达到192.168.122.237、192.168.122.238其中一个边缘节点,然后根据域名 找到 goedge中配置的网站,以及网站对应的 原地址:192.168.122.239:30001 ,请求获得最终的处理。