`
cywhoyi
  • 浏览: 411914 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

基于Netty4网站架构

阅读更多

前言:

       本人所在公司在业内比较知名的公司,但是其电商平台真的不敢恭维,都称不上架构,跟传统的软件公司差不多springMVC+Mybatis+redis挂载在nginx+tomcat下,不能说它有问题,就是在高并发、低IO消耗,且移动端使用频繁场景情况下,觉得需要进行改造,所以采用如下的方式:


 

 



 

说明:

网关层:我们有部分是放在阿里云平台上,那么在运维层面其实能够需要的地方甚少,那为了安全和分流,我们在nginx上写了基于netty4的网关层,通过URL手段来分流到各个业务的机器。

 

应用层:基于netty的应用服务器,挂载了product、order、search等业务功能

 

数据路由层:根据配置,无缝连接数据路由
 

以上都是由团队成员一同完成工作,彻底地解放tomcat等局限性,性能提高不少。

 

因为以上部分并未开源出去,但是实际上能够基于netty完成的东西还是很多的,但是在业务功能完成层面跟一般都一样springMVC+Mybaits来完成。

 

应用服务层:Dubbo,有考虑向通过netty4+protobuf来完成,只是dubbo配置较为简单

 

这里推荐下已经开源了的vert-x3的开源框架,对于已经在使用JDK1.8的公司,推荐vert-x3,因为本人所在公司还在1.6-1.7,但是里面很多组件被采纳如:RXJava、EventBus等

 

最终结论:

大家觉得这套方案还有其它可以提高的地方吗?请及时提供意见,毕竟新架构还在磨合中,有待完善,但是个人感觉netty4真的用处很大。

  • 大小: 57.3 KB
  • 大小: 6.2 KB
6
4
分享到:
评论
12 楼 cywhoyi 2015-11-03  
james_lover 写道
你确定要用netty实现web服务?
确定要降低80%的web开发效率换10%的性能提升?

这是个很大问题,确实我们招人碰到很大问题,但是经过我们几个架构师的探讨,最终封装下,平常做业务开发的工程师,还是按照springMVC+MYbats这一套方式来
11 楼 james_lover 2015-11-03  
你确定要用netty实现web服务?
确定要降低80%的web开发效率换10%的性能提升?
10 楼 cywhoyi 2015-10-29  
yaoxianhuang 写道
能具体说说netty比tomcat优越的地方否?因为从我实际压测的结果来看,netty对比tomcat并没有什么优势

好的,我这周写一篇blog,看看能否对比下,仅仅回复你下,说服力不够
9 楼 yaoxianhuang 2015-10-29  
能具体说说netty比tomcat优越的地方否?因为从我实际压测的结果来看,netty对比tomcat并没有什么优势
8 楼 cywhoyi 2015-10-28  
winworm 写道
Dubbo只是一个构建SOA的工具,楼主主要是将tomcat应用服务器群换成netty服务群自己解析http请求处理业务员 ,这样就能保证netty服务集群能比tomcat resin 等应用服务器更稳定,性能更好?

springMVC+Mybatis+redis挂载在nginx+tomcat下确实中规中矩,能说说此架构下系统遇到性能瓶颈吗? tomcat 和一些其它的应用服务器也是支持NIO的噢,netty 主要也是基于nio的吧~

1.兄弟说的对的,我的意思也是差不多这个意思,单单netty来处理http就已经比tomcat快很多,再加上eventbus以及rxjava等组件后,效果非常明显
2.碰到当我们的总裁开完新品发布会的时候,我们的机器总是碰到瓶颈
7 楼 winworm 2015-10-28  
Dubbo只是一个构建SOA的工具,楼主主要是将tomcat应用服务器群换成netty服务群自己解析http请求处理业务员 ,这样就能保证netty服务集群能比tomcat resin 等应用服务器更稳定,性能更好?

springMVC+Mybatis+redis挂载在nginx+tomcat下确实中规中矩,能说说此架构下系统遇到性能瓶颈吗? tomcat 和一些其它的应用服务器也是支持NIO的噢,netty 主要也是基于nio的吧~
6 楼 cywhoyi 2015-10-28  
bitray 写道
cywhoyi 写道
bitray 写道
用来复写网关层的目标是什么?

现阶段的用处:
1.增加URL匹配规则,进行应用服务器的跳转
2.增加心跳检测,保证不宕机
3.增加过滤处理
其它的就没了,可能后续还会加一些东西吧,但是现阶段用处就三个特性,当然主要netty比较容易做相较于nginx


是为了网速考虑的?还是为了分布式,高可用考虑的啊?
去掉了应用服务器,以后的业务逻辑怎么处理呢?部署在云上?

1.安全
2.性能
3.netty里面只要能够解析HTTP协议,就能完成业务逻辑
5 楼 bitray 2015-10-28  
cywhoyi 写道
bitray 写道
用来复写网关层的目标是什么?

现阶段的用处:
1.增加URL匹配规则,进行应用服务器的跳转
2.增加心跳检测,保证不宕机
3.增加过滤处理
其它的就没了,可能后续还会加一些东西吧,但是现阶段用处就三个特性,当然主要netty比较容易做相较于nginx


是为了网速考虑的?还是为了分布式,高可用考虑的啊?
去掉了应用服务器,以后的业务逻辑怎么处理呢?部署在云上?
4 楼 cywhoyi 2015-10-28  
DataWei 写道
nginx 也去掉了吗?

没去掉nginx,去掉了tomcat、jetty等常规的容器
3 楼 DataWei 2015-10-28  
nginx 也去掉了吗?
2 楼 cywhoyi 2015-10-28  
bitray 写道
用来复写网关层的目标是什么?

现阶段的用处:
1.增加URL匹配规则,进行应用服务器的跳转
2.增加心跳检测,保证不宕机
3.增加过滤处理
其它的就没了,可能后续还会加一些东西吧,但是现阶段用处就三个特性,当然主要netty比较容易做相较于nginx
1 楼 bitray 2015-10-28  
用来复写网关层的目标是什么?

相关推荐

    基于Netty的RPC架构实战演练视频教程

    基于Netty的RPC架构实战演练 让你深入java的服务器开发

    Java基于Netty的websocket微服务架构即时聊天即时通信APP源码,仿微信APP

    Java基于Netty的websocket微服务架构即时聊天即时通信APP源码,仿微信APP 前端使用Vue3 + TypeScript,后端采用SpringCloud + SpringBoot + Spring Data JPA 。基于 Netty 使用 WebSocket 实现了正常的C/S通信模块。...

    netty权威指南源码李林峰

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

    使用Netty基于WebSocket的微服务架构即时通信APP ,根据场景实现了:基础聊天、附近的人、个人信息编辑等功能

    基于Netty NIO形式通过 WebSocket 协议进行通讯 基于Redis GeoHash 数据结构实现检索用户「附近的人」 基于Docker搭建FastDFS存储服务器并实现对应接口 基于策略模式+工厂模式解除WebSocket的信息处理类的...

    高清Netty5.0架构剖析和源码解读

    Flush操作42 4.Netty架构50 4.1. 逻辑架构50 5. 附录51 5.1. 作者简介51 5.2. 使用声明51 1. 概述 1.1.JAVA 的IO演进 1.1.1. 传统BIO通信的弊端 在JDK 1.4推出JAVANIO1.0之前,基于JAVA 的所有Socket通信都采用 BIO...

    Netty权威指南 第二版

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

    netty权威指南 第1版(李林峰) + 源码

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

    Netty权威指南高清完整版PDF

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

    Netty权威指南书中案例

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

    netty权威指南

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

    Netty权威指南

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

    lw-p2p:基于 Netty 4.x 的轻量级点对点框架

    基于 Netty 4.x 的轻量级点对点框架 目前正在建设中,第一个工作版本预计于 2015 年 6 月发布。 该框架旨在提供一个易于使用的点对点接口,用于无服务器应用程序。 它包括 TCP 和 UDP 连接。 该框架正在构建以适应...

    Netty权威指南第二版

    《Netty权威指南(第2 版)》是异步非阻塞通信领域的经典之作,基于最新版本的Netty 5.0 编写,是国内首本深入介绍Netty 原理和架构的书籍,也是作者多年实战经验的总结和浓缩。内容不仅包含Java NIO入门知识、Netty...

    netty权威指南 第2版(李林峰) + 源码

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

    Netty权威指南 第2版 带书签目录 完整版

    《Netty权威指南(第2 版)》是异步非阻塞通信领域的经典之作,基于最新版本的Netty 5.0 编写,是国内首本深入介绍Netty 原理和架构的书籍,也是作者多年实战经验的总结和浓缩。内容不仅包含Java NIO入门知识、Netty...

    Netty权威指南(第2版)

    《Netty 权威指南(第2 版)》是异步非阻塞通信领域的经典之作,基于最新版本的Netty 5.0 编写,是国内首本深入介绍Netty 原理和架构的书籍,也是作者多年实战经验的总结和浓缩。内容不仅包含Java NIO入门知识、...

    Netty权威指南 第2版 带书签目录 高清完整版.pdf

    《Netty 权威指南(第2 版)》是异步非阻塞通信领域的经典之作,基于最新版本的Netty 5.0 编写,是国内首本深入介绍Netty 原理和架构的书籍,也是作者多年实战经验的总结和浓缩。内容不仅包含Java NIO入门知识、...

    nz-rpc:基于netty和zookeeper的RPC框架

    基于netty和zookeeper的RPC框架说明nzRpc是一个基于netty和zookeeper的RPC框架,使用netty作为底层socket通信框架。使用Zookeeper作为注册中心。服务提供者启动时会向服务注册中心注册相关信息消费者启动时,会获取...

Global site tag (gtag.js) - Google Analytics