mq
This commit is contained in:
@@ -870,11 +870,11 @@ public abstract class NodeServer {
|
|||||||
localServices.forEach(y -> {
|
localServices.forEach(y -> {
|
||||||
long s = System.currentTimeMillis();
|
long s = System.currentTimeMillis();
|
||||||
if (finest) {
|
if (finest) {
|
||||||
logger.finest(y + " is destroying");
|
logger.finest(Sncp.getResourceType(y) + " is destroying");
|
||||||
}
|
}
|
||||||
y.destroy(Sncp.getResourceConf(y));
|
y.destroy(Sncp.getResourceConf(y));
|
||||||
if (finest) {
|
if (finest) {
|
||||||
logger.finest(y + " was destroyed");
|
logger.finest(Sncp.getResourceType(y) + " was destroyed");
|
||||||
}
|
}
|
||||||
long e = System.currentTimeMillis() - s;
|
long e = System.currentTimeMillis() - s;
|
||||||
if (e > 2 && sb != null) {
|
if (e > 2 && sb != null) {
|
||||||
|
|||||||
@@ -167,28 +167,40 @@ public abstract class MessageAgent implements Resourcable {
|
|||||||
|
|
||||||
//Application.stop 在所有server.shutdown执行后执行
|
//Application.stop 在所有server.shutdown执行后执行
|
||||||
public void destroy(AnyValue config) {
|
public void destroy(AnyValue config) {
|
||||||
|
logger.log(Level.FINE, "MessageConsumer destroying");
|
||||||
for (MessageConsumer consumer : messageConsumerList) {
|
for (MessageConsumer consumer : messageConsumerList) {
|
||||||
consumer.destroy(config);
|
consumer.destroy(config);
|
||||||
}
|
}
|
||||||
this.messageConsumerList.clear();
|
this.messageConsumerList.clear();
|
||||||
this.messageConsumerMap.clear();
|
this.messageConsumerMap.clear();
|
||||||
|
logger.log(Level.FINE, "MessageConsumer destroyed");
|
||||||
|
|
||||||
this.httpMessageClient.close();
|
this.httpMessageClient.close();
|
||||||
this.sncpMessageClient.close();
|
this.sncpMessageClient.close();
|
||||||
|
logger.log(Level.FINE, "httpMessageClient and sncpMessageClient destroyed");
|
||||||
|
|
||||||
if (this.httpClientProducer != null) {
|
if (this.httpClientProducer != null) {
|
||||||
|
logger.log(Level.FINE, "httpClientProducer stoping");
|
||||||
this.httpClientProducer.stop();
|
this.httpClientProducer.stop();
|
||||||
|
logger.log(Level.FINE, "httpClientProducer stoped");
|
||||||
}
|
}
|
||||||
if (this.sncpClientProducer != null) {
|
if (this.sncpClientProducer != null) {
|
||||||
|
logger.log(Level.FINE, "sncpClientProducer stoping");
|
||||||
this.sncpClientProducer.stop();
|
this.sncpClientProducer.stop();
|
||||||
|
logger.log(Level.FINE, "sncpClientProducer stoped");
|
||||||
}
|
}
|
||||||
if (this.clientMessageCoder instanceof Service) {
|
if (this.clientMessageCoder instanceof Service) {
|
||||||
|
logger.log(Level.FINE, "clientMessageCoder destroying");
|
||||||
((Service) this.clientMessageCoder).destroy(config);
|
((Service) this.clientMessageCoder).destroy(config);
|
||||||
|
logger.log(Level.FINE, "clientMessageCoder destroyed");
|
||||||
}
|
}
|
||||||
if (this.timeoutExecutor != null) {
|
if (this.timeoutExecutor != null) {
|
||||||
this.timeoutExecutor.shutdown();
|
this.timeoutExecutor.shutdownNow();
|
||||||
|
logger.log(Level.FINE, "timeoutExecutor shutdownNow");
|
||||||
}
|
}
|
||||||
if (this.workExecutor != null && this.workExecutor != application.getWorkExecutor()) {
|
if (this.workExecutor != null && this.workExecutor != application.getWorkExecutor()) {
|
||||||
this.workExecutor.shutdownNow();
|
this.workExecutor.shutdownNow();
|
||||||
|
logger.log(Level.FINE, "workExecutor shutdownNow");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -251,6 +251,7 @@ public abstract class Sncp {
|
|||||||
|
|
||||||
public static <T extends Service> Class getServiceType(Class<T> serviceImplClass) {
|
public static <T extends Service> Class getServiceType(Class<T> serviceImplClass) {
|
||||||
SncpDyn dyn = serviceImplClass.getAnnotation(SncpDyn.class);
|
SncpDyn dyn = serviceImplClass.getAnnotation(SncpDyn.class);
|
||||||
|
System.out.println("dyn = " + dyn + ", serviceImplClass = " + serviceImplClass + ", type = " + (dyn == null ? "ddd" : dyn.type()));
|
||||||
return dyn != null ? dyn.type() : serviceImplClass;
|
return dyn != null ? dyn.type() : serviceImplClass;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user