diff --git a/cim-boot-server/libs/cim-server-sdk-netty-4.2.0.jar b/cim-boot-server/libs/cim-server-sdk-netty-4.2.0.jar index ee24f23..e2b4349 100644 Binary files a/cim-boot-server/libs/cim-server-sdk-netty-4.2.0.jar and b/cim-boot-server/libs/cim-server-sdk-netty-4.2.0.jar differ diff --git a/cim-boot-server/src/main/resources/application.properties b/cim-boot-server/src/main/resources/application.properties index 14ab7c7..2992086 100644 --- a/cim-boot-server/src/main/resources/application.properties +++ b/cim-boot-server/src/main/resources/application.properties @@ -4,7 +4,7 @@ spring.profiles.active=dev ################################################################## # JDBC Config # ################################################################## -spring.datasource.url = jdbc:mysql://127.0.0.1:3306/cim?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC +spring.datasource.url = jdbc:mysql://yinxindatabase.mysql.rds.aliyuncs.com:3306/cim?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC spring.datasource.username = cim spring.datasource.password = cimv587! spring.datasource.type=com.zaxxer.hikari.HikariDataSource @@ -20,6 +20,7 @@ spring.datasource.hikari.connection-timeout=30000 spring.datasource.hikari.connection-test-query=SELECT 1 spring.datasource.hikari.validation-timeout=600000 + ################################################################## # JPA Config # ################################################################## @@ -33,9 +34,10 @@ spring.jpa.hibernate.naming.physical-strategy= org.hibernate.boot.model.naming.P ################################################################## # Redis Config # ################################################################## -spring.redis.host=127.0.0.1 +spring.redis.host=114.215.199.17 spring.redis.port=6379 spring.redis.database=12 +spring.redis.password=redisv587 spring.redis.lettuce.pool.max-active=10 spring.redis.lettuce.pool.max-wait= 10s spring.redis.lettuce.pool.max-idle=5 diff --git a/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/AppSocketAcceptor.java b/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/AppSocketAcceptor.java index bf24326..bad1617 100644 --- a/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/AppSocketAcceptor.java +++ b/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/AppSocketAcceptor.java @@ -59,7 +59,6 @@ public class AppSocketAcceptor extends NioSocketAcceptor { bootstrap.childHandler(new ChannelInitializer() { @Override public void initChannel(SocketChannel ch){ - ch.pipeline().addLast(threadNamingHandler); ch.pipeline().addLast(new AppMessageDecoder()); ch.pipeline().addLast(new AppMessageEncoder()); ch.pipeline().addLast(loggingHandler); diff --git a/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/NioSocketAcceptor.java b/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/NioSocketAcceptor.java index 4d1803d..4032148 100644 --- a/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/NioSocketAcceptor.java +++ b/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/NioSocketAcceptor.java @@ -25,7 +25,6 @@ import com.farsunset.cim.constant.CIMConstant; import com.farsunset.cim.constant.ChannelAttr; import com.farsunset.cim.handler.CIMRequestHandler; import com.farsunset.cim.handler.LoggingHandler; -import com.farsunset.cim.handler.ThreadNamingHandler; import com.farsunset.cim.model.Ping; import com.farsunset.cim.model.SentBody; import io.netty.bootstrap.ServerBootstrap; @@ -49,7 +48,6 @@ abstract class NioSocketAcceptor extends SimpleChannelInboundHandler{ protected final Logger logger = LoggerFactory.getLogger(getClass()); protected final ChannelHandler loggingHandler = new LoggingHandler(); - protected final ChannelHandler threadNamingHandler = new ThreadNamingHandler(); private final EventLoopGroup bossGroup; private final EventLoopGroup workerGroup; diff --git a/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/WebsocketAcceptor.java b/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/WebsocketAcceptor.java index 47d122c..f924e72 100644 --- a/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/WebsocketAcceptor.java +++ b/cim-server-sdk/src/main/java/com/farsunset/cim/acceptor/WebsocketAcceptor.java @@ -90,7 +90,6 @@ public class WebsocketAcceptor extends NioSocketAcceptor { @Override public void initChannel(SocketChannel ch){ - ch.pipeline().addLast(threadNamingHandler); ch.pipeline().addLast(new HttpServerCodec()); ch.pipeline().addLast(new ChunkedWriteHandler()); ch.pipeline().addLast(new HttpObjectAggregator(4 * 1024)); @@ -107,7 +106,6 @@ public class WebsocketAcceptor extends NioSocketAcceptor { ch.pipeline().addLast(loggingHandler); ch.pipeline().addLast(WebsocketAcceptor.this); ch.pipeline().addLast(illegalRequestHandler); - } }); diff --git a/cim-server-sdk/src/main/java/com/farsunset/cim/handler/LoggingHandler.java b/cim-server-sdk/src/main/java/com/farsunset/cim/handler/LoggingHandler.java index f067257..0488cf1 100644 --- a/cim-server-sdk/src/main/java/com/farsunset/cim/handler/LoggingHandler.java +++ b/cim-server-sdk/src/main/java/com/farsunset/cim/handler/LoggingHandler.java @@ -22,6 +22,7 @@ package com.farsunset.cim.handler; +import com.farsunset.cim.constant.ChannelAttr; import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelPromise; @@ -36,14 +37,43 @@ public class LoggingHandler extends io.netty.handler.logging.LoggingHandler { @Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { + String name = Thread.currentThread().getName(); + setThreadName(ctx); super.channelRead(ctx,msg); + Thread.currentThread().setName(name); } @Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception { - super.channelRead(ctx,msg); + String name = Thread.currentThread().getName(); + setThreadName(ctx); + super.write(ctx,msg,promise); + Thread.currentThread().setName(name); } + @Override + public void close(ChannelHandlerContext ctx, ChannelPromise promise) throws Exception { + String name = Thread.currentThread().getName(); + setThreadName(ctx); + super.close(ctx,promise); + Thread.currentThread().setName(name); + } + + @Override + public void channelInactive(ChannelHandlerContext ctx) throws Exception { + String name = Thread.currentThread().getName(); + setThreadName(ctx); + super.channelInactive(ctx); + Thread.currentThread().setName(name); + } + + @Override + public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception { + String name = Thread.currentThread().getName(); + setThreadName(ctx); + super.userEventTriggered(ctx,evt); + Thread.currentThread().setName(name); + } @Override public void channelRegistered(ChannelHandlerContext ctx) { @@ -74,4 +104,12 @@ public class LoggingHandler extends io.netty.handler.logging.LoggingHandler { public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { logger.warn("EXCEPTION",cause); } + + private void setThreadName(ChannelHandlerContext context){ + String uid = context.channel().attr(ChannelAttr.UID).get(); + if (uid != null){ + Thread.currentThread().setName("nio-uid-" + uid); + } + } + } diff --git a/cim-server-sdk/src/main/java/com/farsunset/cim/handler/ThreadNamingHandler.java b/cim-server-sdk/src/main/java/com/farsunset/cim/handler/ThreadNamingHandler.java deleted file mode 100644 index bc2768e..0000000 --- a/cim-server-sdk/src/main/java/com/farsunset/cim/handler/ThreadNamingHandler.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright 2013-2019 Xia Jun(3979434@qq.com). - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - *************************************************************************************** - * * - * Website : http://www.farsunset.com * - * * - *************************************************************************************** - */ -package com.farsunset.cim.handler; - - -import com.farsunset.cim.constant.ChannelAttr; -import io.netty.channel.*; - -@ChannelHandler.Sharable -public class ThreadNamingHandler extends ChannelInboundHandlerAdapter { - - @Override - public void channelRegistered(ChannelHandlerContext ctx) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelRegistered(ctx); - Thread.currentThread().setName(name); - } - - @Override - public void channelUnregistered(ChannelHandlerContext ctx) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelUnregistered(ctx); - Thread.currentThread().setName(name); - } - - @Override - public void channelActive(ChannelHandlerContext ctx) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelActive(ctx); - Thread.currentThread().setName(name); - - } - - @Override - public void channelInactive(ChannelHandlerContext ctx) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelInactive(ctx); - Thread.currentThread().setName(name); - } - - @Override - public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelRead(ctx,msg); - Thread.currentThread().setName(name); - } - - @Override - public void channelReadComplete(ChannelHandlerContext ctx) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelReadComplete(ctx); - Thread.currentThread().setName(name); - } - - @Override - public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.userEventTriggered(ctx,evt); - Thread.currentThread().setName(name); - } - - @Override - public void channelWritabilityChanged(ChannelHandlerContext ctx) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.channelWritabilityChanged(ctx); - Thread.currentThread().setName(name); - } - - @Override - public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception { - String name = Thread.currentThread().getName(); - setThreadName(ctx); - super.exceptionCaught(ctx,cause); - Thread.currentThread().setName(name); - } - - - private void setThreadName(ChannelHandlerContext context){ - String uid = context.channel().attr(ChannelAttr.UID).get(); - if (uid != null){ - Thread.currentThread().setName("nio-uid-" + uid); - } - } -}