Tiếng Trung hồ sơ|English Docs
- So scrapy càng linh hoạt, so celery càng dễ dàng thượng thủ phân bố thức loài bò sát dàn giáo. Dùng ít nhất số hiệu, dùng đơn giản nhất phương thức, làm nhiều nhất sự tình
- 1 phút nội có thể thuần thục vận dụng nên dàn giáo bò lấy số liệu, không cần học tập phức tạp hồ sơ. Nhẹ nhàng mở rộng các loại trung gian kiện
Đặc sắc thuyết minh:
Duy trì nhiều trung gian kiện:
Duy trì reids kafka sqlite memory bốn loại trung gian kiện ( đầu đẩy redis, duy trì phê lượng tuyên bố nhiệm vụ, phân bố thức tiêu phí nhanh như tia chớp )
Đồng phát duy trì:
Duy trì process threading gevent ba loại đồng phát tiêu phí hình thức ( nhưng hỗn hợp sử dụng )
Khống tần hạn lưu:
Chính xác khống chế 1 giây vận hành bao nhiêu lần hàm số
Nhiệm vụ đi trọng:
Nếu lặp lại đẩy đưa tiêu phí thành công nhiệm vụ, tự động lọc rớt nên nhiệm vụ
Tiêu phí xác nhận:
Bắt đầu dùng tiêu phí xác nhận, tiêu phí nhiệm vụ đãng cơ tay động ngưng hẳn tình huống, nhiệm vụ sẽ không mất đi
Trọng thí số lần:
Đương hàm số vận hành làm lỗi, sẽ lập tức trọng thí chỉ định số lần, đạt tới lớn nhất thứ trọng thí số người kế nhiệm vụ sẽ tiến vào thư không địa chỉ đội ngũ
Nhiệm vụ quá thời hạn cơ chế:
Nếu giả thiết nào đó nhiệm vụ quá thời hạn thời gian, nhiệm vụ vượt qua giả thiết quá thời hạn thời gian còn chưa tiêu phí, tắc sẽ tự động vứt bỏ nên nhiệm vụ
Thư không địa chỉ đội ngũ nhiệm vụ một lần nữa tiêu phí
Tiến vào thư không địa chỉ đội ngũ nhiệm vụ duy trì tay động trọng nhập đội ngũ một lần nữa tiêu phí
pip install leek
fromleekimportTaskPublisher,TaskConsumer
forzzinrange(1,11):
TaskPublisher(queue_name='test1').pub(a=zz,b=zz)
defprint_msg_dict(a,b):
print(f "t_demo1:{a},{b}")
TaskConsumer(queue_name='test1',consuming_function=print_msg_dict).start()
fromleekimportget_consumer
deff(a,b):
print(f "a:{a},b:{b}")
print(f.meta)
consumer=get_consumer('test2',consuming_function=f,process_num=3,ack=True,task_expires=10,batch_id='2021042401')
foriinrange(1,200):
consumer.task_publisher.pub(a=i,b=i)
consumer.start()
fromleekimporttask_deco
@task_deco('test3')# tiêu phí hàm số thượng tân tăng nhiệm vụ đội ngũ trang trí khí
deff3(a,b):
print(f "t_demo3,a:{a},b:{b}")
# tuyên bố nhiệm vụ
foriinrange(1,51):
f3.pub(a=i,b=i)
# tiêu phí nhiệm vụ
f3.start()
get_consumer(queue_name='test11', consuming_function=f, process_num=2, threads_num=30, max_retry_times=5, qps=10, task_expires=60, batch_id='test_v1.0')
:param queue_name: Đội ngũ tên
:param consuming_function: Đội ngũ tin tức lấy ra sau chấp hành phương pháp
:param process_num: Khởi động tiến trình số lượng ( cam chịu giá trị:1)
:param threads_num: Khởi động tuyến trình số ( cam chịu giá trị:8)
:param max_retry_times: Sai lầm trọng thí số lần ( cam chịu giá trị:3)
:param qps: Mỗi giây hạn chế tiêu phí nhiệm vụ số lượng ( cam chịu 50)
:param middleware: Tiêu phí trung gian kiện, cam chịu redis duy trì sqlite,kafka, memory
:param customer_type: Người tiêu thụ loại hình string duy trì ('thread','gevent') cam chịu thread
:param fliter_rep: Tiêu phí nhiệm vụ hay không đi trọng bool True: Đi trọng False: Không đi trọng
:param filter_field: Tiêu phí nhiệm vụ đi trọng tự đoạn, đương fliter_rep vì True khi hữu hiệu
:param max_push_size: Mỗi lần phê lượng đẩy đưa nhiệm vụ số lượng cam chịu giá trị 50
:param ack: Hay không yêu cầu xác nhận tiêu phí cam chịu giá trị True
:param task_expires: Nhiệm vụ quá thời hạn thời gian đơn vị / giây
:param batch_id: Phê thứ id
:param re_queue_exception: Yêu cầu trọng nhập đội ngũ dị thường