lipenghui před 4 dny
rodič
revize
2bd88283ed

+ 32 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/config/ThreadPoolTaskConfig.java

@@ -0,0 +1,32 @@
+package cn.iocoder.yudao.module.pms.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+
+import java.util.concurrent.ThreadPoolExecutor;
+
+@Configuration
+@EnableAsync(proxyTargetClass = true)
+public class ThreadPoolTaskConfig {
+    public static final int cpuNum = Runtime.getRuntime().availableProcessors();
+    private static final int corePoolSize = cpuNum;
+    private static final int maxPoolSize = cpuNum*2;
+    private static final int keepAliveTime = 30;
+    private static final int queueCapacity = 10000;
+    private static final String threadNamePrefix = "sip-";
+
+    @Bean("taskExecutor")
+    public ThreadPoolTaskExecutor taskExecutor() {
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        executor.setCorePoolSize(corePoolSize);
+        executor.setMaxPoolSize(maxPoolSize);
+        executor.setQueueCapacity(queueCapacity);
+        executor.setKeepAliveSeconds(keepAliveTime);
+        executor.setThreadNamePrefix(threadNamePrefix);
+        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+        executor.initialize();
+        return executor;
+    }
+}

+ 2 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/yanfan/sip/record/RecordController.java

@@ -34,7 +34,8 @@ public class RecordController {
     @Autowired
     private IRecordService recordService;
 
-    @Qualifier("taskExecutor")
+//    @Qualifier("taskExecutor")
+    @Qualifier("PMS_THREAD_POOL_TASK_EXECUTOR")
     @Autowired
     private ThreadPoolTaskExecutor taskExecutor;
 

+ 1 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/yanfan/media/YfMediaServerServiceImpl.java

@@ -300,7 +300,7 @@ public class YfMediaServerServiceImpl implements YfMediaServerService {
         mediaServerItem.setPortRtmp(Long.valueOf(zlmServerConfig.getRtmpPort()));
         mediaServerItem.setPortRtsp(Long.valueOf(zlmServerConfig.getRtspPort()));
         mediaServerItem.setRtpProxyPort(Long.valueOf(zlmServerConfig.getRtpProxyPort()));
-        mediaServerItem.setHookurl("java:8080");
+        mediaServerItem.setHookurl("java:48080");
         return mediaServerItem;
     }
 

+ 11 - 0
yudao-server/src/main/resources/application.yaml

@@ -291,6 +291,7 @@ yudao:
       - /admin-api/system/dict-data/page
       - /admin-api/rq/iot-tree/simple-list
       - /system/auth/social-login
+      - /admin-api/zlmhook/*
       - /system/auth/appSocialLogin
       - /system/auth/h5SocialLogin
       - /admin-api/rq/deviceTD/runningTsData #查询时序数据库设备参数
@@ -377,3 +378,13 @@ debug: false
 # 插件配置 TODO 芋艿:【IOT】需要处理下
 pf4j:
   pluginsDir: /Users/anhaohao/code/gitee/ruoyi-vue-pro/plugins # 插件目录
+
+yanfan:
+  name: yanfan         # 名称
+  version: 3.8.5            # 版本
+  copyrightYear: 2023-2024       # 版权年份
+  demoEnabled: true         # 实例演示开关
+  # 文件路径,以uploadPath结尾 示例( Windows配置 D:/uploadPath,Linux配置 /uploadPath)
+  profile: /uploadPath
+  addressEnabled: true      # 获取ip地址开关
+  captchaType: math