AWSNeptune请求限流-使用gremlin-go
创始人
2024-09-26 16:01:44
0
  1. 首先,理解 Neptune 限流的原因:AWS Neptune 是作为一种无服务器的图数据库服务,为了保障数据库系统的安全和稳定,会对客户端发起的请求进行限流和监控。当客户端发起的请求超过 Neptune 可接受的限制时,Neptune 会返回“请求被限制”的错误。
  2. 使用 gremlin-go 连接 Neptune 数据库时,需要设置一个密钥和端点,例如:
	import (
		"context"
		"fmt"

		"github.com/aws/aws-sdk-go-v2/config"
		"github.com/aws/aws-sdk-go-v2/service/secretsmanager"
		"github.com/aws/aws-sdk-go-v2/service/secretsmanager/types"
		gremcos "github.com/aws/aws-sdk-go-v2/service/neptune/gremlin"
	)

	func main() {
		secretName := "neptune-secret"
		endpoint := "neptune-endpoint"

		cfg, err := config.LoadDefaultConfig(context.Background())
		if err != nil {
			panic(fmt.Sprintf("failed to load SDK configuration, %v", err))
		}

		svc := secretsmanager.NewFromConfig(cfg)
		res, err := svc.GetSecretValue(context.TODO(), &secretsmanager.GetSecretValueInput{
			SecretId: &secretName,
		})
		if err != nil {
			panic(fmt.Sprintf("failed to get secret value, %v", err))
		}

		result := &types.SecretString{}
		err = res.SecretString.Unmarshal(result)
		if err != nil {
			panic(fmt.Sprintf("failed to unmarshal secret, %v", err))
		}

		token := *result.SecretStringData["token"]
		endpoint := *result.SecretStringData["endpoint"]

		client, err := gremcos.NewFromConfig(cfg, gremcos.WithEndpoint(endpoint), gremcos.WithAuthToken(token))
		if err != nil {
			panic(fmt.Sprintf("failed to create Neptune client, %v", err))
		}

		// perform some Gremlin queries here
	}
  1. 在执行 Gremlin 查询之前,我们需要创建一个 context.Context 实例,然后使用 Do 方法向 Neptune 发送查询:
	ctx := context.Background()

	req := gremcos.NewGremlinRequest().
		Add(string(query), arguments...).
		SetProcessor("traversal").
		SetOp("eval")

	res, err := client.Do(ctx, req)
	if err != nil {
		panic(fmt.Sprintf("failed to execute Gremlin query, %v", err))
	}
  1. 由于 Neptune

相关内容

热门资讯

推荐一下!宝宝浙江辅助脚本,越... 推荐一下!宝宝浙江辅助脚本,越乡游义乌辅助器免费试用,确实是真的有挂(哔哩哔哩)宝宝浙江辅助脚本透视...
辅助一下!好友赣南辅助器,掌中... 辅助一下!好友赣南辅助器,掌中乐游戏辅助器,切实真的有挂(哔哩哔哩)好友赣南辅助器透视方法中分为三种...
了解一下!创思维辅助器,友空互... 了解一下!创思维辅助器,友空互娱插件,真是存在有挂(哔哩哔哩)1、点击下载安装,创思维辅助器脚本分类...
普及一下!菠萝辅助app,泸州... 普及一下!菠萝辅助app,泸州大二新手攻略,都是真的是有挂(哔哩哔哩)1、下载好菠萝辅助app透视辅...
解迷一下!广东雀神挂件定制面交... 解迷一下!广东雀神挂件定制面交,腾威互娱辅助工具,好像是真的有挂(哔哩哔哩)1、完成广东雀神挂件定制...
曝光一下!微乐多乐跑作弊,榕城... 曝光一下!微乐多乐跑作弊,榕城510k破解版安卓,真是有挂(哔哩哔哩)1、打开软件启动之后找到中间准...
关于一下!广东雀神智能插件官网... 关于一下!广东雀神智能插件官网,新老夫子脚本免费下载,一直存在有挂(哔哩哔哩)在进入广东雀神智能插件...
曝光一下!小程序微乐游戏辅助器... 曝光一下!小程序微乐游戏辅助器,牛总管手游辅助,原来真的是有挂(哔哩哔哩)小薇(辅助器软件下载)致您...
解迷一下!相约十三水破解,新芒... 解迷一下!相约十三水破解,新芒果监利开机有挂吗,一贯是真的有挂(哔哩哔哩)相约十三水破解辅助器是一种...
解密一下!腾旭欢乐全集辅助,凑... 解密一下!腾旭欢乐全集辅助,凑一桌游戏免费辅助器,原来真的是有挂(哔哩哔哩)1、进入到腾旭欢乐全集辅...