|
|
@@ -596,11 +596,11 @@ public class WebSocketServer {
|
|
|
String sessionId = session.getId();
|
|
|
|
|
|
// 检查消息大小,超大消息分片发送
|
|
|
- byte[] messageBytes = message.getBytes(StandardCharsets.UTF_8);
|
|
|
- if (messageBytes.length > MAX_MESSAGE_SIZE) {
|
|
|
- sendMessageInChunks(session, message, messageBytes);
|
|
|
- return;
|
|
|
- }
|
|
|
+// byte[] messageBytes = message.getBytes(StandardCharsets.UTF_8);
|
|
|
+// if (messageBytes.length > MAX_MESSAGE_SIZE) {
|
|
|
+// sendMessageInChunks(session, message, messageBytes);
|
|
|
+// return;
|
|
|
+// }
|
|
|
|
|
|
// 获取Session锁(使用StampedLock提升性能)
|
|
|
StampedLock lock = sessionLocks.get(sessionId);
|
|
|
@@ -620,7 +620,7 @@ public class WebSocketServer {
|
|
|
|
|
|
try {
|
|
|
// 使用同步发送,确保前一次写入完成后再发起新写入
|
|
|
- session.getBasicRemote().sendText(message);
|
|
|
+ session.getAsyncRemote().sendText(message);
|
|
|
} catch (IllegalStateException e) {
|
|
|
log.error(e.getMessage());
|
|
|
// TEXT_FULL_WRITING状态,说明前一次写入未完成
|