摘要: JS版 / e 表示长度,默认32位 / function randomString(e) { e = e || 32; var t = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678", a = t.length, n = ""; for (i 阅读全文
posted @ 2017-10-11 15:33 hopher 阅读(7845) 评论(0) 推荐(0) 编辑
摘要: ``` /** * Fibonacci */ function fib($n) { if ($n == 0) return 0; if ($n == 1) return 1; return fib($n-1) + fib($n-2); } ``` 阅读全文
posted @ 2017-10-11 14:37 hopher 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 幂等性是系统的接口对外一种承诺(而不是实现), 承诺只要调用接口成功, 外部多次调用对系统的影响是一致的. 声明为幂等的接口会认为外部调用失败是常态, 并且失败之后必然会有重试. http://www.cnblogs.com/dingcee/p/5047752.html 阅读全文
posted @ 2017-10-11 11:52 hopher 阅读(165) 评论(0) 推荐(0) 编辑
摘要: https://www.zhihu.com/question/23232384 阅读全文
posted @ 2017-10-11 10:24 hopher 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 什么是RPC? RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。 为什么RPC呢?就是无法在一个进程内,甚至一个计算机内通过本地调用的方式完成的需求, 阅读全文
posted @ 2017-10-10 16:14 hopher 阅读(192) 评论(0) 推荐(0) 编辑
摘要: TODO... 阅读全文
posted @ 2017-10-10 16:13 hopher 阅读(111) 评论(0) 推荐(0) 编辑
摘要: TODO.... 阅读全文
posted @ 2017-10-10 16:12 hopher 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 发布/订阅 分发一个消息给多个消费者(consumers)。这种模式被称为“发布/订阅”。 为了描述这种模式,我们将会构建一个简单的日志系统。它包括两个程序——第一个程序负责发送日志消息,第二个程序负责获取消息并输出内容。 在我们的这个日志系统中,所有正在运行的接收方程序都会接受消息。我们用其中一个 阅读全文
posted @ 2017-10-10 15:52 hopher 阅读(190) 评论(0) 推荐(0) 编辑
摘要: what is virtual_host vhost是rabbitmq分配权限的最小细粒度。比如我们可以为一个用户分配一个可以访问哪个或者哪一些vhost的权限。 但是不能为用户分配一个可以访问哪一些exchange,或者queue的权限,因为rabbitmq的权限细粒度没有细化到交换器和队列,他的 阅读全文
posted @ 2017-10-10 11:31 hopher 阅读(8906) 评论(0) 推荐(0) 编辑
摘要: 工作队列 工作队列(Work Queue),它会发送一些耗时的任务给多个工作者(Worker)。 工作队列(又称:任务队列——Task Queues)是为了避免等待一些占用大量资源、时间的操作。当我们把任务(Task)当作消息发送到队列中,一个运行在后台的工作者(worker)进程就会取出任务然后处 阅读全文
posted @ 2017-10-10 11:11 hopher 阅读(261) 评论(0) 推荐(0) 编辑