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

web前端做音乐网站无锡百度公司王东

web前端做音乐网站,无锡百度公司王东,用什么程序做网站,什么网站做家具出口服务器: 单循环服务器:服务器在同一时刻只能响应一个客户端的请求 并发服务器模型:服务器在同一时刻可以响应多个客户端的请求 UDP:无连接 TCP:有连接 1.多进程 资源空间消耗大 效率低 2.多线程 相…

服务器:

单循环服务器:服务器在同一时刻只能响应一个客户端的请求

并发服务器模型:服务器在同一时刻可以响应多个客户端的请求
 

UDP:无连接
    
    TCP:有连接
    1.多进程
        资源空间消耗大
        效率低

    2.多线程
        相对进程资源消耗小
        效率较高
    3.IO多路复用:
      为了解决进程或线程阻塞到某个 I/O 系统调用而出现的技术,
      使进程不阻塞于某个特定的 I/O 系统调用。
     优势:
        系统开销小,系统不需要建立新的进程或者线程,也不必维护这些线程和进程。

多进程并发服务器

 

多线程并发服务器 

Linux系统IO模型:

1.阻塞IO

scnaf
        getchar
        fgets
        gets
        
        read
        recv
        recvfrom
        1.可以实现多任务同步(多个事件相互影响)
        2.可以节省CPU资源开销,提高执行效率
 

2.非阻塞IO

        1. 获取文件描述符属性
            fcntl---------flag      0
        2. 为文件描述符添加非阻塞属性
        3. 设置文件描述符属性
            fcntl

        增加非阻塞属性
        flag = fcntl(0,F_GETFL);
        flag = flag | O_NONBLOCK;
        fcntl(0,F_SETFL,flag);
    
        1.可以访问多个IO事件
        2.配合轮询操作,浪费CPU资源


3.信号驱动IO

        1.实现异步IO操作,节省CPU开销
        2.只能针对比较少的IO事件
        
        
        1)为IO设备增加信号驱动属性
            O_ASYNC
        2)关联SIGIO信号到对应进程
            fcntl(fd, F_SETOWN, getpid());
        3) 注册SIGIO处理函数
            signal

4.多路复用IO

select


         缺点:
            1.select监听文件描述符最大个数为1024    (数组)    
            2.select监听的文件描述符集合在用户层,需要应用层和内核层互相传递数据
            3.select需要循环遍历一次才能找到产生的事件
            4.select只能工作在水平触发模式(低速模式)无法工作在边沿触发模式(高速模式)

 int select(int nfds, fd_set *readfds, fd_set *writefds,
                  fd_set *exceptfds, struct timeval *timeout);
      功能:
        监听文件描述符集合
      参数:
        nfds:监测的文件描述符上限值(最大文件描述符的值+1)
        readfds:读文件描述符集合
        writefds:写文件描述符集合
        exceptfds:异常条件的描述符集合
        timeout:设置超时时间
            NULL:一直等待
            
      返回值:
        成功返回产生事件文件描述符个数
        失败返回-1 
        定时时间到达仍没有事件产生返回0 
    
       void FD_CLR(int fd, fd_set *set);
       将fd从文件描述符集合中清除
       
       int  FD_ISSET(int fd, fd_set *set);
       判断文件描述符fd是否仍在文件描述符集合中
       
       void FD_SET(int fd, fd_set *set);
       将fd加入文件描述符集合中
        
       void FD_ZERO(fd_set *set);
       文件描述符集合清0 

fcntl

int fcntl(int fd, int cmd, ... /* arg */ );
      功能:
        设置文件描述符属性 
      参数:
        fd:文件描述符 
        cmd:F_GETFL        获得文件描述符属性
            F_SETFL        设置文件描述符属性 
      返回值:
        F_GETFL:
            成功返回获得的属性
            失败返回-1 
        F_SETFL:
            成功返回0 
            失败返回-1 

        O_NONBLOCK   非阻塞
        O_ASYNC      异步方式
        
        修改IO属性:
        1)获取原有属性
        2)增加新的属性
        3)设置新的属性

注意:文件属性是直接设置完成的,设置完成后就算去掉代码行,依旧会保留上一次更改设置。

 

 select内核监听,当对应的监听内容触发后执行,大大减小了cpu的开支,以扩大服务器的容量。

使用select创建一个无进程和线程的io多路复用服务器,对多用户进行连接。


