room10寂静岭 我昨天去体验40分钟通关 有需要攻略的吗

痞阿四 痞阿四
回答
  • 教育资源共享 教育资源共享

    消息队列beanstalk详解
    先从安装开始
    githubhttps://github.com/kr/beanstalkd
    cd beanstalkd-1.10
    make 或者 make cflags=-o2
    注意,你不需要运行configure命令哦,因为对应的makefie已经是建立好了的。make之后在当前目录下生成了beanstalkd可执行程序,你也可以make install一下让它安装到/usr/local/bin中,或者你自己拷贝到一个自定义目录中即可。beanstalkd-huse:./beanstalkd[options]options:-b dir wal directory-f ms fsync at most once every ms mill**econds(use-f0 for"always fsync")-f never fsync(default)-l addr l**ten on address(default ** 0.0.0.0)-p port l**ten on port(default ** 11300)-u user become user and group-z bytes set the maximum job size in bytes(default ** 65535)-s bytes set the size of each wal file(default ** 10485760)(will be rounded up to a multiple of 512 bytes)-c compact the binlog(default)-n do not compact the binlog-v show version **rmation-v increase verbosity-h show th** help#b 设置二进制日志文件目录,beanstalk支持把任务写入日志文件,便于恢复#l 设置**地址#p 设置**端口#v 查看版本#启动 不指定任何参数,表示在0.0.0.0 端口11300**./beanstalkd&./beanstalkd-l 127.0.0.1 11301&./beanstalkd-l 192.168.1.168 11302&在实际中应该监控这个进程,防止意外终止退出。为了更好理解beanstalk的原理,建议阅读官方文档:github.com/kr/beanstalkd/blob/master/doc/protocol.md,以下是我个人的学习笔记:当put一个job时,取决于是否设置了delay,job可能进入ready或delayed状态,delayed的job超时后(或者调用kick)变成ready,reserve命令取一个最新的ready的job并把其变为reserved状态(这个时候是被取出执行),reserved状态的job可以发送delete删除,也可以使用release释放,根据是否设置delay时间,可能变成ready或delayed状态,也可以调用bury命令让job进入休眠,休眠中的job可以被delete也可以用kick命令让其变为ready。当reserve一个ready状态的job去执行时,如果设置的运行超时时间,则在取出时开始计时,如果超时则会从新放回到ready队列。job的运行的剩余时间可以通过stats-job命令来查看。如果要分配更多时间给job,可以发送touch命令。命令reserve取job时,这个job可能来自任一tube(当前链接的watch l**t是多个时),默认,一个新链接watch一个叫default的tube。可以使用watch命令添加一个新的tube到watch l**t中(如果这样,一般就不要试图使用tube的名字来区分要执行的任务,比如有两个tube a和b,当reserve取job时,这个job可能来自a也可以来自b,不过前提是a和b都在watch l**t中)。如果要取指定tube的job,明确使用use即可,这样只会获取指定tube的job。可以在消费方建立新链接后,watch某个tube以期望获取它的job(也可以使用use只获取特定tube的job)。同样道理,要put某个job都某个tub,需要先使用use命令,否则就是put到默认的叫default的tube中。reserve命令只是取状态为ready的job,如果要去其它状态的job,则需要使用peek和peek-xxxx命令(peek-ready peek-delayed peek-buried)。job取出后根据它的状态可以做相应操作,比如delete release bury kick。php框架phalcon中提供对beanstalk的客户端库:/connect to the queue$queue=new phalcon\queue\beanstalk(array('host'=>'127.0.0.1','port'=>11300));链接到beanstalk只有两个参数,并没有验证等信息,以上指定的就是默认值。beanstalk是支持多host的,phalcon\queue\beanstalk看来并没有实现这个。在调用put执行,应该首先调用choose()方法指定tube,否则就是使用default这个tube。(这个所谓的choose实际就是发送use命令)然后再调用put把job添加到你期望的tube中:1$qid=$queue->put("queue **");注意,put成功就返回job的标识符。以下展示一个完整的例子:$queue=new phalcon\queue\beanstalk(array('host'=>'127.0.0.1','port'=>11300));queue->choose("my_tube");for($i=0;i;i+){$qid=$queue->put("my tube-queue meaage$i");echo$qid."\n;}$queue->choose("default");for($i=0;i;i+){$qid=$queue->put("default tube-queue meaage$i");echo$qid."\n;} 切换到消费端,首先要使用choose()来获取来自哪个tube的job(按照道理应该是调用watch()方法,但是实际测试,watch()没有起作用,只好换成choose指定特定tube),然后调用peekready()获取一个phalcon\queue\beanstalk\job对象,当然如果失败就返回false,job对象获取后,可以操作自然就有delete()release()bury()touch()kick()和 getbody(),其中getbody()获取job的实际内容。queue=new phalcon\queue\beanstalk();queue->watch("my_tube");queue->choose("my_tube");while(true){ if(($job=$queue->peekready())!false){$**=$job->getbody();echo$**."\n;job->delete();}else{ usleep(200000);}} phalcon\queue\beanstalk提供了beanstalk协议的大部分内容,但是状态相关的没有实现。为了详细查看beanstalk,可以使用一个第三方的php程序(github.com/ptrofimov/beanstalk_console):

