[开源]CDN & WAF集群管理,致力于做一款人人用得起的 CDN & WAF 系统

项目描述······

一、开源项目简介

GoEdge是一款管理分布式CDN边缘节点的开源工具软件,目的是让用户轻松地、低成本地创建CDN/WAF等应用。

GoEdge目标

做一款人人用得起的CDN & WAF系统。

二、开源协议

使用BSD-3-Clause开源协议

三、界面展示

图片

四、功能概述

特性

  • 免费 - 开源、免费、自由、开放

  • 简单 - 架构简单清晰,安装简单,使用简单,运维简单

  • 高扩展性 - 可以自由扩展新的节点,支持亿级数据

功能介绍

  • 多用户

  • 日志审计

  • 集群管理

  • HTTP/HTTPS/TCP/UDP等协议支持

  • WAF

  • 缓存

  • DNS自动解析

  • 多域名绑定

  • 免费证书申请

  • IP黑白名单

  • 访问日志

  • 统计

  • 内容压缩

  • Protocol Proxy协议

  • 本地静态文件

  • URL跳转

  • 路由规则

  • 重写规则

  • 访问控制

  • 字符编码

  • 自定义页面

  • 自定义HTTP Header

  • Websocket

  • WebP自动转换

  • Fastcgi

  • 请求限制

  • 流量限制

产品优势

在业界,很多人都选用Squid、HAProxy、Nginx等工具作为CDN服务应用程序,那么为什么要选择GoEdge呢?诚然这些都是非常优秀的工具,但是GoEdge相对于它们在某些地方仍然有一些明显的优势:

  • 完整的管理界面 - 可以通过管理界面操作一切功能,无需使用代码,为我们节省了记忆负担,也减少了出错的机会;

  • 安装简单 - 得益于我们发布的程序都是编译好的二进制文件,即使是一个技术小白也可以轻松安装、启动,无需安装额外的系统库,上传、解压、启动可以一气呵成;

  • 完整的解决方案 - 不仅仅包含CDN加速功能、Web服务,还包含了多租户(用户)、日志、监控、安全(WAF)、DNS等功能;

  • 容易集成到别的系统 - 所有数据都通过GRPC操作,第三方系统可以轻易通过GRPC和HTTP API同GoEdge通讯;

  • 更容易二次开发 - 基于Go语言的GoEdge,相对于其他C语言的应用来说更加容易二次开发,入门也相对更加简单,只需要花一些时间学习Go语言即可上手。

性能

目前我们的客户在生产环境中单节点出口带宽峰值最高达17Gbps、缓存文件数量最高达1亿、缓存内容最高达20T,配置:CPUx20线程/128G内存/SSD硬盘。

来源:GoEdge 官网文档

五、技术选型

架构

图片

其中:

  • 边缘节点 - 接收和响应用户请求的终端节点

  • 管理员系统 - 整体的管理控制系统

  • API集群 - 一组API节点,为别的类型节点提供数据和运算支持

  • 用户系统 - 为租户提供管理系统(商业版专属)

  • 区域监控系统 - 在各个区域监控节点端口连通性(商业版专属)

  • DNS系统 - 一套可以自行搭建的域名解析系统(商业版专属)

  • 数据库集群 - 存储系统需要持久化的数据

运行环境

  • 操作系统:目前只支持macOS和Linux开发环境;

  • MySQL:支持 v5.7.x 以上 / TiDB 3.0以上;

  • Golang:支持 v1.18以上;

  • macOS X上需要安装musl交叉编译工具链,安装方法参考项目文档。

其中的组件源码包含如下:

  • 边缘节点

  • API节点

  • 管理平台

详细内容请查看 README.md 文档

运行环境······

浏览器

项目技术······

html

数据库文件······

项目截图······
文件目录······
暂无数据

       积分下载        0毛下载


未经允许不得转载: ICode联盟 » 项目源码 » [开源]CDN & WAF集群管理,致力于做一款人人用得起的 CDN & WAF 系统

 
 项目推荐 更多»