重连和个数判断

hubei-jinshennong
LAPTOP-S9HJSOEB\昊天 2 years ago
parent 05f06e3e22
commit 8cfe69a4bb

@ -88,6 +88,10 @@ public class ConfigProperties {
public static class KSEC{
private String ip;
private Integer port;
private Integer reconnectNum = 10;
private Integer reconnectInterval = 10;
private Long downloadStartMp4 = 0L ;
private Long downloadEndMp4 = 0L ;
}
@Data

@ -103,5 +103,6 @@ public class Order {
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime endTime;
@TableField("`number`")
private Integer number;
}

@ -49,7 +49,7 @@ public class EmptyCheckService {
Order order = orderMapper.getOneByStreetId(street.getId());
order.setStatus(transmission.getSuccess()? 1 : 0);
order.setPicPaths(order.getPicPaths()!=null ? order.getPicPaths() + "," +transmission.getUrl(): transmission.getUrl());
if(transmission.getNumber() != null && !transmission.getNumber().equals("")){
if(transmission.getNumber() != null ){
order.setNumber(transmission.getNumber());
}
orderMapper.updateById(order);
@ -72,6 +72,7 @@ public class EmptyCheckService {
ksecDataInfo.setTaskId(order.getOrderNum().replaceFirst(street.getPlcId(),"").replace("_",""));
ksecDataInfo.setSRMNumber(street.getPlcId());
KsecInfo ksecInfo= new KsecInfo("KC","CB",ksecDataInfo);
return ksecInfo;
}
public Street getStreet(Transmission transmission){
@ -79,8 +80,5 @@ public class EmptyCheckService {
return streetService.getStreetByPlcId(transmission.getSRMNumber());
}
public static void main(String[] args) {
Integer i = 0;
System.out.println(i ? 0 : 1);
}
}

@ -113,6 +113,7 @@ public class InitService implements ApplicationRunner {
try {
ksecNettyClient.createClient(ksec);
}catch (Exception e){
ksecNettyClient.reconnect(1);
log.error("kesc connect error,url:{},port:{}",ksec.getIp(),ksec.getPort());
}
}else {

@ -67,13 +67,21 @@ public class KsecNettyClient {
} catch (InterruptedException e) {
e.printStackTrace();
}
while (num < RECONNECT_NUM && !isConnected) {
while ((ksec.getReconnectNum() == -1 || num < ksec.getReconnectNum() ) && !isConnected) {
try {
createClient(ksec);
} catch (Exception e) {
//没连上 继续
log.error("reconnect error num:{}", num);
if(channel!= null) {
channel.close();
}
num++;
try {
Thread.sleep(ksec.getReconnectInterval()*1000);
} catch (InterruptedException ex) {
throw new RuntimeException(ex);
}
continue;
}
isConnected = true;

Loading…
Cancel
Save