V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
wudikua
V2EX  ›  Linux

哪位大神能帮我看看我写的这个server 为什么用ab test 有50并发的时候就卡住不能用了呢。

  •  
  •   wudikua · 2013-02-04 18:01:24 +08:00 · 2939 次点击
    这是一个创建于 4113 天前的主题,其中的信息可能已经有所发展或是发生改变。
    传送门:https://github.com/wudikua/learning/blob/master/server.c
    4 条回复    1970-01-01 08:00:00 +08:00
    apple601601601
        1
    apple601601601  
       2013-02-04 21:22:17 +08:00   ❤️ 1
    抱歉帮不了你。。不过想问问你是在跟着某个在线课程做的练习么?能分享下不?也想学些C的网络编程。。
    wudikua
        2
    wudikua  
    OP
       2013-02-04 21:25:50 +08:00
    @apple601601601 没有啊。。。就是看看资料,照猫画虎。
    wudikua
        3
    wudikua  
    OP
       2013-02-06 11:05:24 +08:00
    哦~我知道什么问题了,accept应该用while包起来,因为同一时刻有可能来多个连接,epoll_wait返回只是说明有连接,ET模式下,不会因为上次的连接没读完再次返回。
    aoyoo
        4
    aoyoo  
       2013-02-06 11:58:41 +08:00
    @wudikua 的确是这个原因,还有和需要注意的,accept返回-1的时候,如果errno是EINTR,是正常情况,还需要继续accept
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1134 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 574ms · UTC 18:47 · PVG 02:47 · LAX 11:47 · JFK 14:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.