服务注册(服务器版
This commit is contained in:
@ -1,75 +0,0 @@
|
|||||||
package com.bipt.intelligentapplicationorchestrationservice.controller;
|
|
||||||
|
|
||||||
import com.bipt.intelligentapplicationorchestrationservice.pojo.*;
|
|
||||||
import com.bipt.intelligentapplicationorchestrationservice.service.PublishService;
|
|
||||||
import com.bipt.intelligentapplicationorchestrationservice.util.NacosServiceUtil;
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.data.redis.core.RedisTemplate;
|
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
@Tag(name ="服务发布相关接口")
|
|
||||||
@RestController
|
|
||||||
@RequestMapping("/publish")
|
|
||||||
@Slf4j
|
|
||||||
public class PublishController {
|
|
||||||
@Autowired
|
|
||||||
private PublishService publishService;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private RedisTemplate redisTemplate;
|
|
||||||
@Autowired
|
|
||||||
private NacosServiceUtil nacosServiceUtil;
|
|
||||||
|
|
||||||
@PostMapping
|
|
||||||
@Operation(summary ="新增发布请求")
|
|
||||||
@Transactional
|
|
||||||
public OptResult<List<ServicePublishVO>> save(@RequestBody ServicePublishDTO servicePublishDTO) {
|
|
||||||
log.info("模型发布请求:{}", servicePublishDTO);
|
|
||||||
publishService.save(servicePublishDTO);
|
|
||||||
//todo 调用模型部署
|
|
||||||
|
|
||||||
// 获取前端传来的IP字符串
|
|
||||||
String ipListStr = servicePublishDTO.getIp();
|
|
||||||
if (ipListStr == null || ipListStr.trim().isEmpty()) {
|
|
||||||
log.warn("IP列表为空,不进行Nacos注册");
|
|
||||||
return OptResult.success();
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
// 使用逗号分割IP字符串
|
|
||||||
String[] ipArray = ipListStr.split(",");
|
|
||||||
// 循环注册每个IP到Nacos
|
|
||||||
for (String ip : ipArray) {
|
|
||||||
String trimmedIp = ip.trim();
|
|
||||||
if (!trimmedIp.isEmpty()) {
|
|
||||||
nacosServiceUtil.registerService(
|
|
||||||
servicePublishDTO.getModelId().toString(),
|
|
||||||
trimmedIp,
|
|
||||||
8080,
|
|
||||||
servicePublishDTO.getApiUrl()
|
|
||||||
);
|
|
||||||
log.info("Nacos服务注册成功: {}", trimmedIp);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("Nacos服务注册失败", e);
|
|
||||||
return OptResult.error("Nacos服务注册失败"); // 根据业务需求返回错误
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return OptResult.success();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
Reference in New Issue
Block a user