当前位置: 首页 > article >正文

高性能服务系列【九】内外网之分

这篇文章源于一个关于YARP测试报告,据说HTTP反向代理性能高于传统ngnix高达80%。YARP是微软的一个C#实现的开源项目,实现反向代理核心功能的库。我对此测试结果并不以为然,并不是因为这个项目还未成熟,而是这个结果没有什么意义。

反向代理和网关一样,是内外网的一个重要界面,他们通常运行在传输层之上的应用层。所以,他的性能就会受到两个重要因素的影响,网络IO和应用层编解码性能,比如HTTP这个文本类协议。

受制于互联网带宽的价格,很少听说哪个公司能够提供GB以上的传输速度,能够达到MB级别传输速度,已经算是良心公司。所以,现代高速网络技术的发展,基本都没有覆盖到互联网网关。nginx作为WEB服务和反向代理,还能再战十年,也不是个问题。

作为HTTP的反向代理,YARP和nginx在网络IO这块基本相差无几,都是C10K时代的技术方案,难分伯仲。

nginx作为成熟的技术方案,需要添加更多的功能,比如丰富的插件。这在很大程度上,降低了纯粹的传输性能。如果将这些和反向代理无关的功能去掉,并且只需要解析出HTTP协议头中的URL,对于nginx还会有进一步提高。

nginx作为传统互联网网关,性能优化空间并不大,也没有太大必要,毕竟稳定是头等大事。如果将nginx作为内网的API网关,那么就是另外一个考量,现代网络传输技术,对其有巨大的加成。参考上一篇关于C10M文章。


http://www.kler.cn/a/274015.html

相关文章:

  • 利用Muduo库实现简单且健壮的Echo服务器
  • 一文讲解Spring中应用的设计模式
  • Windows图形界面(GUI)-QT-C/C++ - QT Frame
  • 圆上取点(例题)
  • Maven的三种项目打包方式——pom,jar,war的区别
  • 【爬虫】JS逆向解决某药的商品价格加密
  • 因聚而生 数智有为丨软通动力携子公司鸿湖万联亮相华为中国合作伙伴大会2024
  • 使用ChatGPT高效完成简历制作[中篇3]-有爱AI实战教程(十)
  • 面经(六)武汉超星
  • C++ 字符串转数字的几种方法
  • C++项目中的每个目录、文件,以及build生成的一些文件都是干嘛用的例如 .sln 项目名exe,项目名.pdb,项目名.vcxproj都是干啥的
  • pdf文件属性的删除
  • 【每日力扣】 修剪二叉搜索树与复原 IP 地址
  • linux用git拉取我云端以及git处理冲突
  • 【Redis】基于Redis实现查询缓存
  • IDEA集成Github
  • 蓝桥杯算法基础(13):十大排序算法(希尔排序) (快速排序)c语言版
  • Vue组件通信
  • Python高级语法
  • Spring--拦截器与过滤器
  • 机器人学习书籍
  • Wifi环境下Unity开发iOS应用启动后HTTPS请求未弹出是否允许无线数据使用数据的弹窗
  • C语言 扫雷游戏
  • Python之Web开发中级教程----Django站点管理
  • 【C语言】C语言内存函数
  • 防火墙的原理和配置