From c8591c3fd684dbd606f17d6f47fe63ee8812690e Mon Sep 17 00:00:00 2001
From: Yunfei Du <278774021@qq.com>
Date: Thu, 30 May 2024 20:31:32 +0800
Subject: [PATCH] =?UTF-8?q?feat():RabbitMq=E7=9B=91=E5=90=AC=E4=BF=A1?=
=?UTF-8?q?=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/uiDesigner.xml | 124 ++++++++++++++++
.../common/{req => }/ConnectWeight.java | 2 +-
.../com/zhiLian/config/InitConnectWeight.java | 136 ++++++++++++++++++
.../com/zhiLian/consumer/ReceiveHandler.java | 34 +++++
.../controller/LoadBalanceController.java | 2 +-
.../main/java/com/zhiLian/utils/ECSTool.java | 17 +--
6 files changed, 302 insertions(+), 13 deletions(-)
create mode 100644 .idea/uiDesigner.xml
rename ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/{req => }/ConnectWeight.java (92%)
create mode 100644 ZhiLian-LoadBalancing/src/main/java/com/zhiLian/config/InitConnectWeight.java
create mode 100644 ZhiLian-LoadBalancing/src/main/java/com/zhiLian/consumer/ReceiveHandler.java
diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml
new file mode 100644
index 0000000..2b63946
--- /dev/null
+++ b/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
\ No newline at end of file
diff --git a/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/req/ConnectWeight.java b/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/ConnectWeight.java
similarity index 92%
rename from ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/req/ConnectWeight.java
rename to ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/ConnectWeight.java
index ad293d5..5bf15fd 100644
--- a/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/req/ConnectWeight.java
+++ b/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/common/ConnectWeight.java
@@ -1,4 +1,4 @@
-package com.zhiLian.common.req;
+package com.zhiLian.common;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/config/InitConnectWeight.java b/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/config/InitConnectWeight.java
new file mode 100644
index 0000000..b62912b
--- /dev/null
+++ b/ZhiLian-LoadBalancing/src/main/java/com/zhiLian/config/InitConnectWeight.java
@@ -0,0 +1,136 @@
+//package com.zhiLian.config;
+//
+//
+//import com.alibaba.fastjson2.JSON;
+//import com.alibaba.fastjson2.JSONArray;
+//import com.alibaba.fastjson2.JSONObject;
+//import com.aliyun.ecs20140526.Client;
+//import com.zhiLian.common.ConnectWeight;
+//import com.zhiLian.service.impl.LoadBalanceServiceImpl;
+//import com.zhiLian.utils.ECSTool;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.boot.ApplicationArguments;
+//import org.springframework.boot.ApplicationRunner;
+//import org.springframework.data.redis.core.RedisTemplate;
+//import org.springframework.http.*;
+//import org.springframework.stereotype.Component;
+//import org.springframework.web.client.RestTemplate;
+//
+//import java.math.BigDecimal;
+//import java.math.RoundingMode;
+//import java.util.*;
+//
+//
+///**
+// * 初始化连接权重
+// *
+// * @author YouChe·He
+// * @ClassName: InitConnectWeight
+// * @Description: 初始化连接权重
+// * @CreateTime: 2024/5/27 21:31
+// */
+//@Component
+//@Slf4j
+//public class InitConnectWeight implements ApplicationRunner {
+//
+// @Autowired
+// private RedisTemplate redisTemplate;
+//
+// @Autowired
+// private RestTemplate restTemplate;
+// @Autowired
+// private LoadBalanceServiceImpl loadBalanceServiceimpl;
+//
+// @Override
+// public void run(ApplicationArguments args) throws Exception {
+//
+// ArrayList connectWeightList = new ArrayList<>();
+//
+//
+// Client client = null;
+// //获取阿里云客户端
+// try {
+// client = ECSTool.createClient();
+// } catch (Exception e) {
+// throw new RuntimeException(e);
+// }
+// //获取所有实例
+// List< String > ipList = ECSTool.FindInstance ( "cn-zhangjiakou" );
+//
+//
+// //http://fluxmq.muyu.icu/public/login
+//
+// //遍历所有ip,获取每一个服务的连接数
+// for (String ip : ipList) {
+// String url = "http://" + ip + ":8080/public/login";
+// Map request = new HashMap<>();
+// request.put("username", "fluxmq");
+// request.put("password", "fluxmq");
+// HttpHeaders httpHeaders = new HttpHeaders();
+// httpHeaders.setContentType(MediaType.APPLICATION_JSON);
+// HttpEntity