2010-08-23 17 views
27

Tôi đã đọc tài liệu MongoDB và nó đi kèm với cảnh báo về các hệ thống 32 bit; đặc biệt là chúng bị giới hạn ở mức 2 GB RAM có sẵn cho Mongo.Khả năng chạy MongoDB trên Linode 512 VPS?

Vì vậy, tôi đã tự hỏi nếu tuyên bố đó có nghĩa là bất cứ điều gì liên quan đến việc chạy MongoDB trong một thiết lập bộ nhớ thấp như Linmb 512MB RAM dựa trên RAM. Tôi nghi ngờ nó quan trọng nhưng với một bản phân phối 64-bit để thêm tài nguyên sau này.

Bất kỳ cảnh báo nào hoặc ai đó đề xuất tối thiểu RAM để chọn VPS cho MongoDB? Tôi biết các yêu cầu của dự án hình thành điều này, nhưng tôi có nghĩa là tối thiểu trong ý nghĩa của những gì muốn được cười để làm mà không cho thậm chí quay MongoDB lên.

+2

Wow, tài liệu của họ nói Và ở đây tôi đã nghĩ rằng "dữ liệu" là không gian đĩa. Đó sẽ là một thảm họa. Gần như bị bỏ rơi Mongo hoàn toàn ngay lúc đó và ở đó. Tôi rất vui vì tôi đã thấy câu hỏi này. – Joe

Trả lời

26

Tôi sử dụng nó trên một số trang web sản xuất nhỏ đang chạy trong Linode 512 & của nó chỉ sử dụng ít bộ nhớ, chỉ khoảng 5 - 6MB. Tập dữ liệu của tôi rất nhỏ ngay bây giờ.

MongoDB sử dụng công cụ lưu trữ bộ nhớ được ánh xạ, có nghĩa là nó dựa trên bộ đệm hệ thống của hệ điều hành để giữ dữ liệu thường xuyên được sử dụng trong bộ nhớ.

http://www.mongodb.org/display/DOCS/Caching

Vì vậy, trừ khi bạn có một tập dữ liệu rất lớn để bắt đầu với, một Linode 512 nên được OK.

Điều mà tôi quan tâm một chút khi nghiên cứu điều này là MongoDB dường như gặp sự cố khi hết bộ nhớ, mà không cần cảnh báo nhiều. Nó cũng khó để pin xuống chính xác bao nhiêu bộ nhớ hoặc không gian đĩa nó sẽ sử dụng tỷ lệ thuận với bao nhiêu dữ liệu bạn có. Cũng không có cách nào để xác định giới hạn cứng, với chi phí hiệu suất bị suy giảm. Đó là điều bạn có thể muốn theo dõi.

Bạn có thể thử chạy MongoDB với các tùy chọn --smallfiles --noprealloc, vì điều này cho phép các tệp cơ sở dữ liệu nhỏ hơn bắt đầu và không preallocate chúng, tiết kiệm dung lượng đĩa nếu bạn có một tập dữ liệu nhỏ.

Dưới đây là kinh nghiệm của một người sử dụng:

http://groups.google.com/group/mongodb-user/browse_thread/thread/223810a749f0e1eb

Đáng tiếc là chủ đề đó không được giải quyết, sẽ được tốt đẹp nếu họ đã có một lý do cho sự sụp đổ.

Đây cũng là tốt để đọc: "32-bit xây dựng được giới hạn khoảng 2GB dữ liệu"

http://groups.google.com/group/mongodb-user/browse_thread/thread/2646a52c4f41d832/d43f3ba7bbbbd63d

+0

Ok, cảm ơn Klinky :) Tôi sẽ đọc những liên kết đó và đảm bảo rằng tôi hiểu rõ về các điều khoản có liên quan. – RayTFM

+1

Tai nạn có thể do hệ thống OOM gây ra. Hãy xem http://www.mongodb.org/display/DOCS/The+Linux+Out+of+Memory+OOM+Killer – thoaionline

+0

Có thể là một ý tưởng hay khi tạo một tệp hoán đổi, Linode chạy trên SSD để nó không quá chậm. Nó luôn luôn tốt hơn để có một chút tụt hậu dưới tải cao hơn để sụp đổ MongoDB hoàn toàn. Và đảm bảo điều chỉnh 'vm.swappiness' để bạn không đạt được SSD trừ khi thực sự cần thiết. –