文档章节

NETTY实战

东门非树
 东门非树
发布于 2014/11/13 10:35
字数 132
阅读 342
收藏 0

//TCP监听

public void run(){
  try {
   this.logger.info("监听TCP端口:" + String.valueOf(this.port));
   b.group(bossGroup, workerGroup)
   .channel(NioServerSocketChannel.class)
   .option(ChannelOption.SO_BACKLOG, 1000)
   .handler(new LoggingHandler(LogLevel.INFO))
   .childHandler(new ChannelInitializer<SocketChannel>(){
    @Override
    protected void initChannel(SocketChannel ch)
      throws Exception {
     ch.pipeline().addLast(new TCPChannelHandlerAdapter(port, logger));
    }
   });   
   b.bind(port).sync().channel().closeFuture().sync();   
  } catch (Exception e) {
   // TODO: handle exception
   e.printStackTrace();
  }
  finally{
   bossGroup.shutdownGracefully();
   workerGroup.shutdownGracefully();
  }

  }

 

 

//UDP监听

public void run()
 {
  //EventLoopGroup group = new NioEventLoopGroup();
        try {
            this.logger.info("监听UDP端口:" + String.valueOf(this.port));
            b.group(bossGroup)
             .channel(NioDatagramChannel.class)
             .option(ChannelOption.SO_BACKLOG, 1000)
             .option(ChannelOption.SO_BROADCAST, true)
             .handler(new UDPChannelHandlerAdapter(port,this.server, this.udpchannels));
            //System.out.println("UDP:"+port+" Server is starting……"); 
            b.bind(port).sync().channel().closeFuture().await();
          
        }
        catch (Exception e) {
         e.printStackTrace();
  }
        finally {
            bossGroup.shutdownGracefully();
        }

 }

© 著作权归作者所有

共有 人打赏支持
上一篇: Redis测试
东门非树
粉丝 0
博文 11
码字总数 4040
作品 0
南京
私信 提问
加载中

评论(4)

东门非树
东门非树

引用来自“风声云起”的评论

博主,udp发送消息呢?
public class UdpClientSocket { private byte[] buffer = new byte[1024]; private DatagramSocket ds = null; public UdpClientSocket() throws Exception { ds = new DatagramSocket(); } public final void setSoTimeout(final int timeout) throws Exception { ds.setSoTimeout(timeout); } public final int getSoTimeout() throws Exception { return ds.getSoTimeout(); } public final DatagramSocket getSocket() { return ds; } public final String receive(final String lhost, final int lport) throws Exception { DatagramPacket dp = new DatagramPacket(buffer, buffer.length); ds.receive(dp); String info = new String(dp.getData(), 0, dp.getLength()); return info; } public final void close() { try { ds.close(); } catch (Exception ex) { ex.printStackTrace(); } } }
东门非树
东门非树

引用来自“风声云起”的评论

博主,udp发送消息呢?
public final DatagramPacket send(final String host, final int port, final byte[] bytes) throws IOException { DatagramPacket dp = new DatagramPacket(bytes, bytes.length, InetAddress .getByName(host), port); ds.send(dp); return dp; }
东门非树
东门非树

引用来自“风声云起”的评论

博主,udp发送消息呢?
public static void main(String[] args) throws Exception { UdpClientSocket client = new UdpClientSocket(); String serverHost = "58.213.150.66"; //58.213.150.66 //String serverHost = "10.1.2.133"; int serverPort = 25002; for(int i=2;i>1;i++){ System.out.println("BDJY,863121020017075,20171118143757,118.698815,32.161784,Net+GPS,69,1,,\n" + ("BDJY,863121020017075,20171118143757,118.698815,32.161784,Net+GPS,69,1,,\\n").getBytes().toString()); client.send(serverHost, serverPort, ("BDJY,863121020017075,20171118143757,118.698815,32.161784,Net+GPS,69,1,,\\n").getBytes()); System.out.println("发送数据:" + client.getSocket()); } //String info = client.receive(serverHost, serverPort); //System.out.println("服务端回应数据:" + info); } }
风声云起
风声云起
博主,udp发送消息呢?
《深入探索Netty原理及源码分析》文集小结

写在2017年末尾,翻看文集的第一篇文章已经是三个月前的事了,也没想过这文集会写那么久,这么慢。。。 Netty文集中的文章主要都是我学习过程的笔记,写博客的主要目的是为了通过输出来倒逼输...

tomas家的小拨浪鼓
2017/12/30
0
0
书籍推荐:《Netty权威指南》

《Netty权威指南》是异步非阻塞通信领域的经典之作,基于最新版本Netty 5.0编写,是国内首本深入介绍Netty原理和架构的技术书籍,也是作者多年实战经验的总结和浓缩。在理论方面,讲解了Net...

ddddd8
2017/12/05
0
0
Netty 入门与实战:仿写微信 IM 即时通讯系统

被小伙伴日常催更了一个多月的 Netty 小册终于和大伙正式见面了,为了答谢小伙伴对小册的厚爱,我将赠送15个免费阅读小册的兑换码。 有两种方式可以获取免费兑换码: 1. 在本篇文章后面留言:...

闪电侠的博客
09/26
0
0
百度、阿里、腾讯、京东、大型互联网分布式架构必备技能

分布式架构 迎接高并发大数据的挑战,从深度到广度完善知识体系,成为下一个互联网高薪人才。 理论结合实战,透彻理解分布式架构及其解决方案。 面向人群 1、工作1-5年需要突破瓶颈; 2、传统...

Java高级架构
2017/12/21
0
0
Netty+MUI从零打造一个仿微信的高性能聊天项目,兼容iPhone/iPad/安卓

要说到微信,我相信是个人都应该知道,几乎人人都会安装这款社交APP吧,它已经成为了我们生活中不可缺少的一份子。 我记得我上大学那会刚接触Java,做的第一个小项目就是基于J2SE的聊天室,使...

风间影月
07/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊storm的AggregateProcessor的execute及finishBatch方法

序 本文主要研究一下storm的AggregateProcessor的execute及finishBatch方法 实例 TridentTopology topology = new TridentTopology(); topology.newStream("spout1", spout......

go4it
38分钟前
1
0
大数据教程(7.5)hadoop中内置rpc框架的使用教程

博主上一篇博客分享了hadoop客户端java API的使用,本章节带领小伙伴们一起来体验下hadoop的内置rpc框架。首先,由于hadoop的内置rpc框架的设计目的是为了内部的组件提供rpc访问的功能,并不...

em_aaron
今天
1
0
CentOS7+git+github创建Python开发环境

1.准备CentOS7 (1)下载VMware Workstation https://pan.baidu.com/s/1miFU8mk (2)下载CentOS7镜像 https://mirrors.aliyun.com/centos/ (3)安装CentOS7系统 http://blog.51cto.com/fengyuns......

枫叶云
昨天
1
0
利用ibeetl 实现selectpicker 的三级联动

1. js 直接写在html页面上面,ibeetl 就可以动态地利用后台传上来的model List ,不需要每次点击都要ajax请求后台 2. 使用selectpicker 的时候,除了对selecct option的动态处理后,还需要 $("#...

donald121
昨天
1
0
Android SELinux avc dennied权限问题解决方法

1. 概述 SELinux是Google从android 5.0开始,强制引入的一套非常严格的权限管理机制,主要用于增强系统的安全性。 然而,在开发中,我们经常会遇到由于SELinux造成的各种权限不足,即使拥有“...

TreasureWe
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部