# SpringBoot_KafkaMQ **Repository Path**: yuanxiaocn/kafkaMq ## Basic Information - **Project Name**: SpringBoot_KafkaMQ - **Description**: Spring boot整合kafka消息队列 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-10-25 - **Last Updated**: 2022-03-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java, Kafka, mq, 消息队列 ## README # Kafka接口文档 [toc] ## 一、kafka配置 1. 测试接口(参数说明会列举出所有会用到的参数,后续直接写参数kay,例如:参数:``` appId data.id```) - 请求地址 :``` /kafka/reqAddress``` - 说明:测试请求地址 - 请求参数说明: | 参数 | 类型 | 说明 | | :--------: | :----: | :-----------------------------: | | appId | string | 程序应用标识 | | id | string | 主键id | | name | string | 名称 | | isInternal | bool | 是否为系统默认主题,不可被删除 | | partition | int | 分区数 | | replica | int | 副本数 | | message | string | 消息 | | batch | bool | 是否批量发送 | | broker | string | 集群地址:``` 127.0.0.1:9092``` | - 响应参数说明 | 参数 | 类型 | 说明 | | :-------: | :----: | :----------: | | appId | string | 后端应用标识 | | timestamp | string | 时间戳 | | version | string | 版本号 | | seqNo | string | 响应请求编号 | | reqSeqNo | string | 请求编号 | | code | int | 状态标识码 | | message | string | 消息 | | succeed | bool | 请求结果标识 | | data | array | 返回数据 | - 请求示例: ```json { "appId": "Test-Api" } ``` - 返回示例: ```json { "appId": "amych-api", "timestamp": "1634781576068", "version": "1.0", "seqNo": "AMYCHAPI-20211021-1451005214084698112", "reqSeqNo": null, "code": 99999, "message": "127.0.0.1:8000", "succeed": true, "data": null } ``` 2. 添加更新kafka连接配置 - 请求地址 :``` /kafka/addSource``` - 说明:添加kafka资源配置 - 请求参数说明: ``` data.name data.broker``` - 请求示例: ```json { "appId": "Test-Api", "data":{ "id":"", "name":"127.0.0.1", "broker":"127.0.0.1:9092" } } - 返回示例 ```json { "appId": "amych-api", "message": "操作成功!", "succeed": true, "data": true } 3. 获取资源配置清单 - 请求地址 :``` /kafka/dataSource``` - 说明:获取kafka资源配置列表 - 请求参数说明: ``` null``` - 请求示例: ```json { "appId": "Test-Api" } - 返回示例: ```json { "appId": "amych-api", "code": 99999, "message": "操作成功!", "succeed": true, "data": [ { "id": "1450998389306810370", "status": "E", "name": "127.0.0.1", "broker": "127.0.0.1:9092", "statusDes": "E-正常" } ] } ## 二、kafka管理 ### 2.1 主题管理 1. 添加主题 - 请求地址 :``` /kafka/addTopic``` - 说明:添加主题 - 请求参数说明: ``` data.id data.name data.partition data.replica ``` - 请求示例: ``` { "appId": "Test-Api4" } ``` - 返回示例: ```json { "appId": "amych-api", "code": 99999, "message": "操作成功!", "succeed": true, "data": { "Test-Api4": { "done": true, "completedExceptionally": false, "cancelled": false } } } ``` 2. 删除主题 - 请求地址 :``` /kafka/delTopic``` - 说明:删除主题,参数data.isInternal 为true不可删除,isInternal 表示为系统(fafka)主题 - 请求参数说明: ``` data.id data.name ``` - 请求示例: ```json { "appId": "Test-Api", "data":{ "id":"1450998389306810370", "name":"ods-mq" } } 3. 获取资源配置下的所有主题 - 请求地址 :``` /kafka/findTopic``` - 说明:删除主题,参数data.isInternal 为true不可删除,isInternal 表示为系统(fafka)主题 - 请求参数说明: ``` data.id data.name ``` - 请求示例: ```json { "appId": "Test-Api", "data":{ "id":"1450998389306810370", "name":"ods-mq" //name存在时为查询 } } ``` 4. 获取主题详情 - 请求地址 :``` /kafka/detailTopic``` - 说明:获取主题详情 - 请求参数说明: ``` data.id data.name ``` - 请求示例: ```json { "appId": "Test-Api", "data":{ "id":"1450998389306810370", "name":"ods-mq" } } ``` ### 2.2 集群管理 1. 获取配置集群情况 - 请求地址 :``` /kafka/listCluster``` - 说明:获取kafka集群情况 - 请求参数说明: ``` data.id ``` - 请求示例 ```json { "appId": "Test-Api", "data":{ "id":"1450998389306810370" } } ``` - 返回示例: ```json { "appId": "amych-api", "code": 99999, "message": "操作成功!", "succeed": true, "data": [ { "idStr": "0", "controller": true, "port": 9092, "host": "LAPTOP-RNHLN4IB", // "id": 0 //节点号 } ] } ``` ### 2.3 group管理 1. 获取/查询group清单 - 请求地址 :``` /kafka/findGroup``` - 说明:获取kafka集群情况 - 请求参数说明: ``` data.id data.name``` - 请求示例 ```json { "appId": "Test-Api", "data":{ "id":"1450998389306810370", "name":"ods-mq" //name存在时为查询 } } ``` - 返回示例: ```json { "appId": "amych-api", "code": 99999, "message": "操作成功!", "succeed": true, "data": [ { "idStr": "0", "controller": true, "port": 9092, "host": "LAPTOP-RNHLN4IB", // "id": 0 //节点号 } ] } ```