Cụ thể là lớp GreenPool trong Eventlet. Tôi đã thử nghiệm một số mã để tải các tệp lớn lên S3 dưới dạng các phần riêng lẻ của quá trình tải lên nhiều phần. Những gì tôi đã nhận thấy cho đến nay là khi sử dụng eventlet việc sử dụng CPU là thấp hơn nhiều. Chỉ cần tìm kiếm ưu và khuyết điểm khác cho Eventlet chỉ bằng cách sử dụng luồng. Cảm ơn.Lợi ích của việc sử dụng mô-đun Eventlet trong python trên mô-đun luồng là gì?
10
A
Trả lời
9
Về cơ bản, chuỗi chủ đề màu xanh lá cây Eventlet được coi là tương tự nhẹ của chuỗi hệ điều hành cho tất cả các mục đích thực tế. Ưu điểm:
- rẻ hơn để tạo về CPU, bộ nhớ và syscalls (0)
- rẻ hơn để chuyển đổi; điều này đặc biệt đúng trong Python 2.x trong đó mỗi thread chủ động cố gắng lấy GIL làm lãng phí CPU.
Nhược điểm:
- quan trọng vì nhiều chủ đề màu xanh lá cây hoạt động trong một thread OS, khi một syscall (ví dụ như mở (2)) trong một trong số họ khối thread OS, tất cả các chủ đề màu xanh lá cây cũng bị chặn.
- không có SMP (đa lõi/đa lõi); nhưng sau đó với GIL, điều này cũng đúng đối với các luồng hệ điều hành trong Python. Với greenlet [1] hạn chế này là nghiêm ngặt hơn vì nó không thể cho một số phần mở rộng C để phát hành GIL để cho phép các chủ đề màu xanh lá cây khác để tiến hành.
Bạn cũng có thể tìm thấy câu trả lời này hữu ích: Is a greenthread equal to a "real" thread
[1] "luồng" thư viện sử dụng bởi Eventlet https://github.com/python-greenlet/greenlet
Các vấn đề liên quan
- 1. Lợi ích/lợi thế của việc sử dụng Python 3 là gì?
- 2. Chính xác là lợi ích của việc sử dụng Punjab
- 3. Lợi ích của việc sử dụng WPF trên Windows Forms là gì?
- 4. Lợi ích của việc sử dụng RichTextBox trên TextBox là gì?
- 5. Lợi ích của việc sử dụng Lớp học trong VBA là gì?
- 6. Lợi ích của việc sử dụng flush() close() trong luồng Android?
- 7. Lợi ích của việc xác định hàm trong một hàm trong python là gì?
- 8. Lợi ích của việc sử dụng tính năng xuất bản Visual Studio trong ASP.NET là gì?
- 9. Lợi ích chính của việc sử dụng eval() trong JavaScript là gì?
- 10. Lợi ích của việc sử dụng Scala trong .Net là gì?
- 11. lợi ích của việc sử dụng chế độ xem trong cơ sở dữ liệu là gì?
- 12. Lợi ích chính của việc sử dụng Haskell để phát triển web là gì?
- 13. Lợi ích của việc mang tên riêng trong Python là gì?
- 14. lợi ích của việc sử dụng directoryperdb trong MongoDB
- 15. Lợi ích của việc sử dụng epoll_create1() thay vì epoll_create()
- 16. Lợi ích của JCA là gì?
- 17. Lợi ích của việc sử dụng TcpClient qua Socket trực tiếp là gì?
- 18. Lợi ích của letrec là gì?
- 19. Lợi ích của việc sử dụng System.Diagnostics.Debugger.Break() qua Đính kèm quy trình là gì?
- 20. lợi ích của việc sử dụng Antennahouse qua Apache FOP là gì?
- 21. Lợi ích của việc sử dụng iframe để thăm dò ý kiến lâu dài là gì?
- 22. Lợi ích của việc sử dụng out/ref so với return là gì?
- 23. Lợi ích của việc sử dụng C# vs F # hoặc F # so với C# là gì?
- 24. Lợi ích của việc sử dụng ổ cắm không chặn với chức năng "chọn" là gì?
- 25. Lợi ích của Scala là gì?
- 26. Năng suất là gì ?, và lợi ích của việc sử dụng năng suất trong asp.net là gì?
- 27. lợi thế của việc sử dụng giao diện là gì
- 28. Lợi ích của việc sử dụng một hàm tạo?
- 29. Lợi ích của ThreadGroup trong java khi tạo các luồng riêng biệt là gì?
- 30. Lợi thế của việc sử dụng COM trên một DLL đơn giản là gì?