SpringBoot应用裁减使用Netty替换内置Web容器
在云服务应用中需要提供高性能的中台服务,而在生产环境我们是使用的RPC服务,基于这个背景,为了使微服务系统更加轻量级,提高性能,所以打算移除SpringMvc相关组件以及Tomcat,Jetty,Undertow等Web容器,使用Netty构建HttpServer来实现轻量级的RestfulAPIs。先看图:
1.首先Springboot关闭Web功能
2.NettyServer配置
3实现IFunctionHandler 也就是SpirngMvc的Controller
当然也支持 path和requestboyd传递参数的方式,分别如下
image.png
4 OK 我们来启动Spirngboot
5 国际惯例 Hello world
优点
1 netty使用多路复用技术大幅提升性能
2 减少web容器依赖,减少jar包体积
3 灵活配置简单,适合所有需要提供restful接口的微服务应用
4 完全按照springmvc的模式开发配置
缺点
1还没能做到和spirng DispatcherServlet那么强大到支持各种规则的path配置
2获取各种参数还需要在controller里面通过HttpRequest来获取,没有springmvc自动注入参数方便
SpringBoot应用裁减使用Netty替换内置Web容器相关推荐
- SpringBoot深入(一)--SpringBoot内置web容器及配置
版权声明:作者原创,转载请注明出处. 本系列文章目录地址:http://blog.csdn.net/u011961421/article/details/79416510 前言 在学会基本运用Spri ...
- 浅谈:Spring Boot原理分析,切换内置web服务器,SpringBoot监听项目(使用springboot-admin),将springboot的项目打成war包
浅谈:Spring Boot原理分析(更多细节解释在代码注释中) 通过@EnableAutoConfiguration注解加载Springboot内置的自动初始化类(加载什么类是配置在spring.f ...
- NET Core 3.0 AutoFac替换内置DI的新姿势
.NET Core 3.0 和 以往版本不同,替换AutoFac服务的方式有了一定的变化,在尝试着升级项目的时候出现了一些问题. 原来在NET Core 2.1时候,AutoFac返回一个 IServ ...
- php打印函数console,PHP内置Web Server探究(2)自定义PHP控制台输出console函数
PHP内置Web Server探究(二)自定义PHP控制台输出console函数 我们在开发APP的服务器端,当和APP进行联调时通常需要实时跟踪URL请求和参数的接收情况. 但PHP并没有像Pyth ...
- php web server setup,PHP本地开发利器:内置Web Server
PHP 5.4.0起, CLI SAPI 提供了一个内置的Web服务器. 命令:php -S 这个内置的Web服务器主要用于本地开发使用,不可用于线上产品环境. URI请求会被发送到PHP所在的的工作 ...
- 使用Synology群晖内置web station和榴莲壳发布自己的网站(三)如何访问自己服务器里的网页
使用Synology群晖内置web station和榴莲壳发布自己的网站(三)如何访问自己服务器里的网页 配置 榴莲壳的申请 榴莲壳设置 Web Station完成最后一步设置 internet顺利访 ...
- 使用Synology群晖内置web station和榴莲壳发布自己的网站(二)设置Web Station
使用Synology群晖内置web station和榴莲壳发布自己的网站(二)设置Web Station 配置 设置群晖Web Station 打开Web Station设置 安装Apache HTT ...
- 使用Synology群晖内置web station和榴莲壳发布自己的网站(一)安装Web Station
使用Synology群晖内置web station和榴莲壳发布自己的网站(一)安装Web Station 配置 自己用html写一个简单网站用于test 群晖安装web station 自从入手了群晖 ...
- php radius web认证,内置WEB认证配置(radius认证)
本帖 * 后由 浪天涯星仔 于 2016-1-9 20:14 编辑 功能介绍: Web认证是一种对用户访问网络的权限进行控制的身份认证方法,这种认证方法不需要用户安装专用的客户端认证软件,使用普通的浏 ...
最新文章
- php安卓传输图片到mysql_php – Android应用程序将图像发送到MySQL
- SQLSERVER 2008 R2中的全文检索
- 我们为什么要接受教育
- 总结的比较好的vim命令
- Angular Lazy Load 的一个局限性以及解决办法
- Diango博客--2.博客从“裸奔”到“有皮肤”
- Git中非常重要的一个文件——.gitignore详解
- matlab length_【重点】最优化计算与matlab实现(20)——遗传算法
- CentOS7下让Asp.Net Core的网站自动运行
- orangepi自启动打开一个终端并且运行脚本
- shell 练习(07)——MySQL 数据库备份
- 如何注册、发布 CSDN博客
- Android EditText属性大全
- 阿里云购买域名到建站的全流程怎么做?
- html正方形符号,html 特殊符号标记
- 跟计算机断层扫描相关的技术,数字化X线摄影设备、计算机断层扫描设备和相关方法与流程...
- Win10下可连wifi的笔记本共享网络至台式机
- 不要说珍重,不要说再见,就这样,默默地离开。在炎炎的夏季,也正是因为有了思念,才有了久别重逢的欢畅
- 《需求工程--软件建模与分析》笔记
- 自动化测试 —— Pytest测试框架
热门文章
- 2020最实用115个Java面试题及面向对象的能力汇总合集
- mysql删除数据怎么回退_mysql 删除整个数据库
- SketchUp安装组件失败“.Net FrameWork 4.5.2”的解决办法
- 次日即流失?直播App如何运营超级用户?
- 如何注册一个顶级域名?需要注意哪些事项?
- 用latex写IEEE论文投稿的踩坑笔记
- TPM、TCM分别是什么?
- BI技巧丨目标达成(二)
- vue-iview异步加载渲染树
- IM云通信行业步入快车道,谁将成为代表中国的全球IM“独角兽”?