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

做网站哪个效果好吉林seo技术交流

做网站哪个效果好,吉林seo技术交流,建设银行泰州江洲路支行网站,湖南郴州市地图传统IO模型: 传统IO模型就是阻塞IO,即处理业务逻辑的线程去进行IO,当然IO操作很耗时,然后线程就得阻塞,当然CPU会回收该线程的时间片,把该线程挂起,切换到其他线程去执行,在并发量大…

传统IO模型:

传统IO模型就是阻塞IO,即处理业务逻辑的线程去进行IO,当然IO操作很耗时,然后线程就得阻塞,当然CPU会回收该线程的时间片,把该线程挂起,切换到其他线程去执行,在并发量大的场景中,会造成大量的线程切换,而每一次线程切换都会消耗一定的资源,造成性能低下。

Netty是什么:

Netty是一个基于Java NIO(非阻塞IO)的异步事件驱动的网络应用框架,它提供了高性能、可扩展和易于使用的网络编程接口。

Netty做了件什么事情呢,就是把业务逻辑线程从IO操作中解放出来了,它内部搞了线程池,这个线程池里面的线程专门负责去做IO,但是对外表现出来,业务逻辑线程只要过来就立刻可以拿到它想要的内容而不需要去做IO操作了。

Netty的网络模型基于Reactor模式。首先来看看什么是Reactor模式。

Reactor模式:

Reactor模式是一种基于事件驱动的设计模式,用于处理并发I/O操作。它的核心思想是将I/O操作和事件处理解耦,使得程序能够高效地处理多个并发的I/O请求。

Reactor模式由以下几个关键组件组成:

  1. Reactor:Reactor是事件分发器,负责接收并分发事件,一般只用一个线程足矣。它会监听各种事件,如连接请求、数据到达等,并将事件分发给对应事件处理器进行处理。

  2. Handlers:Handlers是事件处理器,负责实际处理事件,也就是实际去执行IO操作的线程,一般会弄一个线程池。当Reactor将事件分发给Handlers时,Handlers会执行相应的操作,如读取数据、写入数据等。

  3. Event:Event是发生的事件,如连接建立、数据到达等。它会被封装成事件对象,传递给Reactor进行分发。

  4. Event Loop:Event Loop是一个事件循环器,一般也是一个线程足矣。在Event Loop中,这个事件循环线程会不断地监听事件,并将事件分发给对应的事件处理器进行处理。

Reactor模式的工作流程如下:

  1. Reactor监听Event,并等待Event的到达。

  2. 当Event到达时,Reactor将Event封装成事件对象。

  3. Reactor将事件对象分发给对应的Handlers。

  4. Handlers执行相应的IO操作,如读取数据、写入数据等。

  5. 处理完事件后,Handlers将控制权交还给Reactor。

Reactor模式的出现就是为了解决线程处理I/O时的阻塞和频繁线程切换所带来的性能问题。通过避免线程的阻塞和频繁的线程切换,Reactor模式能够有效地提高程序的性能。相比于传统的线程模型,它可以处理更多的并发连接,提高了系统的吞吐量和响应性能。

总结起来,Reactor模式是一种基于事件驱动的设计模式,通过解耦I/O操作和事件处理,使程序能够高效地处理多个并发的I/O请求。它由Reactor、Handlers、Event和Event Loop等组件构成,通过事件分发和处理来实现并发处理。

Netty网络通信模型:

下面是Netty的网络通讯模型概述:

  1. Boss线程池:Boss线程池负责接受客户端的连接请求,并将连接注册到Worker线程池中的某个线程上进行处理。通常情况下,Boss线程池只有一个线程。Boss线程大致对应了Reactor模式中的Reactor。

  2. Worker线程池:Worker线程池负责处理实际的网络I/O操作,包括读取、写入和处理请求等。Worker线程池中可以有多个线程,每个线程都会被分配一个或多个连接进行处理。Worker线程池对应了Reactor模式中的Handlers。

  3. Channel、EventLoop和ChannelPipeline:Netty中的核心概念是Channel、EventLoop和ChannelPipeline。一个Channel代表一个实际的网络连接,EventLoop是一个处理事件的循环,而ChannelPipeline则是一个处理事件的管道。EventLoop对应了Reactor模式中的EventLoop。

  4. 事件驱动模型:Netty的网络模型是基于事件驱动的,当有事件发生时(如连接建立、数据到达等),Netty会将事件封装成事件对象并派发给对应的事件处理器进行处理。事件处理器可以是用户自定义的处理器,也可以是Netty提供的预定义处理器。

  5. 异步和非阻塞:Netty采用异步和非阻塞的方式进行网络操作,这意味着它可以同时处理多个连接,并且不会因为某个连接的慢速操作而阻塞其他连接的处理。

总的来说,Netty的网络模型基于Reactor模式,通过Boss线程池接受连接请求并将连接注册到Worker线程池中的某个线程上进行IO处理。Netty采用异步和非阻塞的方式进行网络操作,通过事件驱动模型和ChannelPipeline来处理网络事件。这种模型使得Netty在高性能、可扩展和易于使用方面具有优势,并广泛应用于构建高性能的网络应用程序。

http://www.hkea.cn/news/756988/

相关文章:

  • 自己做装修网站南宁百度推广seo
  • 品牌建设浅谈seo网络营销外包
  • 昆山网站建设兼职千锋教育的官网
  • cm域名做网站盘古百晋广告营销是干嘛
  • 网站栏目策划企业网络营销方案
  • 网站自动采集指标sem广告投放是做什么的
  • 想做一个个人网站怎么做培训学校
  • 网站开发ipv6升级如何创建自己的小程序
  • 做网站需要备案吗外贸网站推广与优化
  • 独立网站建设流程b站视频推广网站动漫
  • 泰安诚信的网站建设b站推广入口2023年
  • 高校网站建设资料库东莞seo推广公司
  • 电子印章手机在线制作软件四川seo整站优化费用
  • 个人风采网站制作外贸网站平台哪个好
  • 沈阳企业建站谷歌推广和seo
  • .la域名做的网站如何快速推广app
  • 广州优化网站建设怎么用手机制作网站
  • 做微网站的第三方学网络营销
  • 湖南做网站的公司有哪些搜索引擎是什么
  • flash网站管理系统seo优化排名易下拉用法
  • 永年网站建设友链互换平台推荐
  • 企业网站的设计公司网络广告营销的典型案例
  • 高校思政主题网站建设的意义关键词歌词任然
  • 哪里做网站比较快2345网址导航下载桌面
  • 广州建设委员会官方网站凡科建站下载
  • 全球做网站的公司排名百度一下你就知道官网
  • 小企业网站价格免费发链接的网站
  • 买了空间和域名 怎么做网站哪家公司网站做得好
  • 网站备案是否关闭衡阳网站建设公司
  • 遂昌建设局网站个人怎么做网站