Điểm:0

Hình ảnh bộ nhớ cache tập trung

lá cờ ng

Đăng kí: Cung cấp hình ảnh đáp ứng và được tối ưu hóa một cách nhanh chóng bằng cách cắt xén/thay đổi kích thước/nén hình ảnh chính

tải hiện tại: 10k yêu cầu mỗi phút, lưu lượng ~60MBps.

Cấu hình hiện tại : NginxPlus LB đứng đầu. Nhiều máy chủ ứng dụng với nginx->tomcat. Trên mỗi máy chủ ứng dụng, hình ảnh được lưu trong bộ nhớ cache trong nginx

vấn đề hiện tại:

  • Tỷ lệ truy cập bộ nhớ cache kém vì bộ nhớ cache được phân cấp, khả năng cùng một yêu cầu truy cập vào cùng một máy chủ là thấp.
  • Sao chép bộ nhớ đệm, mặc dù điều này có thể chấp nhận được
  • Thanh lọc bộ nhớ cache là cồng kềnh. Vì bộ đệm có thể có trên nhiều máy chủ, để xóa bộ đệm, nó cần được xóa khỏi tất cả các máy chủ ứng dụng

Các giải pháp tiềm năng

  • Băm nhất quán Nginx Load Balancer. Vấn đề với phương pháp này là nó có thể gây ra phân phối lưu lượng truy cập không đồng đều

  • Giới thiệu một lớp giữa của một vài máy chủ nginx: Một lớp bộ nhớ đệm nginx chuyên dụng có thể được giới thiệu giữa LB và máy chủ ứng dụng. Nhưng hãy nói rằng tôi giữ 3 máy chủ trong lớp này, Tuy nhiên, nó vẫn gặp vấn đề tương tự về bộ nhớ đệm trùng lặp và các cơn đau đầu khi thanh lọc mặc dù cường độ thấp hơn.

  • Disk I/O có thể là một vấn đề trong trường hợp của một nginx

Có ai có kinh nghiệm giải quyết trường hợp sử dụng này không? Không phải với nginx. Hãy chia sẻ những suy nghĩ của bạn.

anx avatar
lá cờ fr
anx
Điều gì khiến bạn nghĩ rằng phân phối lưu lượng truy cập không đồng đều trở thành một vấn đề? Hầu hết các thiết lập đủ lớn để biện minh cho nhiều máy chủ ứng dụng cũng sẽ có đủ người dùng đa dạng để lựa chọn ngẫu nhiên nhưng lựa chọn ngược dòng hấp dẫn không gây ra sự phân phối không đồng đều đáng kể so với dự trữ dung lượng tương đối mà bạn muốn có ở chế độ chờ. Bạn có thể đang cố gắng giải quyết vấn đề khó đo lường được với các mẫu lưu lượng truy cập phổ biến.
djdomi avatar
lá cờ za
Tôi không biết hệ thống tệp nào có thể là tốt nhất nhưng bạn có thể sử dụng bộ lưu trữ trung tâm cho bộ đệm, điều này sẽ loại bỏ các hiệu ứng bộ đệm kép do tất cả đều sử dụng cùng một bộ đệm?
lá cờ us
Sử dụng hệ thống tệp dùng chung cho bộ đệm có thể không phải là kịch bản được hỗ trợ trong nginx. Nếu quyền truy cập bộ đệm không được đồng bộ hóa đúng cách, tất cả các loại hiệu ứng kỳ lạ có thể xảy ra. Ngoài ra, các sự kiện hết hạn bộ đệm có thể gây ra sự cố. Làm cách nào để triển khai bộ nhớ đệm cho hình ảnh trên nginxplus LB?
Holy_diver avatar
lá cờ ng
@TeroKilkanen, tôi hiểu ý của bạn nhưng trên NginxPlusLB, chúng tôi có thể gặp sự cố i/o của đĩa vì tất cả tải đều thông qua LB. Điều này có thể hoạt động nhưng không có nhiều bằng chứng trong tương lai.
djdomi avatar
lá cờ za
@Holy_diver Tôi tin rằng SSD có thể xử lý tình huống của bạn hay bạn có đánh bại một triệu IOPS trên bộ lưu trữ dựa trên NVME không? Vòng của nó khoảng 180 nghìn IOPS thực
mforsetti avatar
lá cờ tz
Tỷ lệ truy cập bộ đệm kém ở mức 10 nghìn yêu cầu mỗi phút? tỷ lệ truy cập bộ đệm của bạn ngay bây giờ là bao nhiêu? Tôi có xu hướng đồng ý với @anx ở đây với việc tối ưu hóa sớm.
Holy_diver avatar
lá cờ ng
@mforsetti, Tỷ lệ trúng hiện tại là 10% và chính sách LB là ít kết nối nhất. Vì vậy, Cache được phân cấp. Đối với lần truy cập, yêu cầu tiếp theo sẽ đến cùng một máy chủ ứng dụng.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.