netty案例,netty4.1拓展篇六《Netty+Elasticsearch收集日志存储》

2020-05-29 00:00:00 数据 源码 链接 服务端 公众

小傅哥 |https://bugstack.cn

沉淀、分享、成长,让自己和他人都能有所收获。专注于原创专题案例编写,目前已完成的专题有;Netty4.x实战专题案例、用Java实现JVM、基于JavaAgent的全链路监控、手写RPC框架、架构设计专题案例、源码分析等。你用剑 、我用刀 ,好的代码都很烧,望你不吝出招!

一、前言介绍

在实际的开发场景中,我们希望将大量的业务以及用户行为数据存储起来用于分析处理,但是由于数据量较大且需要具备可分析功能所以将数据存储到文件系统更为合理。尤其是一些互联网高并发级应用,往往数据库都采用分库分表设计,那么将这些分散的数据通过binlog汇总到一个统一的文件系统就显得非常有必要。

二、开发环境

  1. jdk1.8【jdk1.7以下只能部分支持netty】
  2. Netty4.1.36.Final【netty3.x 4.x 5每次的变化较大,接口类名也随着变化】
  3. elasticsearch6.2.2
    1. windows环境下安装elasticsearch6.2.2
    2. elasticsearch-head插件安装


三、代码示例

itstack-demo-netty-2-06
└── src
    ├── main
    │   ├── java
    │   │   └── org.itstack.demo.netty
    │   │       ├── codec
    │   │       │    ├── ObjDecoder.java
    │   │       │    └── ObjEncoder.java 
    │   │       ├── domain
    │   │       │    ├── TransportProtocol.java
    │   │       │    └── User.java
    │   │       ├── server
    │   │       │    ├── MyChannelInitializer.java
    │   │       │    ├── MyServerHandler.java
    │   │       │    └── NettyServer.java
    │   │       ├── service
    │   │       │    ├── impl
    │   │       │    │   └── UserServiceImpl.java    
    │   │       │    ├── UserRepository.java
    │   │       │    └── UserService.java    
    │   │       ├── util
    │   │       │    └── SerializationUtil.java
    │   │       ├── web
    │   │       │    └── NettyController.java    
    │   │       └──    Application.java    
    │   └── resources    
    │      └── application.yml
    │
    └── test
         └── java
             └── org.itstack.demo.test
                 └── ApiTest.java

相关文章