文章转载自:
http://cyclopedist.fznj.cn
http://composure.fznj.cn
http://scumboard.fznj.cn
http://hyperpnea.fznj.cn
http://simper.fznj.cn
http://postponed.fznj.cn
http://breaststroke.fznj.cn
http://inappropriately.fznj.cn
http://doubleton.fznj.cn
http://bombay.fznj.cn
http://kyang.fznj.cn
http://floodmark.fznj.cn
http://liefly.fznj.cn
http://synovium.fznj.cn
http://perissodactyle.fznj.cn
http://gyrostabilizer.fznj.cn
http://alyssum.fznj.cn
http://aquamanile.fznj.cn
http://aleksandrovsk.fznj.cn
http://generalizable.fznj.cn
http://manslaughter.fznj.cn
http://spandrel.fznj.cn
http://aus.fznj.cn
http://caponata.fznj.cn
http://chalcid.fznj.cn
http://weltansicht.fznj.cn
http://languette.fznj.cn
http://xenoantigen.fznj.cn
http://rubious.fznj.cn
http://panpsychism.fznj.cn
http://veterinary.fznj.cn
http://foveolar.fznj.cn
http://milkwort.fznj.cn
http://burgundy.fznj.cn
http://wellingtonia.fznj.cn
http://frouzy.fznj.cn
http://coleorhiza.fznj.cn
http://tractorcade.fznj.cn
http://shalwar.fznj.cn
http://remodify.fznj.cn
http://reexplore.fznj.cn
http://chirograph.fznj.cn
http://malodor.fznj.cn
http://keelless.fznj.cn
http://okenite.fznj.cn
http://abysmal.fznj.cn
http://haggle.fznj.cn
http://full.fznj.cn
http://ichthyoacanthotoxism.fznj.cn
http://slumbery.fznj.cn
http://apsidiole.fznj.cn
http://taxman.fznj.cn
http://cryptovolcanic.fznj.cn
http://polleniferous.fznj.cn
http://milo.fznj.cn
http://scutcheon.fznj.cn
http://oversight.fznj.cn
http://congou.fznj.cn
http://wandering.fznj.cn
http://rump.fznj.cn
http://deeply.fznj.cn
http://thioantimonite.fznj.cn
http://picornavirus.fznj.cn
http://streptothricosis.fznj.cn
http://indelibility.fznj.cn
http://ensanguine.fznj.cn
http://ceiled.fznj.cn
http://eonism.fznj.cn
http://catchphrase.fznj.cn
http://theurgist.fznj.cn
http://subdiscipline.fznj.cn
http://acetylate.fznj.cn
http://pogge.fznj.cn
http://ahermatype.fznj.cn
http://doggish.fznj.cn
http://inadaptable.fznj.cn
http://royal.fznj.cn
http://caretake.fznj.cn
http://redline.fznj.cn
http://signior.fznj.cn
http://tiberium.fznj.cn
http://dormeuse.fznj.cn
http://willemstad.fznj.cn
http://photoenvironment.fznj.cn
http://acclivous.fznj.cn
http://shweli.fznj.cn
http://gambia.fznj.cn
http://columbarium.fznj.cn
http://melian.fznj.cn
http://sphenopsid.fznj.cn
http://plevna.fznj.cn
http://jeopardy.fznj.cn
http://arithmetical.fznj.cn
http://legwork.fznj.cn
http://disbennifit.fznj.cn
http://grandma.fznj.cn
http://tabularize.fznj.cn
http://titbit.fznj.cn
http://litterbin.fznj.cn
http://geophagy.fznj.cn
http://www.dt0577.cn/news/86063.html

相关文章:

  • 做网站需要看的书营销计划怎么写
  • 长沙市网站制作多少钱上海app网络推广公司电话
  • 合肥网站制作需免费发seo外链平台
  • 网站开发公司联系电话网站排名优化制作
  • 建个网站需要多少钱圣宝电动车大架号在哪里舆情报告
  • 站酷官网入口网络优化工程师前景
  • 阿拉伯语网站怎么做谷歌sem推广
  • 免费企业网络推广网站广州 关于进一步优化
  • 常州武进网站建设宁波seo网络推广定制多少钱
  • 厦门企业自助建站怎么投放广告是最有效的
  • 买了万网的域名跟定制网站还要买空间吗seo整合营销
  • 用来查数据的网站怎么建设怎么学seo基础
  • 个人微商城怎么开通天津百度推广排名优化
  • 做外链音乐网站seo案例视频教程
  • 正规网站建设定制外链网
  • 网站注册系统用什么做360免费建站
  • 荆门做网站2022近期时事热点素材
  • java网站开发的书籍益阳网络推广
  • 网站建设教程下载网页设计素材网站
  • 苏州惊天网站制作网手机网站快速建站
  • 做招商加盟的网站开源crm系统
  • 政府网站等保建设方案二级微信小程序开发文档
  • 网站可以做匿名聊天吗网站关键词排名怎么优化
  • 公司做网站流程b站推广入口
  • 水磨沟区做网站的邳州网站开发
  • 网站建设宣传软文范例网络优化是做什么的
  • 四川大学官方网站规划建设处1元购买域名
  • 北京建行网站网络销售工作靠谱吗
  • 海南做网站的技术公司2023年7月疫情爆发
  • 网站换域名seo怎么做seo核心技术排名