类似问答
  • 求寂静岭3全攻略!!!急!!

    提问时间:2024-04-30 20:26:08

    寂静岭3全攻略:开始;这里是哪儿?为什么到处都这么黑暗?我环顾了一下四周,发现了几具尸体。现在我唯一想做的事就是尽快离开这里,我进了左边的门,发现了两只怪物,虽...

  • 寂静岭起源攻略

    提问时间:2024-04-30 17:19:38

    以前我也卡过。楼上说的没错先左边从上到下的第3个然后右边从上往下的第4个然后左边第一个,最后右边第一个就是这样啊

  • 寂静岭的详细攻略

    提问时间:2024-04-30 03:13:44

    开篇主角在路上看到了一个穿蓝衣服的女孩然后跟随她来到了寂静岭,过场看到艾丽莎家里着火了,一个女人在墙角看了看就不见了。开始进入火场找到奇怪符号中间严重烧伤的女孩...

  • **寂静岭攻略

    提问时间:2024-04-30 14:42:34

    ben在起点房间拿地图,进前面房间右边有个柜子,取得指南针,出来往前走,去餐厅在台上取蜡烛.上二楼第一个卧室柜子最下层有火机,上面还有**和药,再去洗手间第一格...

  • 求静寂岭之密室的攻略?

    提问时间:2024-04-30 16:37:50

    地下鉄开场cg之后到处逛逛然后发生情节。主角约瑟夫从梦中醒来。接过电话后,出门走到客厅。对门是厕所,如果你不急就先走到客厅。沙发旁边的红色记事本就是记录点。书架...

  • 寂静岭2 医院攻略

    提问时间:2024-04-30 14:53:09

    到三楼电梯旁的淋浴室(shower room),将勾子与头发合并使用,就能勾起电梯的钥匙。注意:物品的组合使用方法是,选中物品1后,使用菜单里的combine组...

  • 求寂静岭2攻略

    提问时间:2024-04-30 02:38:45

    james在镜子前,摸摸自己的脸,自问道:“mary,你真的在这里吗?走出公厕,在栏杆边回想这一切:“我收到了一封mary的来信,上面写着,‘在我永不停止的梦中...

  • 关于wii的寂静岭7

    提问时间:2024-04-30 09:22:19

    7**.哪来的7,寂静岭1234之后是origin,homecoming,和去年年底刚出的wii上的shattered memories.要说7也是去年年底的那...

  • 寂静岭5里的时钟怎么调?

    提问时间:2024-04-30 04:14:21

    我感觉真正的时间,不需要调,只需要真正的胡乱一点,点对了,马上去那个时间上,然后嘎巴一声,钟表开了,我是在12点整的时间点上,调成了1:10分,马上就开了,这次...

  • 寂静岭pt到底怎么通关

    提问时间:2024-04-30 00:32:36

    这个比较长的,你可以去视频搜索攻略。希望对你有帮助,蟹蟹

精品推荐

友情链接

友链互换QQ:

谷财 备案编号:蜀ICP备11019336号-3商务合作:235-677-2621

Copyright 2009-2020 Chengdu Sanzilewan Technology Co.,Ltd all rights reserve

抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当 适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活