2010-05-28 31 views

Trả lời

6

memcached là đa luồng theo mặc định và không có vấn đề bão hòa nhiều lõi. Đó là một chút khó khăn hơn để bão hòa tất cả các lõi trên các hộp song song ồ ạt hơn (ví dụ: một hộp CMT 256 lõi) chỉ vì nó khó khăn hơn để lấy dữ liệu vào và ra khỏi mạng.

Nếu bạn tìm thấy các khu vực mà một số loại tranh chấp đang ngăn bạn khỏi các lõi bão hòa, hãy sửa lỗi hoặc bắt đầu một cuộc thảo luận.

12

memcached có "-t" tùy chọn:

 -t <threads> 
      Number of threads to use to process incoming requests. This option is only meaningful 
      if memcached was compiled with thread support enabled. It is typically not useful to 
      set this higher than the number of CPU cores on the memcached server. The default is 
      4. 

như vậy, tôi tin rằng nó có thể sử dụng tất cả các lõi CPU của bạn, tất nhiên nếu nó được biên soạn với tùy chọn tương ứng.

+0

Thank you very much ~ –

+0

hãy đánh dấu câu trả lời là 'chấp nhận' nếu nó là hữu ích cho bạn –

0

CẨN THẬN. Thuật ngữ này khá khó hiểu. Memcached man page nói tùy chọn -t chỉ tốt cho tới số lõi. Tuy nhiên, điều này là kỳ quặc bởi vì các luồng và các tiến trình là rất khác nhau. Các luồng có NOTHING để làm với số lõi. Quá trình chắc chắn có thể chạy trên nhiều hơn một cor, trong khi chủ đề không thể (trừ khi họ gọi đến một thói quen hệ điều hành, sau đó họ có thể chuyển đổi chủ đề và đóng gói trong hơn 100% sử dụng CPU). Chủ đề chia sẻ bộ nhớ và chỉ phụ thuộc vào một con trỏ hướng dẫn để phân biệt ai là ai. Quy trình chia sẻ không có gì trừ khi nó được tuyên bố rõ ràng là được chia sẻ trước thời hạn và việc chia sẻ xảy ra qua hệ điều hành.

Nhìn chung, tôi muốn nhiều hơn CLARITY từ những người Memcached về việc liệu ứng dụng của họ là đa xử lý hoặc đa luồng và do đó nếu nó có thể sử dụng hơn 100% CPU.

+2

[Chủ đề không có gì để làm với số lượng lõi] Lý do tại sao nói nó để thiết lập số điện thoại của chủ đề để số lượng lõi là bạn thường muốn có một lõi thực hiện một chuỗi nhất định. Hơn thế nữa cpu sẽ phải chuyển ngữ cảnh giữa các luồng tác động đến hiệu suất ở các mức độ khác nhau tùy thuộc vào những gì bạn đang cố gắng làm – concept47

4

Dựa trên nghiên cứu của this của Intel, Memcached v.1.6 beta không thể mở rộng tốt trên hệ thống đa lõi. Thử nghiệm của họ cho thấy khi số lượng lõi tăng từ 1 đến 8, thông lượng tối đa (với RTT trung bình < 1ms SLA trung bình) chỉ tăng gấp đôi.

Các vấn đề liên quan