| | |
| | | |
| | | /** |
| | | * 五分钟一次的心跳 |
| | | * <p> |
| | | * 注意:这里不能加 static。Spring 的 ScheduledAnnotationBeanPostProcessor 只给 |
| | | * 非静态方法注册调度(静态方法没有 bean 实例作为宿主,无法走 AOP 代理、无法管理生命周期), |
| | | * 遇到 static 会打一条 INFO 日志后静默跳过,表现为"启动正常但从不执行"。 |
| | | * 之前写的是 public static void,导致浪潮 OSS 从未收到过本应用的心跳, |
| | | * 应用在 OSS 侧一直是离线状态,所以"开通"一直失败。 |
| | | */ |
| | | @Scheduled(cron = "0 0/5 * * * ?") |
| | | public static void heartbeat(){ |
| | | HashMap<String, String> header = getGetHeader(null); |
| | | String url = ip + "/cpn/api/extra/v1/application/heartbeat"; |
| | | String body = HttpRequest.get(url).headerMap(header, false).execute().body(); |
| | | System.out.println(body + "应用心跳执行成功!"); |
| | | public void heartbeat(){ |
| | | try { |
| | | HashMap<String, String> header = getGetHeader(null); |
| | | String url = ip + "/cpn/api/extra/v1/application/heartbeat"; |
| | | String body = HttpRequest.get(url).headerMap(header, false).execute().body(); |
| | | log.info("浪潮 OSS 应用心跳返回:{}", body); |
| | | } catch (Exception e) { |
| | | log.error("浪潮 OSS 应用心跳发送失败", e); |
| | | } |
| | | } |
| | | |
| | | // 获取token |