摘要: [ 'uid' => 695, 'uname' => '王大西' ], 3 => [ 'uid' => 698, 'uname' => '王3西' ], 6 => [ 'uid' => 699, ... 阅读全文
posted @ 2018-05-29 12:58 王大西 阅读(676) 评论(0) 推荐(0) 编辑
摘要: function middle_search($arr, $search){ if (empty($arr) || empty($search)) { return false; } $left = 0; $right = count($arr); $result = null; while ($left $arr[$middl... 阅读全文
posted @ 2018-05-24 17:57 王大西 阅读(83) 评论(0) 推荐(0) 编辑
摘要: nodeId = $nodeId; $this->left = $left; $this->right = $right; } } class ListArr { private $list = null; public function construct() { } //创造一个n长度链表 pu... 阅读全文
posted @ 2018-05-18 18:26 王大西 阅读(216) 评论(0) 推荐(0) 编辑
摘要: setRedis(); } private function setRedis () { if (is_null($this->objRedis)) { $this->objRedis = new Redis(); $this->objRedis->connect("127.0.0.1", 6688); ... 阅读全文
posted @ 2018-04-04 12:42 王大西 阅读(168) 评论(0) 推荐(0) 编辑
摘要: rabbitmq构造rpc 前言 rpc——remote procedure call 远程调用。在我接触的使用过http协议、thrift框架来实现远程调用。其实消息队列rabbitmq也可以实现。 原理 我们称调用远程服务者为Client,远程服务提供者为Server。 Client充当生产者, 阅读全文
posted @ 2017-10-24 12:14 王大西 阅读(1450) 评论(0) 推荐(0) 编辑
摘要: publish and subscribe 前言 前面的例子 我们都是用到的都是消息单一消费,即一条消息被单个消费者消费。像微博系统的消息推送,是一条消息推送给所有订阅到该频道的用户。 这里我们就需要用到rabbitmq的发布与订阅(publish and subscribe) 原理 前面我们弱化r 阅读全文
posted @ 2017-10-20 16:20 王大西 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 消息均发 前言 由前文 RabbitMq初探——消息分发 可知,rabbitmq自带分发机制——消息会按顺序的投放到该队列下的多个消费者,例如1,3,5投放消费者C1,2,4,6投放消费者C2。 这就有个隐含的缺点:每个消息的消费时间可能不一样,极端情况下,投放给C1的每个消息消费都需要很长时间,而 阅读全文
posted @ 2017-10-19 18:27 王大西 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 消息持久化 前言 通过上一节,我们知道,有消息确认机制,保证了当消费者进程挂掉后,消息的不丢失。 但是如果rabbitmq挂掉呢?它的队列和消息都会丢失的。为了保证消息在rabbitmq挂掉重启后不丢失, 我们需要用到rabbitmq的持久化机制。 开启持久化功能 1. 首先保证queue的持久化, 阅读全文
posted @ 2017-10-19 14:58 王大西 阅读(873) 评论(0) 推荐(0) 编辑
摘要: 消息确认机制 前言 消息队列的下游,业务逻辑可能复杂,处理任务可能花费很长时间。若在一条消息到达它的下游,任务刚处理了一半,由于不确定因素,下游的任务处理进程 被kill掉啦,导致任务无法执行完成。而沿用我们前面几章的消息删除【消息一旦抛给下游,就立马从队列删除】,这可能会引发问题——消息没有处理完 阅读全文
posted @ 2017-10-19 11:42 王大西 阅读(3353) 评论(0) 推荐(0) 编辑
摘要: 消息分发 前言 我们在用到消息队列的场景,一般是处理逻辑复杂,耗时,所以将同步改为异步处理,接入队列,下游处理耗时任务。 队列消息数量很大,且下游worker进程(消费者)处理耗时长,所以就有了任务的积压。rabbitmq提供了任务分发的机制。 流程弱化如下图: 可以接入多个消费者,rabbitmq 阅读全文
posted @ 2017-10-18 18:39 王大西 阅读(2000) 评论(0) 推荐(0) 编辑