From facc0ea3fa37091a98aa1e0a0d1081fd32fba28e Mon Sep 17 00:00:00 2001 From: vince <757871790@qq.com> Date: 星期六, 27 一月 2024 11:38:29 +0800 Subject: [PATCH] 优化协议 --- src/main/java/com/fzzy/protocol/bhzn/v0/server/BhznGrainV0ServerEngine.java | 34 +++++++++++++++------------------- 1 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/fzzy/protocol/bhzn/v0/server/BhznGrainV0ServerEngine.java b/src/main/java/com/fzzy/protocol/bhzn/v0/server/BhznGrainV0ServerEngine.java index 45c43e6..29dc938 100644 --- a/src/main/java/com/fzzy/protocol/bhzn/v0/server/BhznGrainV0ServerEngine.java +++ b/src/main/java/com/fzzy/protocol/bhzn/v0/server/BhznGrainV0ServerEngine.java @@ -1,5 +1,7 @@ package com.fzzy.protocol.bhzn.v0.server; +import com.fzzy.api.utils.BytesUtil; +import com.fzzy.protocol.bhzn.server.BhznGrainV2ServerUtils; import com.fzzy.protocol.fzzy.server.ServerUtils; import com.ld.io.api.*; import com.ld.io.netty.NettyServer; @@ -15,7 +17,7 @@ public class BhznGrainV0ServerEngine { - public static final Integer PORT = 19302; + public static final Integer PORT = 19303; public static NettyServer ioServer = null; @@ -39,8 +41,13 @@ } //纭缁撳熬鏍囧織-娌℃湁鍥哄畾缁撴潫绗﹀彿 - ioServerOption.setSplitDecoderType(SplitByteDecoderType.NO_LIMIT); + //纭缁撳熬鏍囧織 + //ioServerOption.setDelimiter(BhznGrainV2ServerUtils.MSG_END.getBytes()); +// ioServerOption.setSplitDecoderType(SplitByteDecoderType.NO_LIMIT); + + ioServerOption.setDelimiter(BhznGrainV2ServerUtils.MSG_END.getBytes()); + ioServerOption.setSplitDecoderType(SplitByteDecoderType.DELIMITER_SYMBOL); // 閰嶇疆绯荤粺蹇冭烦闂撮殧 ioServerOption.setReaderIdleTime(5 * 60); @@ -64,28 +71,17 @@ } /** - * 鍙戦�佷俊鎭� - * - * @param ip - * @param port - * @param msg - * @return + * 鐩存帴浣跨敤鍐呭瓨鐨凷ession鎵ц */ - public static InvokeResult push(String ip, int port, byte[] msg) { - IoSessionQuery sessionFactory = ioServer.getSessionQuery(); - List<IoSession> sessions = sessionFactory.getAllSession(); - IoSession session = null; - for (IoSession ioSession : sessions) { - if (ServerUtils.getServerKey(ip, port).equals(ioSession.getBusinessKey())) { - session = ioSession; - break; - } - } + public static InvokeResult pushByMin(String hexStr) { + + IoSession session = BhznGrainV0ServerUtils.getSession(); + if (null == session) { return InvokeResult.CHANNEL_CLOSED; } + byte[] msg = BytesUtil.hexStrToBytes(hexStr); return session.invoke(msg); } - } \ No newline at end of file -- Gitblit v1.9.3