运行 KSQL 来自 spring boot app 的方式是什么
What's the way of running KSQL from spring boot app
我有一个 spring 连接到 kafka 集群的启动应用程序。我如何从 java 代码中 运行 KSQL?
目前,在 java 中没有直接的方法将 KSQL 用作库。同样有一个开放 issue#734。
但是您可以 运行 使用 REST API 的 KSQL 语句,并且该实现可以在 Spring 启动应用程序中完成。
休息电话看起来像这样:
POST /query HTTP/1.1
Accept: application/vnd.ksql.v1+json
Content-Type: application/vnd.ksql.v1+json
{
"ksql": "SELECT * FROM pageviews;",
"streamsProperties": {
"ksql.streams.auto.offset.reset": "earliest"
}
}
// Through Curl
curl -X "POST" "http://localhost:8088/ksql" \
-H "Content-Type: application/vnd.ksql.v1+json; charset=utf-8" \
-d $'{
"ksql": "LIST STREAMS;",
"streamsProperties": {}
}'
您可以在此处找到文档:
https://docs.confluent.io/current/ksql/docs/developer-guide/api.html#rest-endpoint
从 ksqlDB 0.10 开始,现在有一个 Java 客户端:https://docs.ksqldb.io/en/latest/developer-guide/ksqldb-clients/java-client/
我有一个 spring 连接到 kafka 集群的启动应用程序。我如何从 java 代码中 运行 KSQL?
目前,在 java 中没有直接的方法将 KSQL 用作库。同样有一个开放 issue#734。
但是您可以 运行 使用 REST API 的 KSQL 语句,并且该实现可以在 Spring 启动应用程序中完成。 休息电话看起来像这样:
POST /query HTTP/1.1
Accept: application/vnd.ksql.v1+json
Content-Type: application/vnd.ksql.v1+json
{
"ksql": "SELECT * FROM pageviews;",
"streamsProperties": {
"ksql.streams.auto.offset.reset": "earliest"
}
}
// Through Curl
curl -X "POST" "http://localhost:8088/ksql" \
-H "Content-Type: application/vnd.ksql.v1+json; charset=utf-8" \
-d $'{
"ksql": "LIST STREAMS;",
"streamsProperties": {}
}'
您可以在此处找到文档:
https://docs.confluent.io/current/ksql/docs/developer-guide/api.html#rest-endpoint
从 ksqlDB 0.10 开始,现在有一个 Java 客户端:https://docs.ksqldb.io/en/latest/developer-guide/ksqldb-clients/java-client/