# Celery 快速入门## 任务队列任务队列用于分发工作给不同线程或机器。Celery通过消息传递支持多个workers和brokers。提供高可用和水平扩展性。用Python写的## 优点* 简单* 高可用* 快* 易扩展## 支持* Brokers * RabbitMQ, Redis ...
分类:
其他好文 时间:
2014-07-07 11:23:15
阅读次数:
566
在开发C++程序时,一般在吞吐量、并发、实时性上有较高的要求。设计C++程序时,总结起来可以从如下几点提高效率:l 并发l 异步l 缓存下面将我平常工作中遇到一些问题例举一二,其设计思想无非以上三点。1任务队列1.1 以生产者-消费者模型设计任务队列 生产者-消费者模型是人们非常熟悉的模型,比如在....
分类:
编程语言 时间:
2014-06-28 11:30:10
阅读次数:
291
Linux下的CPU负载: 指的是一段时间内任务队列的长度,通俗的讲,就是一段时间内一共有多少任务在使用或等待使用CPU。通常通过有3个数值,分别代表1,5,15钟内的平均CPU负载,越小越好。CPU负载与CPU利用率不是同一个概念。虽然CPU负载表示当前系统还有多少个任务等待处理,而CPU利用则....
分类:
系统相关 时间:
2014-06-27 14:00:31
阅读次数:
219
作为一个Celery使用重度用户,看到Celery Best Practices这篇文章,不由得菊花一紧。干脆翻译出来,同时也会加入我们项目中celery的实战经验。通常在使用Django的时候,你可能需要执行一些长时间的后台任务,没准你可能需要使用一些能排序的任务队列,那么Celery将会是一个非常好的选择。当把Celery作为一个任务队列用于很多项目中后,作者积累了一些最佳实践方式,譬如如何用...
分类:
其他好文 时间:
2014-06-26 07:18:06
阅读次数:
274
io_service的作用io_servie实现了一个任务队列,这里的任务就是void(void)的函数。Io_servie最常用的两个接口是post和run,post向任务队列中投递任务,run是执行队列中的任务,直到全部执行完毕,并且run可以被N个线程调用。Io_service是完全线程安全的...
分类:
其他好文 时间:
2014-06-24 10:48:03
阅读次数:
212
线程池实现:
用于执行大量相对短暂的任务
当任务增加的时候能够动态的增加线程池中线程的数量直到达到一个阈值。
当任务执行完毕的时候,能够动态的销毁线程池中的线程
该线程池的实现本质上也是生产者与消费模型的应用。生产者线程向任务队列中添加任务,一旦队列有任务到来,如果有等待线程就唤醒来执行任务,如果没有等待线程并且线程数没有达到阈值,就创建新线程来执行任务。...
分类:
编程语言 时间:
2014-06-05 09:33:14
阅读次数:
262
前言:这里介绍一个python下,比celery更加简单的异步工具,真的是很简单,当然他的功能没有celery多,复杂程度也没有celery大,文档貌似也没有celery多,但是为啥会介绍rq这个东西因为他够简单。当然他虽然简单,但是也是需要中间人的,也就是Broker,这里只能是redis了。他没..
分类:
编程语言 时间:
2014-05-15 09:21:14
阅读次数:
568
eventloop 用作 non-blockingIO 和定时器。threadpool
用来做计算,具体可以是任务队列或消费者-生产者队列任务对列,生产消费者 线程池TaskQueue、Producer-Consumer Queue、
CountDownLatchPTHREAD_MUTEX_ERRO...
分类:
其他好文 时间:
2014-05-08 10:09:52
阅读次数:
241
std::priority_queue
场景:
1. 对于一个任务队列,任务的优先级由任务的priority属性指明,这时候就需要优先级越高的先执行。而queue并没有排序功能,这时priority_queue是比较好的选择.
2 对于异步的task也是一样,在不断添加新的task时,当然希望优先级越高的先执行.
解析:
1. 如果需要把优先级最高的先pop,那么comp比较时需要返回false....
分类:
编程语言 时间:
2014-05-04 09:33:44
阅读次数:
382
需要使用redis来做任务队列,所以花点时间研究下怎么使用...