网站动静加速架构 dcdn+ga 全站加速和全球加速api

# 背景

我们的公司提供的所有服务均位于香港,这意味着我们的客户,主要分布在中国内地,访问这些服务时可能会遇到速度较慢的问题。由于我们专注于NFT领域,因此选择在香港提供服务。

# 一、加速策略

## 1.1 静态资源加速

静态资源加速是指对如HTML、JavaScript、CSS和图像文件等静态文件的快速分发。利用云服务提供商的CDN服务,我们可以有效地提升这些静态资源的加载速度。

## 1.2 动态数据加速

动态数据加速则涉及到实时数据的处理,特别是API接口的数据。由于这些数据需要实时更新,我们不能简单地通过缓存来加速。因此,我们的目标是提高API的响应速度,这通常受到网络条件的限制。

# 二、部署方案

我们选择了阿里云的全球加速产品(D CDN)作为我们的加速解决方案,因为我们的所有资源都托管在阿里云上。

# 三、架构细节

## 用户访问路径

我们的用户遍布全球,但以国内用户为主。

### 3.1 第一步:DNS解析

阿里云提供的智能DNS解析服务可以加速域名解析过程,这是用户访问我们服务的第一步。

### 3.2 第二步:D CDN

D CDN可以被视为阿里云在全球范围内的接入点。全球有超过3200个节点,智能DNS会根据用户的地理位置选择最近的节点,然后D CDN会计算出最优的回源路径。

### 3.3 第三步:全球加速(GA)

D CDN之后是我们购买的全球加速服务(GA)。我们选择了香港和北京作为上车点。GA依托于阿里云强大的BGP网络,确保数据传输的高效性。

### 3.4 第四步:应用负载均衡(ALB)

GA回源到我们的ALB,这是一个动态的负载均衡器,可以提高响应速度。最初,我们将Web应用防火墙(WAF)部署在ALB上,但后来为了降低D CDN的费用,我们将WAF功能集成到了D CDN中,从源头过滤攻击,提高了效率并节省了成本。

### 3.5 第五步:后端服务器

最终,请求会到达我们的内部网络和服务器,服务器处理请求并返回数据。

# 四、总结

加速架构的选择多种多样,关键在于找到最适合公司业务需求的方案。我们最初的设计也是通过不断的实践和调整才逐步完善的。

![架构图](https://pic.it1024doc.com/cnblogs/202412/39bb132ff0c4e213fd0899a2ad60e8de.png)

文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/4307.html

(0)
LomuLomu
上一篇 2024 年 12 月 24 日
下一篇 2024 年 12 月 24 日

相关推荐

  • Bolt.new 30秒做了一个网站,还能自动部署,难道要吊打 Cursor?

    大家好,我是汤师爷~ 这篇聊聊 Bolt.new 和 Cursor 的对比。 Bolt.new 是一款基于 SaaS 的 AI 编码平台。它由 LLM 驱动的智能体作为底层,并结合 WebContainers 技术,让用户可以直接在浏览器中进行编码和运行。其主要优势包括: 支持前后端同时开发; 项目文件夹结构可视化; 环境自托管,自动安装依赖(如 Vite、…

    2025 年 1 月 10 日
    12700
  • 使用Docker部署的基于binlog实现Mysql8

    概念 MySQL 基于 Binlog 的主从复制(Master-Slave Replication)是 MySQL 数据库中实现数据复制的一种机制。在这种复制模式下,主库(Master)记录所有对数据库的修改操作(如 INSERT、UPDATE、DELETE 等)到 二进制日志(Binlog) ,从库(Slave)则读取这些日志并执行相同的操作,从而保持与主…

    未分类 2025 年 1 月 13 日
    13000
  • 在eclipse中创建JavaWeb项目

    开启项目之旅:初始化开发环境 构建项目框架:创建新项目 配置项目细节:选择项目配置 当首次配置Tomcat时,界面会显示如下 继续操作:点击下一步 实际上,这一步也可以直接点击“Next”继续 完成项目创建:最终界面 至此,项目创建成功 构建基础架构:三层架构示例 实体类(Entity)代码: package com.zuxia.entity; public…

    2024 年 12 月 26 日
    17100
  • 永久激活破解IDEA2024最新教程

    IntelliJ IDEA 是被广泛认可的Java开发高效工具,优选于多种编程环境中。本文将指导您通过脚本方法免费激活 IntelliJ IDEA 以及 Jetbrains 的其它产品,有效对应2021年及以后版本,含最新发布版本。 快速安装 您可以从 JetBrains 官网下载到 IntelliJ IDEA 的最新版。简单几步,轻松完成安装。 激活工具获…

    未分类 2024 年 7 月 10 日
    69900
  • 手动部署前后端分离的项目到本地

    1.准备工作 使用maven打包springboot项目为.jar文件得到springboot-0.0.1-SNAPSHOT.jar 打包vue项目 npm install -g @vue/cli安装Vue CLI 在项目根目录下,运行npm run build命令来构建项目得到一个dist文件夹 将打包好的文件通过远程仓库中转至docker虚拟机 在虚拟机…

    2025 年 1 月 11 日
    9900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信