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

做网站自己租服务器还是网络公司网站开发的标准

做网站自己租服务器还是网络公司,网站开发的标准,大型旅游网站源码 织梦 2016,网站创建的流程是什么【go基础】16.I/O模型与网络轮询器netpoller_go中的多路io复用模型-CSDN博客 字节开源的netPoll多路复用器源码解析-CSDN博客 一、几种常见的IO模型 1. 阻塞I/O (1) 解释#xff1a; 用户调用如accept、read等系统调用#xff0c;向内核发起I/O请求后#xff0c;应用程序…【go基础】16.I/O模型与网络轮询器netpoller_go中的多路io复用模型-CSDN博客 字节开源的netPoll多路复用器源码解析-CSDN博客 一、几种常见的IO模型 1. 阻塞I/O (1) 解释 用户调用如accept、read等系统调用向内核发起I/O请求后应用程序会从用户态陷入内核态。 内核会检查文件描述符fd是否就绪如果没有数据准备就绪内核就会挂起(阻塞)当前的线程。 当fd中数据就绪后操作系统内核会将数据从内核空间拷贝到进程空间并交回控制权。 (2) 缺点 一个goroutine同一时刻只能处理一个流无法解决多个IO请求问题 2. 非阻塞I/O (1) 解释 执行read和write 等I/O操作会立刻返回然后应用程序不停轮询。读取时如果没有数据会返回 EAGAIN或EWOULDBLOCK错误码。 (2) 缺点 占用cpu资源不停做无用的轮询操作 3.  I/O多路复用模型 (1) 解释 一个进程/线程处理多个I/O内核同时监视多个文件描述符一旦某个描述符就绪通知程序进行相应的读写操作如果没有文件句柄就绪就阻塞应用程序交出CPU。 (2) 缺点无基本符合需求。 4. 三种IO模型对比 目前epoll是linux大规模并发网络应用程序的首选。 大部分高性能的网络服务器使用的I/O复用模型均是epoll比如nginx、redis、memcached等。 二、几种常见的IO模型 使用方法  以下模型的 IO 操作都是 使用阻塞的机制。 1、多线程 (1) 解释 每accept到一个客户端后都启动一个新的线程。存在多个线程。 (2) 优点 简单。 (3) 缺点 a. 占用内存资源每个线程需要2M的栈空间需要的线程很多且频繁切换。 b. 长连接需要保持连接状态(心跳/健康检查)进一步占用资源。 2、单线程 多路IO复用 (1) 解释 一个线程 处理多个客户端。采用多路I/O复用机制(epoll) 监控多个fd的IO请求。 多个请求是依次执行的fd1的请求完成了才去处理fd2的请求。 (2) 优点 只需要一个线程节省资源。 (3) 缺点同一时间只能处理一个客户端操作会有排队延迟 3、单线程 多路IO复用 多线程处理业务 (1) 解释 把逻辑任务分离到另外的线程池。 创建专门用于处理逻辑业务的线程池。 当有客户端消息到达主线程完成io读操作后将后续逻辑业务放入线程池的一个线程中执行主线程继续监控IO请求。当线程执行完逻辑业务之后将结果消息返回主线程主线再发送给客户端。 (2) 优点 将业务放到线程处理减轻排队延迟。 (3) 缺点IO 读写数据时的并发能力依然是1 4、单线程(只监听) 多路IO复用 多线程处理业务和IO读写 (1) 解释 在3的基础上让线程池把 IO读写 和 业务 都处理了。 主线程只负责用来创建fd每个线程负责监听多个客户端读写操作以及后续逻辑业务。 使用例子 GO语言的 原生net 和 netpoll 采用的是这个模式。 (2) 优点  a. 可以监听更多的fd提升io读写的并发能力 b. 充分利用多核CPU (3) 缺点同一个线程内的多个客户端依然是排队的 三、Netpoll与原生GoNet对比 1. 触发方式 Go Net使用 边缘触发。只有一个Epoll事件循环高并发时压力大。但消息包很大时需要内存少。 NetPoll使用 水平触发。支持多个事件高并发效果更好。但消息包很大时需要更多的内存。 2. Goroutine数目 Go Net一个Goroutine下只有一个连接。 NetPoll一个Goroutine下有多个连接。 3. 是否支持共用buff池少拷贝一次数据。 Go Net不支持。 NetPoll支持。管理一个Buffer池直接交给用户少拷贝一次。 四、边缘触发和水平触发的区别 1. 水平触发(LT) 若就绪的事件一次没有处理完就会将没有处理完的事件继续放回到就绪队列之中下一次可继续触发事件。 必须使用非阻塞模式。因为水平触发模式会将文件描述符一直读到返回 errno或EAGAIN非阻塞模式下才会返回这个。 而阻塞模式下不会返回这个所以会一直阻塞卡死。 2. 边缘触发(ET)就绪的事件只能处理一次需要一次过把数据读完。 若没有处理完会在下次的其它事件就绪时再进行处理。 而若以后再也没有就绪的事件剩余的那部分数据也会丢失。
http://www.hkea.cn/news/14468846/

相关文章:

  • wordpress双语站点app软件定制平台
  • 建设银行培训网站管理人员课程培训
  • 中国最火的网站网站制作的大公司
  • 百度收录好的免费网站ico网站建设
  • 广州省建设厅官方网站黄冈网站建设公司制作网站
  • 县市区没有建设信用网站和平台上海南京东路网站建设
  • 单位做网站有哪些html5网站是用什么软件做的吗
  • 汽车网站建设费用做网站后端的是什么部门
  • 小白如何做网站中国十大猎头公司
  • 杭州市住房与城乡建设部网站电子商务网站建设基本流程
  • 网站商城注意事项网站左悬浮代码
  • 织梦cms怎么更改网站的路径本机网络ip做网站
  • wordpress 数据库填写梅州百度seo公司
  • 小学网站建设及使用智能模板网站建设哪家好
  • php怎么做多个网站6人小组logo设计
  • 网站建设提供的网站资料大连网络公司联系方式
  • 萧山区网站建设曲靖网站设计
  • 潍坊网站搜索引擎优化在家帮别人做网站赚钱
  • 网站上的vR场景贴图怎么做的网站建设方案怎么做
  • 网站建设所面临的问题做网站一年的维护费用是多少
  • 网站的专区怎么建设原创软文
  • 乐都网站建设多少钱做招聘网站还有法盈利吗
  • 广西钦州网站建设线上平台名称大全
  • 迷失传奇网站naocq网站关键字搜索功能
  • 网站页面开发流程如果创建网站
  • 企业站seo报价安徽网站建设认准-晨飞网络
  • 正规的丹阳网站建设网站怎么做来流量吗
  • 做网站还需要买空间吗wordpress改主题幻灯片尺寸
  • 做音乐网站需要什么城阳网站建设公司电话
  • 长春专业网站制作公司温州网站建设及推广