腾讯EdgeOne产品测评体验—更快更强更安全,安全我选EdgeOne

腾讯EdgeOne产品测评体验—更快更强更安全,安全我选EdgeOne

王婆的瓜可甜?

自 23 年 8 月份 EdgeOne 开放订阅套餐后,腾讯云用户使用 EdgeOne 来为自己网站进行加速和防护的站点数量,呈现爆发式增长趋势。
金融服务业受到的 Web 应用程序和 API 攻击以 3.5 倍速率逐年激增,攻击者利用新发现的零日漏洞的速度惊人,24 小时内可能高达数千次/小时(点此查看详情);不少开发者反馈服务器遭 DDOS 攻击,致服务器崩溃(点此查看详情)…近年各类重大漏洞不断暴漏,为网站安全带来非常大的风险。
应对漏洞对于开发者而言是一个非常复杂和高难度的技术问题,处理起来非常棘手,带来巨大挑战。Edgeone 为了解决企业与个人用户的 Web 漏洞防护等燃眉之急,不断适配用户的需求,升级产品能力以让产品更安全、更易用、更开放。开发者在使用 EdgeOne 来为自己网站进行加速和防护,更安全稳定、节省成本。

狠起来自己都杀

以下数据来自腾讯云官方文档,边缘安全加速平台EO是实打实的全能型选手,cover住了腾讯以往三种CDN的所有功能,成为一把瑞士军刀!

产品优势边缘安全加速平台 EO内容分发网络 CDN全站加速网络 ECDN安全加速 SCDN
更丰富的功能静态内容分发加速
动态内容智能加速
DDoS/CC 防护
Bot 防护
Web 防护
流量调度
自定义推送实时日志字段
边缘函数
规则引擎
四层代理
DNS 记录托管
更省心的计费模式套餐模式
资源包抵扣
仅对防护后流量计费
超出用量后付费
“干净流量”计费
更简单、灵活的配置方式站点全局一键配置
场景化推荐配置
免费证书

诚然,数据上看着的确很甜,但是实际使用如何?作者曾在EdgeOne推出的时候体验过一次,的确好用,不过当时作为新产品功能还并不太多,这次作者将再次对其进行测评,从常规和安全方面进行测试,实际效果如何,请看本文实践部分!

实践

常规玩法

看完纸面数据,我们来看看实际应用。首先我们思考一个问题: CDN的第一要义是什么?从笔者的角度来看,一般是以下两点
1、 隐藏源IP
2、 优化终端用户访问
其中,隐藏源IP是基本属性,因为终端用户访问的就是咱CDN的边缘节点,边缘节点再通过优化网络传递数据到源站。那么在这个环节,我们要专注一点的就是看如何优化终端用户的访问。

测试背景

某公司因业务需求,在南美放置了一台服务器,但是大陆直连延迟高达400ms,测试使用CDN对其进行加速,以降低延迟,引入cloudflare和gcore作为参照组进行对比
源服务器IP:54.207.148.175

测试cdn预置

Cloudflare和Gcore的设置请参照其官方文档进行操作,腾讯云边缘加速安全平台EO采用全球加速(不含中国大陆)

EO

image.png
在这里插入图片描述

Cloudflare

image.png
在这里插入图片描述

gcore

在这里插入图片描述

测试结果

访问方式最小延迟最大延迟是否高可用
直连355ms404msNA
EO30ms185ms
Cloudflare191ms210ms
Gcoretimeouttimeout

简单测试加速效果来看,EO和Cloudflare表现还行,但是腾讯云EO更胜一筹,似乎对移动线路有更好的优化,延迟能干到30ms。

边缘函数

