当前位置: 首页 > 网络应用技术

Netty系列:价值数亿个网站的网站的价值优化解决方案

时间:2023-03-06 16:51:06 网络应用技术

  实际上,软件行业中最有利可图的不是编写代码。那些编写代码的人只能称为Malone。高级点称为程序员。他们都在努力工作。所以有高职业吗?这必须可用。他们的名字称为顾问。

  顾问将帮助企业建立解决方案,体系结构和优化。有时,简单的代码更改和架构的调整可以使软件或流程更有效地运行,从而为企业节省了数亿美元的费用。

  除了向您介绍如何同时支持HTTP和HTTPS协议的网站数据优化解决方案,值得数亿个网站。有了这个解决方案,每年的薪水数百万不是梦想!

  本文将向您介绍如何在Netty服务中同时支持HTTP和HTTP2协议。在这两个服务器中,我们为多个图片提供访问支持。我们介绍了如何从服务器返回多个图片。我介绍了价值数亿美元的速度优化计划,每个人都会受益匪浅。

  对于服务器端,通过ServerBootStrap激活服务。ServerBootstrap具有一个组方法,可以指定组和客户端的访问者组。

  当然,您可以指定两个不同的组,也可以指定同一组,该组提供了两种组方法,这与效果没有太大不同。

  现在,我们在主服务器中创建一个EventloopGroup,然后将其传递到ImageHTTP1Server和ImageHTTP2Server中。然后在两个服务器中调用组方法,然后配置处理程序。

  看看ImageHTTP1Server的结构:

  我们已经介绍了HTTPRequestDecoder,Httpresponseencoder和httpobjectAggregator.。

  看看ImageHTTP2Server的结构:

  为简单起见,如果我们默认访问HTTP,我们使用HTTP1服务。如果从HTTPS访问,请使用HTTP2服务。

  因此,在HTTP2服务中,我们只需要在不处理清晰文本升级请求的情况下自定义协议Negotiandler即可。

  在TLS环境中,我们通过自定义的CustProtocolnegotiandler继承了从Application Protococolnegotionhandler继承客户端和服务器的协议,并继承了客户端和服务器侧协议。

  对于HTTP2协议,使用InboundHttp2TohtoHtoHtoHtpAdapterBuilder和HttptppoHTTP2 ConnectInecerBuder将HTTP2框架转换为HTTP1的FullHTTTPRequest对象。

  转换过程如下:

  转换转换的HTTP2处理程序与普通HTTP1之间的唯一区别在于,需要附加的流属性来将额外的流设置为请求标头和响应标头。

  无需处理HTTP1独有的100个智能和守护力。他人与HTTP1处理程序没有什么不同。

  因为我们使用转换器将HTTP2的帧转换为HTTP1的公共对象,对于请求的相应页面和图像,它与HTTP1的处理没有什么不同。

  对于该页面,我们需要返回HTML,然后将Content_Type设置为“ text/html; charset = utf-8”,然后返回到:

  对于图像,我们将图像返回,将其转换为bytebuf,然后将Content_Type设置为“ Image/jpeg”,然后返回到:

  这样,我们可以同时处理Netty服务器的页面请求和图片请求。

  最后,本文中最令人兴奋的部分是,速度优化解决方案价值数亿美元?

  在谈论这个计划之前,让我告诉您一个抗洪的故事。两个县生活在一条大河旁边。这条大河非常不安,常常会造成洪水,但两个县的县却大不相同。

  该县A的县治安法官承担了严重的责任,并派某人定期巡逻河道。路堤,种植树木和检查放松了一会儿。在他的任期内,没有洪水崩溃。

  B县的县负责人从未检查过。当河流被洪水淹没时,B郡的负责人组织了人们与洪水救援作斗争。然后,媒体报告了B县B的所有重大成就。市长B因其出色的政治成就而被晋升为市长。

  好吧,故事已经结束,接下来是我们的优化。无论是用户请求页面还是图片,您都需要调用ctx.writeandflush(响应)方法进行响应。

  如果您将其放在定期执行的定时任务中,如下所示:

  然后,服务器将在延时指定的毫秒之后发送相应的响应。例如,在这里,我们将延迟值设置为5秒。

  当然,5秒钟不能令人满意,因此领导者或客户会找到您并说您将优化它。领袖说是的,卷起袖子,振作起来,下个月给您50%的薪水。

  一个月后,您将latender更改为2.5秒,并且性能提高了100%。这种优化价值价值数亿美元吗?

  当然,上一节开玩笑了,但是Netty响应中的时序任务的使用也应该牢固地掌握它,为什么您会理解!

  本文的示例可以参考:Learn-netty4

  本文已包含在http://www.flydean.com/34- netty-multiple- server/

  最受欢迎的解释,最深的干货,最简单的教程,您不知道的许多技巧正在等待您发现!

  欢迎注意我的公共帐户:“程序的事情”,了解技术并更好地了解您!