2012-05-25 29 views
12

Câu hỏi của tôi là số lượng người dùng tối đa mà máy chủ web Apache 2.2.2 có thể xử lý, tôi có một trang web đôi khi nhận hơn 300 người dùng đồng thời, tuy nhiên cấu hình mặc định apache được đặt thành tối đa 150, tôi biết tôi có thể tăng điều này giá trị, tuy nhiên nếu tôi làm tôi sợ rằng tôi có thể chạy vượt quá khả năng mà Apache có thể xử lý, máy chủ của tôi là khá mạnh mẽ với bộ vi xử lý với bộ nhớ 16 GM 8 lõi tứ AMDmáy chủ web tối đa số người dùng apache có thể xử lý?

  1. làm thế nào để tôi xác định có bao nhiêu yêu cầu mà apache có thể xử lý,

  2. Nói chung các tùy chọn/cấu hình nào được tối ưu hóa tốt nhất cho tải máy chủ. tức là vô hiệu hóa giữ sống ..etc

  3. Khi tôi tăng kích thước sử dụng tối đa, MySql ăn lên hầu hết các sức mạnh xử lý với đi hơn 150% CPU đôi khi .... không chắc chắn lý do tại sao ..

Bất kỳ chuyên gia nào?

Trả lời

0

Xem hướng dẫn này cho một cái nhìn tổng quan: http://www.devside.net/articles/apache-performance-tuning

Đó là tất cả chủ yếu là về Apache MPM mà bạn đã chọn (Đề tài dựa, hoặc quá trình dựa) và nó cài đặt.

Sau đó, bạn cần kết hợp nó với cài đặt KeepAlive (Tôi sử dụng MPM dựa trên luồng và do đó đặt KeepAlives thành On và trong 3 giây).

Bạn đang sử dụng Apache trong Linux hoặc Windows? MPM nào?

+0

cảm ơn vì đã trả lời tôi đang sử dụng nó theo centos 6.0 – mahen3d

7

Apache đi kèm với chủ đề tối đa 40-100. Nó có thể được tăng lên để cho phép nhiều chủ đề được xử lý cùng một lúc.

Ứng dụng phải được theo dõi trước khi thực hiện bất kỳ thay đổi nào đối với ứng dụng. Dựa trên phản hồi, hãy thử thay đổi "ThreadsPerChild" và "AcceptThreads" cho phù hợp.

Số lượng mặc định của số lượng chuỗi "tối đa" thường là đủ; tuy nhiên, có thể có các điều kiện mà số này có thể phải tăng lên. Các chủ đề sử dụng có thể được theo dõi. Để theo dõi, hãy bắt đầu cá thể Quản trị, chọn máy chủ HTTP được đề cập và chọn Thống kê máy chủ thời gian thực ở dưới cùng bên trái.

Nếu Chủ đề nhàn rỗi gần hoặc bằng không, đây là sự cố. Miễn là Chủ đề nhàn rỗi bằng không, không thể thiết lập kết nối máy khách mới. Khách hàng mới sẽ được đưa vào trạng thái chờ cho đến khi chuỗi có sẵn. Đề nghị của chúng tôi cho điều kiện này là thêm chỉ thị ThreadsPerChild với một giá trị gia tăng, gần gấp đôi giá trị hiện tại nếu nó nằm trong khoảng 40 đến 100, hoặc cộng thêm 50, nếu nó cao hơn 100. Giá trị tối thiểu bắt buộc (cho tối đa tham số) chỉ có thể được tìm thấy bằng thử và sai. Nếu sau khi tăng giá trị, máy chủ chạy trơn tru, dừng thử nghiệm.

(source)

2

Khuyến nghị

Vui lòng sử dụng Keep Alive vì nó sẽ làm tăng hiệu suất của máy chủ của bạn. Chỉ tắt cài đặt Alive khi có tường lửa giữa web hoặc ứng dụng. Hoặc bạn đang phải đối mặt với vấn đề thả gói/thông báo đặt lại kết nối.

  • Bạn có thể tăng giới hạn khách hàng tối đa nhưng giới hạn sẽ hoàn toàn phụ thuộc vào cấu hình máy chủ của bạn. Trên một trung bình mỗi thread apache sẽ cho phép nói 25MB, sau đó trong trường hợp đó bạn có giữ giá trị khách hàng tối đa để (MAX * tải trên mỗi thread)/(RAM được phân bổ * chủ đề). Luôn duy trì tỷ lệ này đến 1/2.
  • Bạn có thể tăng người dùng của mình lên bất kỳ số nào như được giải thích ở trên bằng cách tăng giới hạn máy khách và máy chủ tối đa cho hệ thống của bạn.
  • Luôn xác định giới hạn tối đa của min-max hoặc min-max.
  • Một điểm rất quan trọng nếu bạn không thể tăng giới hạn tối đa của máy khách, chỉ cần tăng giới hạn tồn đọng của bản nhạc, nó sẽ nhận thêm yêu cầu trong hàng đợi để ngăn chặn việc ngắt kết nối.
+0

tôi đã cố gắng sử dụng tính năng này, nhưng tôi thấy rằng nó giảm đáng kể thời gian phản hồi của máy chủ, đó là lời khuyên từ người khác, để vô hiệu hóa sống sót. – mahen3d

1

Bạn sẽ phải chỉnh sửa tệp httpd.h để cho phép maxclients lớn hơn giới hạn 256 mã hóa cứng và sau đó biên dịch lại chương trình httpd. Điều này được đề xuất trong tệp cấu hình cho httpd.

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