腾讯云边缘函数(Edge Functions)提供了 EdgeOne 边缘节点的 Serverless 代码执行环境,您只需编写业务函数代码并设置触发规则,无需配置和管理服务器等基础设施,即可在靠近用户的边缘节点上弹性、安全地运行代码。
image.png
image.png
从作者的来看,国内的云厂商中,腾讯云应该是第一家将边缘函数集成到CDN的,作者作为一名长期使用亚马逊云的用户来讲,边缘函数的功能是非常棒的。在腾讯云EO文档中关于边缘函数有示例代码,比如图片自适应缩放
边缘安全加速平台 EO 图片自适应缩放-边缘函数-文档中心-腾讯云
这里就不再对已存在的示例代码做演示,这里添加一个修改url的函数示例
function handler(request){ // 获取请求头 var request = request.request; var headers = request.request.headers; var originUrl = request.request.uri; // 检查 x-vendor-type 请求头是否存在 if (headers[‘x-vendor-type’]) { var targetObject = headers[‘x-vendor-type’].value // 修改回源 URL Path request.request.uri = ‘/’ + targetObject + originUrl; } return request;}
该函数会自动检测用户的请求的headers中是否带有x-vendor-type,若存在则读取其对应值,再返回给用户修改后的url,其实这个也和URL重定向类似,只不过在腾讯云EO的“重定向示例函数”是使用地理位置进行重定向,大家也可以根据自己的需求进行修改。

安全

腾讯云EO将安全也融合到该服务中,提供站点(七层)服务防护和四层代理防护,所有等级的套餐都提供“自动清洗 DDoS 攻击”,如需享受更多DDoS防护则需要购买企业版。
安全方面,腾讯云EO另外有Web防护、Bot管理、源站防护、自定义页面、告警通知推送等。这里展开讲一下Web防护、Bot管理以及源站防护,个人认为这几点是除DDoS外企业和个人用户很常用的点
image.png

Web 防护

Web 防护是 EO 的核心功能之一,旨在保护网站免受各种 Web 攻击,如 SQL 注入、XSS、CC 攻击等。它通过智能识别和实时阻断来防御威胁,确保网站的可用性和数据安全。

Bot 管理

Bot 管理模块能够检测和识别出恶意爬虫、垃圾bot等非人类行为,并根据预设的策略对其进行拦截或限速,从而保护网站资源,优化用户体验。

源站防护

源站防护功能通过智能流量调度和负载均衡,实现对源站服务器的高可用性保护,确保服务的持续在线和数据的可靠传输。

安全实践

默认启用Web防护种的**“默认托管规则”, **对SQL注入进行测试
image.png

SQL注入测试
规则一览

image.png

添置测试记录image.png
默认全域开启安全防护

image.png

源服务器构建简单SQL

mysql> create database eo-waf;Query OK, 1 row affected (0.00 sec)mysql> use eo-wafDatabase changedmysql> create table User(username varchar(20), password varchar(30), primary key(username));Query OK, 0 rows affected (0.02 sec)mysql> insert into User values(‘a’, ‘123aaa’), (‘b’, ‘123bbb’);Query OK, 2 rows affected (0.01 sec)Records: 2 Duplicates: 0 Warnings: 0
image.png

示例服务器代码

from flask import Flask, request, jsonifyimport jsonimport pymysqlapp = Flask(name)@app.route(‘/’, methods=[‘GET’])def local_handler(): conn = pymysql.connect(host=‘127.0.0.1’, user=‘demo’, password=‘Demo1s34’, db=‘eo-waf’) cursor = conn.cursor() u = request.args.get(‘username’) p = request.args.get(‘password’) sql = f"select username, password from User where username = ‘{u}’ and password = ‘{p}’" cursor.execute(sql) ret1 = cursor.fetchone() if ret1: message = ‘login Success!’ else: message = ‘login Failure!’ return jsonify({‘statusCode’: 200, ‘body’: message})if name == ‘main’: app.run(host=‘0.0.0.0’, port=80)

未启用安全防护,设置严格模式

image.png

启用安全防护

image.png

缓存预热

对于缓存预热,我认为这个功能的确是比较重要的,对于金融/游戏类客户,在某个版本更新后,需要快速推送到边缘站点,减低终端用户的下载时间。对比与国内的云厂商,当然都有提供缓存预热,但是有集成安全、边缘函数的CDN,我们可以参考亚马逊云的cloudfront。Cloudfront的差异点在于没有“缓存预热”功能,若用户想对cloudfront进行缓存预热,需要通过第三方的方案进行操作,对于动手能力差或者理解能力稍差的会造成很大的麻烦。

用量封顶&干净流量

不论是企业用户还是个人用户,我认为费用问题始终是一个很关键的点,启用用量封顶,可以预设值防止超量使用。另外干净流量可以防止用户对恶意攻击流量付费。

  1. 用量封顶:EdgeOne 可周期性地统计业务流量和请求数,您可以自助配置业务流量和请求数的阈值,当统计周期内产生的用量消耗达到您配置的告警阈值时,EdgeOne 将会推送消息通知您,并立即关闭 EdgeOne 安全加速服务,避免产生更多的异常费用。
  2. EdgeOne 使用“干净流量”计费模式:对于安全防护功能拦截的请求不进行计费,仅对通过安全防护功能处理后的流量和请求用量计费。该方式旨在为用户提供更透明的计价方式,帮助用户更好的管理预算,为真正有价值的业务用量买单
    image.png
    image.png

多提一点

免费ssl证书

除上面的主要功能之外,腾讯云EO也提供免费的https证书,这点跟亚马逊云科技的ACM服务相同,极大的简化了用户申请域名再导入域名的复杂程度。

总结

腾讯云边缘安全加速平台 EO,较之国内的云平台CDN产品,可以说是集大成者。腾讯云边缘安全加速平台EO将安全、域名解析、带宽流量管控等功能与传统CDN加速服务整合,为企业级用户提供一站式的内容分发与网络安全综合解决方案。相较于单一的CDN产品,EO在功能层面上具有显著优势:

  1. 安全防护:除CDN基础的DDoS攻击防护外,还整合了WAF网站防火墙、CC防护、Bot管理等安全能力,从边缘层为源站提供全方位的安全防护。
  2. 智能调度:利用智能DNS调度技术,可根据就近性、负载情况动态调配边缘节点资源,实现全球范围内的高效调度和均衡访问。
  3. 性能优化:支持静态资源缓存、智能压缩、回源选路等优化手段,有效降低源站压力和回源延迟,提升响应速度。
  4. 运维简化:一站式管理控制台,可统一配置和查看各项功能,极大减轻运维工作量。
  5. 自动弹性:可根据实际业务访问量智能动态调整带宽资源,同时内置流量监控和带宽封顶,防止突发流量对源站造成冲击。
    总的来说,EO作为一个融合型平台产品,为用户提供高可用、高性能、高安全的一体化内容分发、网络安全及边缘计算解决方案,避免了单点服务可能存在的能力缺陷。对于中大型网站而言,可以极大简化整体架构,降低运维复杂度,缩短业务上线时间,是一种高性价比的解决方案。
    这个产品卖这个价位还是非常有性价比的,大家感兴趣的可以去体验一下:https://cloud.tencent.com/act/pro/edgeone_techoday_promotion?from=22008
    在这里插入图片描述

http://www.ppmy.cn/server/2237.html

相关文章

设计模式之责任链讲解

责任链模式适用于需要将请求和处理解耦的场景,同时又需要动态地组织处理逻辑的场景。 通过使用责任链模式,可以实现请求的动态处理、灵活的扩展和简化的代码编写,提高系统的可维护性和可扩展性。 一、责任链入门 以下这是GPT生成的责任链代…

Scala 第一篇 基础篇

Scala 第一篇 基础篇 一、变量与常量 1、变量2、常量 二、数据类型 1、数据基本类型概览2、元组的声明与使用3、Range介绍和使用4、Option 类型的使用和设计5、类型别名 三、运算符四、程序逻辑 1、一切都是表达式2、分支语句3、循环语句 五、集合 1、List2、Set3、Map4、Arra…

MyBatis 中的动态 SQL 的相关使用方法

为什么会有动态SQL,把SQL写死不是比较方便吗?其实有很多的举例,这里我那一个常见的来说,像我们用户注册,会有必填字段和非必填字段,有些传来的参数不一样,那对应的SQL也不一样,因此&…

10.list的模拟实现(普通迭代器和const迭代器的类模板)

1. list的介绍及使用 1.1 list的介绍 list的文档介绍 list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过…

《架构风清扬-Java面试系列第21讲》什么是线程的优先级?在Java中如何设置线程的优先级?

各位小伙伴早上好! 谢谢你的关注!也欢迎来加入我主导的知识星球,更多干货,提高你的面试准备效率! 敢承诺三天内不满意,可以直接退出! 这道题,属于面试热场的题目,我是不…

ios facebook 升级到最新版本 17.0.0

项目由 Objective-C 写成,而 facebook 新 sdk 由 swift 写的。 需要用到混编。 官网地址:Facebook-ios-sdk 1. 导入库 按官网文档说的做就行。 填入地址:GitHub - facebook/facebook-ios-sdk: Used to integrate the Facebook Platform w…

【网络】服务器间FTP传输文件被限速问题的排查(未达最优解)

服务器间FTP传输文件被限速问题的排查 问题描述具体问题软硬件环境文件传输方式的2种策略FTP相关信息问题表现问题解决结论 发散探讨——基于此问题进行发散研究相关知识从FileZilla软件入手从Windows入手从Linux入手从协议入手Windows和Linux的文件共享,分别是使用…

【C语言】多字节字符、宽字符(涉及字符集和编码)

字符集、编码: 字符集:一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。例如:ASCII、Unicode、GB2312、GBK、GB18030、BIG5(繁体中文) ... 编码方式:符号…

【汇编】计算机系统构成

计算机系统构成 计算机系统包括硬件和软件两部分 硬件 典型的计算机结构包括 中央处理器(CPU)、存储器和输入输出(I/O)子系统 三个主要组成部分,用系统总线把它们连接在一起 计算机硬件组成与各部分之间的联系 软件 计算机软件可以分为系统软件和用户软件两大类 …

uniapp 当前系统没有安装苹果根证书,是否打开证书目录(打开后依次安装证书

当你遇到这类问题时,说明你也极其的困惑!这就是为啥大抵国内这些货色搞的东西总是不尽人意!连开发者生态都搞不好,就急着吹嘘。 这是官方给的技术说明方案: 恭喜你,当你按照这个搞之后,你的问题…

PHP婚恋小程序开发源码支持微信+公众号+APP

随着社会的发展和人们生活节奏的加快,传统的相亲方式已经不能满足现代人的需求。在此背景下,有人想到通过线上小程序的方式来满足更多的人进行相亲,所以在此情况下,婚恋相亲小程序由此出现。婚恋相亲小程序的功能有会员功能&#…

【opencv】示例-videocapture_starter.cpp 从视频文件、图像序列或连接到计算机的摄像头中捕获帧...

/** * file videocapture_starter.cpp * brief 一个使用OpenCV的VideoCapture与捕获设备,视频文件或图像序列的入门示例 * 就像CV_PI一样简单,对吧? * * 创建于: 2010年11月23日 * 作者: Ethan Rublee * * 修改于: 2013年4月17日 * …

springCloudAlibaba集成sentinel实战(超详细)

一、Sentinel介绍 1. 什么是Sentinel Sentinel是阿里开源的项目,提供了流量控制、熔断降级、系统负载保护等多个维度来保障服务之间的稳定性。 分布式系统的流量防卫兵: 随着微服务的普及,服务调用的稳定性变得越来越重要。Sentinel以“流…

验证ElasticSearch 分词的BUG

验证ElasticSearch 分词的BUG 环境介绍 ElasticSearch 版本号: 6.7.0 BUG 重现 创建测试案例索引 PUT test_2022 {"settings": {"analysis": {"filter": {"pinyin_filter": {"type": "pinyin"}},"analy…

在使用lombok的@Slf4j时,启动项目报错。java:找不到符号

问题背景: 在使用lombok的Slf4j时,启动项目报错。 java:找不到符号符号: 方法info(java.lang.String,java.lang.String)位置: 类型为org.apache.ibatis.logging.Log的变量 log解决方式: 在如图所示位置加…

STM32笔记---CAN采样点设置和报错

STM32笔记---CAN采样点设置和报错 采样点设置再同步补偿宽度(SJW)设置 报错分析CAN中断使能寄存器CAN错误状态寄存器 采样点设置 以前配置CAN参数的BS1和BS2参数时认为总线波特率符合要求就可以了,其实同一个波特率可能对应多组参数设置的情…

关于C++的模板的简介

模板的语法 template<typename T> template<class T>以上两种语法都可以&#xff0c;在此处typename和class可互相替换&#xff0c;没有区别 模板是支持C泛型编程的关键语法&#xff0c;泛型编程是C与C的明显区别之一 这两种语法都可以在类模板或函数模板中使用 …

RabbitMQ的简单

前言 RabbitMQ是一套开源&#xff08;MPL&#xff09;的消息队列服务软件&#xff0c;是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现&#xff0c;由以高性能、健壮以及可伸缩性出名的 Erlang 写成。 目录 介绍 RabbitMQ系统结构 RabbitMQ成员…

LD-Pruner、EdgeFusion(On-Device T2I)、FreeDiff、TextCenGen、MemLLM

本文首发于公众号&#xff1a;机器感知 https://mp.weixin.qq.com/s/KiyNfwYWU-wBiCO-hE9qkA 苏 The devil is in the object boundary: towards annotation-free instance segmentation using Foundation Models Foundation models, pre-trained on a large amount of data…

Linux crontab练习之在系统中设定定时任务并优化定时任务

Linux crontab练习之在系统中设定定时任务并优化定时任务_2 要求 每天凌晨4点系统的设备使用信息并以邮件的方式放送到root邮箱中确保此任务为系统定时任务 脚本实现 #!/bin/bashdnf install postfix s-nail-14.9.22-6.el9.x86_64 -y &> /dev/nullsystemctl enable …