light-example-4j/websocket目錄有client-to-server、peer-to-peer兩個示例項目,解決了個人兩個問題:在線聊天、日誌查看。html
在線聊天,後續能夠支持:最近歷史、表情+圖片web
.addPrefixPath("/ws/chat", websocket(new WebSocketConnectionCallback() {
@Override
public void onConnect(WebSocketHttpExchange exchange, WebSocketChannel channel) {
channel.getReceiveSetter().set(new AbstractReceiveListener() {
@Override
protected void onFullTextMessage(WebSocketChannel channel, BufferedTextMessage message) {
Set<WebSocketChannel> peerConnections = channel.getPeerConnections();
String msg = channel.getSourceAddress()+"/"+peerConnections.size()+": "+message.getData();
peerConnections.parallelStream().forEach(c -> WebSockets.sendText(msg, c, null));
log.info(msg);//能夠看到當前有多少人
}
});
channel.resumeReceives();
}
}))
api
日誌查看:使用Tailer、TailerListenerAdapter,把日誌信息推送給瀏覽器。瀏覽器