学过 Netty 的都知道,Netty 对 NIO 进行了很好的封装,简单的 API,庞大的开源社区。深受广大程序员喜爱。基于此本文分享一下基础的 netty 使用。实战制作一个 Netty + websocket 的消息推送小栗子。

netty服务器

public interface PushMsgService {
    /***推送给指定用户*/
    void pushMsgToOne(String userId, String msg);

    /***推送给所有用户*/
    void pushMsgToAll(String msg);
}

@Service
public class PushMsgServiceImplimplementsPushMsgService {
    @Override
    public void pushMsgToOne(String userId, String msg) {
        Channelchannel = NettyConfig.getChannel(userId);
        if (Objects.isNull(channel)) {
            thrownewRuntimeException("未连接socket服务器");
        }
        channel.writeAndFlush(newTextWebSocketFrame(msg));
    }

    @Override
    public void pushMsgToAll(String msg) {
        NettyConfig.getChannelGroup().writeAndFlush(newTextWebSocketFrame(msg));
    }
}
 

测试

图片

链接服务器

图片

图片

发送消息

图片

图片

调用接口,往前端推送消息!

图片

图片

OK!

一个简单的 netty 小栗子就完成了。

来源:https://blog.csdn.net/weixin_44912855

/article/details/122667977

资料免费共享群
1、4000G架构师全栈资料(点击查看)2、99个实战项目点击查看3、5000页互联网大厂面试题整理汇总(点击查看)

本篇文章来源于微信公众号: java版web项目



微信扫描下方的二维码阅读本文

此作者没有提供个人介绍
最后更新于 2024-08-02