好吧,今天继续简略的记录一下。记记几周之前写的一小段代码,关于在Netty中同时使用SSL和Google Protobuf的配置。
首先是Netty的initChannel相关代码:
public void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
// SSL相关,可以参考netty example中的io.netty.example.securechat.*的代码
p.addLast("ssl", new SslHandler(YourServerSslContextFactory.createSSLEngine()));
// Protobuf相关,可以参考netty example中的io.netty.example.worldclock.*的代码
ExtensionRegistry registry = ExtensionRegistry.newInstance();
YourProtobufClass.registerAllExtensions(registry);
p.addLast("frameDecoder", new ProtobufVarint32FrameDecoder());
p.addLast("protobufDecoder", new ProtobufDecoder(YourProtobufClass.YourClass.getDefaultInstance(), registry));
p.addLast("frameEncoder", new ProtobufVarint32LengthFieldPrepender());
p.addLast("protobufEncoder", new ProtobufEncoder());
p.addLast(new LoggingHandler(LogLevel.INFO));
p.addLast(handler);
}
顺便提提用java的keytool来生成SSL证书的命令:
keytool -genkey -alias YOUR_KEY_NAME -keysize 2048 -validity 365 -keyalg RSA -dname "CN=127.0.0.1,OU=YOUR_KEY_NAME" -keypass YOUR_KEY_PASSWORD -storepass changeit -keystore YOUR_FILE_NAME.jks
这里的-storepass changeit,因为jdk默认的密码是changeit,我的jdk没做过修改,还是默认的。
上面有很多YourClassXX或YOUR_XX之类的,表示需要根据自己的情况来做修改的~
发布在:http://auzll.iteye.com
分享到:
相关推荐
1、基于netty+websocket+springboot的实时聊天系统项目源码.zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料...
基于springboot+netty+vue构建的类似bililbili的弹幕群聊系统,个人娱乐项目,可用于前后端开发学习研究 基于springboot+netty+vue构建的类似bililbili的弹幕群聊系统,个人娱乐项目,可用于前后端开发学习研究 ...
3. 配置Spring Boot:在Spring Boot的配置文件中添加Netty和protobuf的相关依赖,配置服务器端口和protobuf的编码解码器。 4. 创建Netty Server:编写Netty服务器端代码,使用protobuf的Decoder和Encoder处理进来的...
总结来说,"通信与协议Netty+Protobuf-游戏设计与开发(1)配套代码"是一个关于如何利用Netty进行网络通信以及如何使用Protobuf进行数据序列化的实例。通过学习这个资源,开发者可以更好地理解和掌握这两种技术在游戏...
springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot +netty+activeMq在线客服系统springboot...
基于Netty+Redis+protobuf开发的即时通讯服务器 第一版是一个简版,只实现了很少的功能,现在已经迁移到 [v1.0](https://github.com/linyu19872008/cdeer-im/tree/v1.0) 第二版的目标有以下几点: 1 工程用...
在《netty+protobuf 整合实战》中,作者通过实际的源代码展示了如何将这两个技术结合使用。首先,我们需要理解 Protobuf 的工作原理。 Protobuf 提供了语言无关的 .proto 文件来定义数据结构,然后通过 protoc ...
java netty 服务端 + unity客户端 +protobuf3 实现网游通讯demo
基于Netty+TCP+Protobuf实现的Android IM库,包含Protobuf序列化、TCP拆包与粘包、长连接握手认证、心跳机制、断线重连机制、消息重发机制、读写超时机制、离线消息、线程池等功能
**SpringBoot+Netty+WebSocket+Redis:构建分布式实时聊天应用** 在当今的互联网世界中,实时通信和数据共享是许多应用程序的核心需求。Spring Boot作为一款流行的Java框架,因其简洁的配置和快速开发特性而备受...
毕设项目:基于netty+websocket+springboot的实时聊天系统 毕设项目:基于netty+websocket+springboot的实时聊天系统 毕设项目:基于netty+websocket+springboot的实时聊天系统 毕设项目:基于netty+websocket+...
本项目"基于Netty+Redis+protobuf开发的即时通讯服务器"利用了三种技术:Netty作为网络通信库,Redis作为数据缓存与消息中间件,以及protobuf作为序列化协议,实现了高性能的实时通信解决方案。 首先,Netty是一个...
本项目"Netty+Spring Boot仿微信 全栈开发高性能后台及客户端"旨在教你如何利用Netty和Spring Boot这两个强大的技术栈来实现类似微信的应用。接下来,我们将深入探讨这两个技术以及它们在全栈开发中的应用。 1. ...
基于springcloud+Netty+MQ+mysql的分布式即时聊天系统.zip基于springcloud+Netty+MQ+mysql的分布式即时聊天系统.zip基于springcloud+Netty+MQ+mysql的分布式即时聊天系统.zip基于springcloud+Netty+MQ+mysql的分布式...
在"Netty+Protobuf入门案例"中,我们可以学习到如何结合这两个强大的工具进行高效的数据交换。首先,理解 Protobuf 的基本概念至关重要。 Protobuf 提供了一种定义数据结构的语言,通过编译器将这些结构转换为各种...
netty案例,netty4.1中级拓展篇六《SpringBoot+Netty+Elasticsearch收集日志信息数据存储》源码 ...
### Netty+Thrift 实现高并发高性能的关键技术解析 #### 一、引言 在当前互联网技术高速发展的背景下,高性能、高并发的服务框架成为众多企业和开发者追求的目标。Netty作为一款高性能、异步事件驱动的网络应用...
omen-1.1 自己基于netty开发的服务端,支持spring配置服务器启动模式:http,tcp,websocket等,并支持NIO和OIO方式,项目已应用于生产,可以通过jar形式加入其它项目,业务类实现业务service,启动不依赖于其他应用...