V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Actrace
V2EX  ›  程序员

workerman - PHP socket Framework

  •  
  •   Actrace · 2015-07-09 23:43:28 +08:00 · 3237 次点击
    这是一个创建于 3224 天前的主题,其中的信息可能已经有所发展或是发生改变。
    19 条回复    2015-08-10 14:06:51 +08:00
    wkdhf233
        1
    wkdhf233  
       2015-07-09 23:48:41 +08:00
    马克
    Kilerd
        2
    Kilerd  
       2015-07-10 00:05:47 +08:00
    这个框架不是成名好久了吗???
    Actrace
        3
    Actrace  
    OP
       2015-07-10 07:42:18 +08:00 via iPad
    @Kilerd 知道的人不多。
    pein
        4
    pein  
       2015-07-10 09:01:16 +08:00
    swoole比它好多了 具体参照http://rango.swoole.com/archives/334
    Jeremy1992
        5
    Jeremy1992  
       2015-07-10 09:02:13 +08:00
    和swoole类似吗
    sobigfish
        6
    sobigfish  
       2015-07-10 09:24:58 +08:00
    workerman 的蝌蚪貌似在微博上都火了一段时间-。-
    Actrace
        7
    Actrace  
    OP
       2015-07-10 09:27:21 +08:00
    @sobigfish 他这个socket框架封装得不错,只不过libevent库仍未发布稳定版本,所以我不敢用event驱动,之前pthreads库坑了我一整年.
    looyao
        8
    looyao  
       2015-07-10 10:22:01 +08:00
    看到有人推荐swoole,最近在用swoole,默认如果不指定max_task_request,运行几天内存会爆掉,指定了max_task_request,执行一定次数重启task,但是还是有问题,整个server都会莫名的挂掉,swoole版本 是1.7.17。崩溃前日志是`WARN swProcessPool_wait: [Manager]unknow worker`。相关问题也很难找到答案,文档基本也看了好几遍... 也许php真的不适合long time running(主要是内存,垃圾回收这里)
    shuimugan
        9
    shuimugan  
       2015-07-10 11:41:18 +08:00
    对于php多线程和socket这块,我还在观望中...坐等php7出来之后官方来个新的标准库
    mathgl
        10
    mathgl  
       2015-07-10 11:44:23 +08:00
    @looyao 用go吧, 之前也计划想用swoole。后来某些同事测试后建议不推荐。不过具体原因不清楚。
    sampeng
        11
    sampeng  
       2015-07-10 11:47:49 +08:00
    socket干嘛一定要用php。。。这是我最不能理解的。。n种解决方案不用,一定要用一个蹩脚的。
    只是为了满足,我是一个php工程师。这一个titile。。。
    denghongcai
        12
    denghongcai  
       2015-07-10 17:03:46 +08:00
    libevent这么久的东西了哪里没有stable版本,最新的stable 2.0,去年出的
    aliang032
        13
    aliang032  
       2015-07-10 19:45:31 +08:00
    哈哈,这里有个workerman开发的shadowsocks服务端,上面还有免费账号
    https://github.com/walkor/shadowsocks-php
    Actrace
        14
    Actrace  
    OP
       2015-07-10 20:25:49 +08:00   ❤️ 1
    @denghongcai 我用pecl安装的。。提示说没有稳定版本
    denghongcai
        15
    denghongcai  
       2015-07-10 22:36:35 +08:00
    是PHP的libevent的extension还没稳定版,这就是个wrapper,没什么坑的
    looyao
        16
    looyao  
       2015-07-11 11:03:37 +08:00
    @mathgl 当初设想就是使用swoole做数据收集,记录日志,统计,现在看来效果没达到预想,准备还是使用beanstalkd,用队列系统来做。go和python应该是比较好的选择,但是团队基本都只熟悉php,暂时不准备拓展其他语言栈。
    Actrace
        17
    Actrace  
    OP
       2015-07-11 11:12:41 +08:00
    @looyao 多线程其实用pthreads就可以了,现在已经达到实用级别了.
    looyao
        18
    looyao  
       2015-07-11 13:22:45 +08:00
    @Actrace 目前的计划是使用php多进程,pcntl,一个master进程负责创建和监控woker进程,比如master开始创建N个worker进程,worker进程执行固定次数任务后退出(防止内存泄漏,释放资源),master进程监控worker进程状态,当worker进程退出时,重新创建新的worker进程。php多线程还没接触过,有时间看下效果。
    comver
        19
    comver  
       2015-08-10 14:06:51 +08:00
    @aliang032 作者居然出现了!!!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3364 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 12:43 · PVG 20:43 · LAX 05:43 · JFK 08:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.