
coco/aggregate-concept-transformerAggregate Concept Transformer是一个在UPP(Unified Publishing Platform)中整合和协调概念的服务。它通过SQS接收Amazon S3桶中源概念更新的通知,获取相关UUID的概念,构建整合的JSON模型并同步到Neo4j和Elasticsearch,调用缓存清除工具,发送更新通知到Kinesis流,并完成队列消息的处理。
适用于需要实时处理和整合分布式存储(S3)中的概念数据,并同步到图数据库、搜索引擎及缓存系统的场景,特别适用于UPP中的概念数据管理与同步,确保概念数据在多系统间的一致性和时效性。
该服务支持通过命令行选项或环境变量进行配置,主要参数如下:
| 命令行选项 | 默认值 | 环境变量 | 描述 |
|---|---|---|---|
| --app-system-code | "aggregate-concept-transformer" | $APP_SYSTEM_CODE | 应用的系统代码 |
| --app-name | "Aggregate Concept Transformer" | $APP_NAME | 应用名称 |
| --port | "8080" | $APP_PORT | 监听端口 |
| --bucketRegion | "eu-west-1" | $BUCKET_REGION | S3桶所在的AWS区域 |
| --sqsRegion | "" | $SQS_REGION | SQS队列所在的AWS区域 |
| --bucketName | "" | $BUCKET_NAME | 读取概念的S3桶名称 |
| --queueUrl | "" | $QUEUE_URL | SQS队列的URL |
| --messagesToProcess | 10 | $MAX_MESSAGES | 并发从队列读取和处理的最大消息数 |
| --visibilityTimeout | 30 | $VISIBILITY_TIMEOUT | 消息初始响应后被后续请求忽略的时长(秒) |
| --waitTime | 20 | $WAIT_TIME | 等待队列消息的时长(秒),如有消息到达则提前返回 |
| --neo4jWriterAddress | "http://localhost:8080/" | $NEO_WRITER_ADDRESS | Neo4j概念写入器的地址 |
| --varnishPurgerAddress | "http://localhost:8080/" | $VARNISH_PURGER_ADDRESS | Varnish缓存清除应用的地址 |
| --concordancesReaderAddress | "http://localhost:8080/" | $CONCORDANCES_RW_ADDRESS | 概念协调器的地址 |
| --elasticsearchWriterAddress | "http://localhost:8080/" | $ES_WRITER_ADDRESS | Elasticsearch概念写入器的地址 |
| --crossAccountRoleARN | $CROSS_ACCOUNT_ARN | 跨账户角色的ARN | |
| --kinesisStreamName | "" | $KINESIS_STREAM_NAME | AWS Kinesis流名称 |
| --kinesisRegion | "eu-west-1" | $KINESIS_REGION | Kinesis流所在的AWS区域 |
| --requestLoggingOn | true | $REQUEST_LOGGING_ON | 是否记录HTTP请求 |
| --logLevel | "info" | $LOG_LEVEL | 应用日志级别 |
需正确配置AWS凭证,支持两种方式:
~/.aws/credentials
ini[default] aws_access_key_id = AKID*** aws_secret_access_key = MY-SECRET-KEY
bashAWS_ACCESS_KEY_ID=AKID*** AWS_SECRET_ACCESS_KEY=MY-SECRET-KEY
Docker镜像可从Docker Hub获取:coco/aggregate-concept-transformer
使用Docker运行示例:
bashdocker run -d \ --name aggregate-concept-transformer \ -p 8080:8080 \ -e APP_PORT=8080 \ -e BUCKET_REGION=eu-west-1 \ -e SQS_REGION=eu-west-1 \ -e BUCKET_NAME=my-concept-bucket \ -e QUEUE_URL=[***] \ -e NEO_WRITER_ADDRESS=[***] \ -e ELASTICSEARCH_WRITER_ADDRESS=[***] \ -e VARNISH_PURGER_ADDRESS=[***] \ -e KINESIS_STREAM_NAME=my-kinesis-stream \ -e AWS_ACCESS_KEY_ID=AKID*** \ -e AWS_SECRET_ACCESS_KEY=MY-SECRET-KEY \ coco/aggregate-concept-transformer
http://localhost:8080/__healthhttp://localhost:8080/__gtg(Good to go)http://localhost:8080/__build-info


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务