2014-10-14 28 views
6

Tôi có một máy chủ vật lý đang chạy Nginx, MySQL và phục vụ trang web PHP của tôi. Máy chủ có bộ xử lý Multi-Core với RAM 16 GB. Máy chủ này có thể xử lý một lượng lưu lượng truy cập web nhất định. Bây giờ thay vì máy chủ duy nhất này, nếu tôi chạy nhiều bộ chứa docker chạy các cá thể Nginx (Máy chủ ứng dụng) và MySQL (DB Server) trong đó và cân bằng tải giữa các thùng chứa ứng dụng và cơ sở dữ liệu, nó có thể xử lý được không cùng một lượng lưu lượng truy cập như một máy chủ duy nhất xử lý nó hoặc nó sẽ ít hơn (Hiệu suất khôn ngoan)?Sử dụng hiệu quả nhiều vùng chứa docker trong một máy chủ duy nhất

Hiệu suất sẽ như thế nào nếu tôi sử dụng máy chủ ảo như EC2 hoặc Digital Ocean Leaflet có cùng cấu hình phần cứng thay vì máy chủ thực?

Trả lời

3

Vì tất cả quá trình chạy trên máy chủ gốc (bạn có thể chạy ps aux trên máy chủ bên ngoài vùng chứa và xem chúng). Nên có rất ít chi phí. Các cầu nối mạng và các mục IP Tables để chuyển tiếp các gói tin tới máy chủ ảo sẽ thêm một số chi phí CPU nhưng tôi không thể tưởng tượng rằng quá nguy hiểm.

+0

Tôi hiểu chi phí sẽ ít hơn. Nhưng câu hỏi của tôi là đánh giá lại máy chủ _performance/traffic handling_. Máy chủ được lưu trữ có thể ** xử lý cùng một lượng lưu lượng truy cập ** nó có thể xử lý như một máy chủ duy nhất không? Máy chủ đơn sẽ có một phiên bản Nginx & MySQL chạy trong đó và phục vụ trang web PHP của tôi. Máy chủ được lưu trữ sẽ có nhiều phiên bản của các thùng chứa Nginx & MySQL chạy trong đó và tải cân bằng giữa chúng. Cả hai máy chủ sẽ có cùng cấu hình phần cứng. Bây giờ máy chủ nào có thể phục vụ lưu lượng truy cập hiệu quả? –

+0

Có hiệu suất sẽ giống nhau. Sẽ có một lượng CPU không đáng kể được sử dụng nếu không có gì khác với việc chạy các quy trình đó mà không có thùng chứa. –

+0

Tôi tự hỏi, Nếu hiệu suất của máy chủ được container và máy chủ không được container là như nhau, mục đích sử dụng Docker/containers trong sản xuất là gì? Tại sao chúng ta cần các sản phẩm như CoreOS? –

1

Nếu câu hỏi là một vài nginx + 1 mysql so với một số thùng chứa với mỗi nginx + mysql, có lẽ hiệu suất khôn ngoan sẽ tốt hơn không sử dụng vùng chứa, chủ yếu là vì mysql và bộ nhớ có thể có bao nhiêu. trường hợp. Bạn có thể có nginx trong các thùng chứa riêng biệt nhưng sử dụng một mysql trung tâm cho tất cả các trang web, trong một container hay không.

+0

Tôi nghĩ đó là cốt lõi của câu hỏi: chi phí linh hoạt (có một bộ độc lập và hoàn chỉnh các container cho mỗi ứng dụng trên một máy chủ có thể được di chuyển một cách dễ dàng) về hiệu suất gì (chạy nhiều các phiên bản của cùng một phần mềm máy chủ, như MySQL, nginx). Bất kỳ kinh nghiệm nào cũng sẽ được đánh giá cao. – Bachi

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