lyhzzz 1 год назад
Родитель
Сommit
2df2ca5c4d

+ 25 - 11
src/main/java/com/fdkankan/task/config/SendMessage.java

@@ -1,14 +1,16 @@
 package com.fdkankan.task.config;
 
-import com.alibaba.fastjson.JSONObject;
+import cn.hutool.json.JSONObject;
 import com.fdkankan.task.common.MqConstants;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.amqp.core.Message;
 import org.springframework.amqp.core.MessageProperties;
+import org.springframework.amqp.rabbit.connection.CorrelationData;
 import org.springframework.amqp.rabbit.core.RabbitTemplate;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.UUID;
 
 /**
  * @author liuqi
@@ -25,18 +27,30 @@ public class SendMessage {
     @Resource(name = "v3RabbitTemplate")
     private RabbitTemplate secondRabbitTemplate;
 
-    public void sendTov2Message(JSONObject jsonObject) {
-        MessageProperties messageProperties = new MessageProperties();
-        messageProperties.setContentType("application/json");
-        Message info = new Message(jsonObject.toString().getBytes(), messageProperties);
-        v2RabbitTemplate.convertAndSend(MqConstants.RABBITMQ_QUEUE_v2, info);
+    public void sendTov2Message(Object jsonObject) {
+        String messageId = UUID.randomUUID().toString();
+        log.info("开始发送Mq消息,messageId:{},消息队列:{},消息内容:{}",messageId, MqConstants.RABBITMQ_QUEUE_v3, jsonObject);
+        secondRabbitTemplate.convertAndSend(MqConstants.RABBITMQ_QUEUE_v2, jsonObject, message -> {
+            message.getMessageProperties().setMessageId(messageId);
+            message.getMessageProperties().setContentType("application/json");
+            return message;
+        }, new CorrelationData(messageId));
     }
 
-    public void sendTov3Message(JSONObject jsonObject) {
-        MessageProperties messageProperties = new MessageProperties();
-        messageProperties.setContentType("application/json");
-        Message info = new Message(jsonObject.toString().getBytes(), messageProperties);
-        secondRabbitTemplate.convertAndSend(MqConstants.RABBITMQ_QUEUE_v3, info);
+    public void sendTov3Message(Object jsonObject) {
+        String messageId = UUID.randomUUID().toString();
+        log.info("开始发送Mq消息,messageId:{},消息队列:{},消息内容:{}",messageId, MqConstants.RABBITMQ_QUEUE_v3, jsonObject);
+        secondRabbitTemplate.convertAndSend(MqConstants.RABBITMQ_QUEUE_v3, jsonObject, message -> {
+            message.getMessageProperties().setMessageId(messageId);
+            message.getMessageProperties().setContentType("text/plain");
+            return message;
+        }, new CorrelationData(messageId));
     }
 }
  
+//4898cab059bd_202403021541083950:;/home/ubuntu/data/4898cab059bd_202403021541083950:;068b90ca4/1214153168250732544/4898cab059bd_202403021541083950/:;:;zfb-bwm88wy0S:;0:;17712966965:;11:;slam:;1214153168250732544:;068B90CA4:;0:;V3
+//THETAYP41138901.OSC_20240304085626:;/home/ubuntu/data/THETAYP41138901.OSC_20240304085626:;https://zfb-4dkankan.oss-cn-shenzhen.aliyuncs.com/appData/THETAYP41138901.OSC_20240304085626:;THETAYP41138901.OSC_20240304085626.Zip:;zfb-6msEqaPMI:;0:;thetayp41138901.osc:;6:;slam:;:;THETAYP41138901.OSC:;0:;V3
+//063632f34_202403031853520160:;/home/ubuntu/data/063632f34_202403031853520160:;063632f34/1213925351923646464/063632f34_202403031853520160/:;:;zfb-77bQlrH7I:;0:;13950265761:;11:;slam:;1213925351923646464:;063632F34:;0:;V3
+//5838794f2858_202402291421199920:;/home/ubuntu/data/5838794f2858_202402291421199920:;https://zfb-4dkankan.oss-cn-shenzhen.aliyuncs.com/appData/5838794f2858_202402291421199920:;5838794f2858_202402291421199920.zip:;zfb-Fx1R2jcEE:;0:;THETAYP41147092.OSC:;6:;slam:;:;THETAYP41147092.OSC:;0:;V3
+//5838794f2858_202403021437486990:;/home/ubuntu/data/5838794f2858_202403021437486990:;https://zfb-4dkankan.oss-cn-shenzhen.aliyuncs.com/appData/5838794f2858_202403021437486990:;5838794f2858_202403021437486990.zip:;zfb-gT3twAGWi:;0:;THETAYP41147092.OSC:;6:;slam:;:;THETAYP41147092.OSC:;0:;V3
+//THETAYP41142254.OSC_20240303123647:;/home/ubuntu/data/THETAYP41142254.OSC_20240303123647:;https://zfb-4dkankan.oss-cn-shenzhen.aliyuncs.com/appData/THETAYP41142254.OSC_20240303123647:;THETAYP41142254.OSC_20240303123647.Zip:;zfb-qOCODnKYE:;0:;thetayp41142254.osc:;6:;slam:;:;THETAYP41142254.OSC:;0:;V3

+ 70 - 0
src/main/resources/application-dev.yml

@@ -0,0 +1,70 @@
+server:
+  port: 8111
+  servlet:
+    context-path: /
+  tomcat:
+    max-http-form-post-size: -1
+spring:
+  rabbitmq:
+    v2:
+      host: 47.112.166.173
+      port: 5672
+      username: guest
+      password: guest
+      #虚拟host 可以不设置,使用server默认host
+      virtual-host: /
+    v3:
+      host: 120.24.202.7
+      port: 5672
+      username: admin
+      password: admin123
+      virtual-host: /
+
+mybatis-flex:
+  datasource:
+    sale:
+      url: jdbc:mysql://rm-wz90w10465iiwwv09.mysql.rds.aliyuncs.com:3306/4dkankan_v4_sale?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+      username: root
+      password: D2719bd0cae1a005
+    old-zfb:
+      #47.112.166.173
+      url: jdbc:mysql://47.112.166.173:3306/zhi_house?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+      username: root
+      password: 4dkankan4dage
+    new-zfb:
+      #120.24.202.7
+      url: jdbc:mysql://120.24.202.7:3306/zhi_house?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+      username: root
+      password: zfb@20210727%
+
+logging:
+  config: classpath:logback-spring.xml
+  path: /home/backend/4dkankan_v4
+
+
+xxl:
+  job:
+    accessToken:
+    admin:
+      addresses: http://127.0.0.1:8180/xxl-job-admin
+
+    executor:
+      appname: fdkankan-job-executor-lyh
+      ### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。
+      address:
+      ### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务";
+      ip:
+      ### 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口;
+      port: 0
+      ### 执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径;
+      logpath: /home/backend/4dkankan_v4/fdkankan-task/execuLog
+      ### 执行器日志文件保存天数 [选填] : 过期日志自动清理, 限制值大于等于3时生效; 否则, 如-1, 关闭自动清理功能;
+      logretentiondays: 30
+
+
+
+
+#钉钉配置
+dingtalk:
+  token: 0ba44bdb2345d76ce7348bcb13fa118252e7a351426b90f64fac09b57b123b1c
+  secret: SEC687e2967e9a825b839d4d1512a7b98be49f7a19106d13bb6869f7bc33737359a

+ 70 - 0
src/main/resources/application-test.yml

@@ -0,0 +1,70 @@
+server:
+  port: 8111
+  servlet:
+    context-path: /
+  tomcat:
+    max-http-form-post-size: -1
+spring:
+  rabbitmq:
+    v2:
+      host: 47.112.166.173
+      port: 5672
+      username: guest
+      password: guest
+      #虚拟host 可以不设置,使用server默认host
+      virtual-host: /
+    v3:
+      host: 120.24.202.7
+      port: 5672
+      username: admin
+      password: admin123
+      virtual-host: /
+
+mybatis-flex:
+  datasource:
+    sale:
+      url: jdbc:mysql://rm-wz90w10465iiwwv09.mysql.rds.aliyuncs.com:3306/4dkankan_v4_sale?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+      username: root
+      password: D2719bd0cae1a005
+    old-zfb:
+      #47.112.166.173
+      url: jdbc:mysql://172.18.75.64:3306/zhi_house?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+      username: root
+      password: 4dkankan4dage
+    new-zfb:
+      #120.24.202.7
+      url: jdbc:mysql://172.18.159.244:3306/zhi_house?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
+      username: root
+      password: zfb@20210727%
+
+logging:
+  config: classpath:logback-spring.xml
+  path: /home/backend/4dkankan_v4
+
+
+xxl:
+  job:
+    accessToken:
+    admin:
+      addresses: http://127.0.0.1:8180/xxl-job-admin
+
+    executor:
+      appname: fdkankan-job-executor-lyh
+      ### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。
+      address:
+      ### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务";
+      ip:
+      ### 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口;
+      port: 0
+      ### 执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径;
+      logpath: /home/backend/4dkankan_v4/fdkankan-task/execuLog
+      ### 执行器日志文件保存天数 [选填] : 过期日志自动清理, 限制值大于等于3时生效; 否则, 如-1, 关闭自动清理功能;
+      logretentiondays: 30
+
+
+
+
+#钉钉配置
+dingtalk:
+  token: 0ba44bdb2345d76ce7348bcb13fa118252e7a351426b90f64fac09b57b123b1c
+  secret: SEC687e2967e9a825b839d4d1512a7b98be49f7a19106d13bb6869f7bc33737359a

+ 8 - 69
src/main/resources/application.yml

@@ -1,70 +1,9 @@
-server:
-  port: 8111
-  servlet:
-    context-path: /
-  tomcat:
-    max-http-form-post-size: -1
 spring:
-  rabbitmq:
-    v2:
-      host: 47.112.166.173
-      port: 5672
-      username: guest
-      password: guest
-      #虚拟host 可以不设置,使用server默认host
-      virtual-host: /
-    v3:
-      host: 120.24.202.7
-      port: 5672
-      username: admin
-      password: admin123
-      virtual-host: /
-
-mybatis-flex:
-  datasource:
-    sale:
-      url: jdbc:mysql://rm-wz90w10465iiwwv09.mysql.rds.aliyuncs.com:3306/4dkankan_v4_sale?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
-      username: root
-      password: D2719bd0cae1a005
-    old-zfb:
-      #47.112.166.173
-      url: jdbc:mysql://172.18.75.64:3306/zhi_house?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
-      username: root
-      password: 4dkankan4dage
-    new-zfb:
-      #120.24.202.7
-      url: jdbc:mysql://172.18.159.244:3306/zhi_house?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
-      username: root
-      password: zfb@20210727%
-
-logging:
-  config: classpath:logback-spring.xml
-  path: /home/backend/4dkankan_v4
-
-
-xxl:
-  job:
-    accessToken:
-    admin:
-      addresses: http://127.0.0.1:8180/xxl-job-admin
-
-    executor:
-      appname: fdkankan-job-executor-lyh
-      ### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。
-      address:
-      ### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务";
-      ip:
-      ### 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口;
-      port: 0
-      ### 执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径;
-      logpath: /home/backend/4dkankan_v4/fdkankan-task/execuLog
-      ### 执行器日志文件保存天数 [选填] : 过期日志自动清理, 限制值大于等于3时生效; 否则, 如-1, 关闭自动清理功能;
-      logretentiondays: 30
-
-
-
-
-#钉钉配置
-dingtalk:
-  token: 0ba44bdb2345d76ce7348bcb13fa118252e7a351426b90f64fac09b57b123b1c
-  secret: SEC687e2967e9a825b839d4d1512a7b98be49f7a19106d13bb6869f7bc33737359a
+  profiles:
+    active: dev
+  servlet:
+    multipart:
+      # 设置单个文件大小
+      max-file-size: 1024MB
+      # 设置单次请求文件的总大小
+      max-request-size: 1024MB

+ 33 - 0
src/test/java/com/fdkankan/task/mq/SendV3mq.java

@@ -0,0 +1,33 @@
+package com.fdkankan.task.mq;
+
+import com.fdkankan.task.config.SendMessage;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.stereotype.Service;
+
+import java.util.HashSet;
+import java.util.TreeSet;
+
+@SpringBootTest
+public class SendV3mq {
+
+    @Autowired
+    SendMessage sendMessage;
+
+    static TreeSet<String> mqSet = new TreeSet<>();
+    @Test
+    public void sendMq(){
+        for (String mqMsg : mqSet) {
+            sendMessage.sendTov3Message(mqMsg);
+        }
+    }
+    static {
+        String[] res = {
+                "THETAYP41142254.OSC_20240303123647:;/home/ubuntu/data/THETAYP41142254.OSC_20240303123647:;https://zfb-4dkankan.oss-cn-shenzhen.aliyuncs.com/appData/THETAYP41142254.OSC_20240303123647:;THETAYP41142254.OSC_20240303123647.Zip:;zfb-qOCODnKYE:;0:;thetayp41142254.osc:;6:;slam:;:;THETAYP41142254.OSC:;0:;V3",
+        };
+        for (String re : res) {
+            mqSet.add(re);
+        }
+    }
+}