84 个版本 (40 个稳定版)
新 1.41.0 | 2024 年 8 月 16 日 |
---|---|
1.38.0 | 2024 年 7 月 22 日 |
1.19.0 | 2024 年 3 月 26 日 |
1.9.0 | 2023 年 12 月 21 日 |
0.0.0 |
|
#2153 in 网络编程
每月 1,058 次下载
用于 2 crates
4MB
59K SLoC
aws-sdk-globalaccelerator
这是 全球加速器 API 参考。本指南适用于需要详细了解全球加速器 API 操作、数据类型和错误的开发者。有关全球加速器功能的更多信息,请参阅全球加速器开发者指南。
全球加速器是一种服务,您可以在其中创建 加速器 以提高本地和全球用户的应用程序性能。根据您选择的加速器类型,您可以获得额外的优势。
- 通过使用标准加速器,您可以提高面向全球受众的互联网应用程序的可用性。使用标准加速器,全球加速器将在亚马逊网络服务全球网络上将流量引导到最佳端点。
- 对于其他场景,您可能选择自定义路由加速器。使用自定义路由加速器,您可以使用应用程序逻辑直接将一个或多个用户映射到多个端点中的特定端点。
全球加速器是一个全球服务,支持多个亚马逊网络服务区域中的端点,但您必须指定美国西部(俄勒冈)区域以创建、更新或其他方式与加速器一起工作。也就是说,例如,在亚马逊网络服务 CLI 命令中指定 --region us-west-2。
默认情况下,全球加速器为您提供静态IP地址,您可以将这些地址关联到您的加速器。这些静态IP地址来自Amazon Web Services边缘网络的单播。对于IPv4,全球加速器提供两个静态IPv4地址。对于双栈,全球加速器总共提供四个地址:两个静态IPv4地址和两个静态IPv6地址。对于标准IPv4加速器,您可以选择不使用全球加速器提供的地址,而是配置这些入口点使用您带到全球加速器(BYOIP)的自有IP地址范围内的IPv4地址。
对于标准加速器,它们将在多个Amazon Web Services区域内的多个端点资源之间分配传入的应用程序流量,从而提高应用程序的可用性。标准加速器的端点可以是位于单个Amazon Web Services区域或多个Amazon Web Services区域的网络负载均衡器、应用程序负载均衡器、Amazon EC2实例或弹性IP地址。对于自定义路由加速器,您将到达静态IP地址的流量映射到端点中的特定Amazon EC2服务器,这些端点是虚拟私有云(VPC)子网。
静态IP地址在加速器存在期间始终分配给您,即使您禁用了加速器并且它不再接受或路由流量也是如此。但是,当您删除一个加速器时,您将失去分配给它的静态IP地址,因此您将无法再通过它们进行流量路由。您可以使用像基于标签的权限这样的IAM策略来限制具有删除加速器权限的用户。有关更多信息,请参阅基于标签的策略。
对于标准加速器,全球加速器使用Amazon Web Services全球网络根据健康、客户端位置和您配置的策略将流量路由到最佳区域端点。该服务会立即对健康或配置的变化做出反应,以确保客户端的互联网流量始终被引导到健康的端点。
有关了解和使用全球加速器的更多信息,请参阅全球加速器开发者指南。
入门
许多服务和操作都有示例,请查看GitHub中的示例文件夹。
SDK为每个AWS服务提供一个crate。您必须在Rust项目中将Tokio作为一个依赖项来执行异步代码。要将aws-sdk-globalaccelerator
添加到您的项目中,请在您的Cargo.toml文件中添加以下内容
[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
aws-sdk-globalaccelerator = "1.41.0"
tokio = { version = "1", features = ["full"] }
然后在代码中,可以使用以下方式创建一个客户端
use aws_sdk_globalaccelerator as globalaccelerator;
#[::tokio::main]
async fn main() -> Result<(), globalaccelerator::Error> {
let config = aws_config::load_from_env().await;
let client = aws_sdk_globalaccelerator::Client::new(&config);
// ... make some calls with the client
Ok(())
}
有关可以进行的调用以及每个调用的输入和输出的信息,请参阅客户端文档。
使用SDK
在SDK发布之前,我们将向开发者指南添加有关使用SDK的信息。请随时通过打开一个问题并描述您想做的事情来建议指南的附加部分。
获取帮助
- GitHub讨论 - 用于想法、RFC和一般问题
- GitHub问题 - 用于错误报告和功能请求
- 生成的文档(最新版本)
- 使用示例
许可证
本项目采用Apache-2.0许可证。
依赖项
~8–20MB
~283K SLoC