256 atau 512 MB untuk server web

12

Saya berencana membeli Raspberry Pi, seorang kolega saya memiliki 256 MB tersisa. Tetapi saya tidak tahu apakah memori 256 MB dapat mengisi hal-hal yang ingin saya jalankan.

Saya ingin menjalankan server web Apache (atau server web lain yang menggunakan lebih sedikit ram dan CPU) dengan PHP dan MySQL, server FTP dan proxy SOCKS 5. Di server web saya akan menjalankan:

  • forum Vbulletin dengan 8 pengguna
  • Sebuah game yang sedang saya kembangkan saat ini.

Ketika game siap saya bisa memindahkan forum atau game ke raspberry lain ketika terlalu berat. Saya menjaga game sekecil dan secepat mungkin. Sebagai contoh: Saya akan memproses semua pekerjaan pembaruan dengan C ++. Tetapi ketika gim ini cukup besar untuk mendapatkan uang dengannya saya ingin membeli server normal jika itu memberikan peningkatan kinerja. Tapi saya ingin bereksperimen dengan Pi untuk sementara waktu.

Jadi pertanyaan saya adalah: haruskah saya membeli model B pi 512 MB baru, atau hanya membeli versi 256 MB b dari kolega saya?

Laurence
sumber

Jawaban:

12

Tidak ada jawaban pasti untuk itu karena itu benar-benar tergantung pada seberapa banyak kinerja yang Anda butuhkan, seberapa rumit aplikasi Anda, dll.

Itu selalu lebih baik untuk memiliki lebih banyak memori, hanya untuk aman. Ingatlah bahwa Anda tidak akan pernah mendapatkan 256MB RAM penuh untuk Linux, yang terbaik yang bisa Anda dapatkan adalah 240MB karena sisanya akan dialokasikan ke GPU (dan Anda benar-benar harus menggunakan pemisahan ini dalam beban kerja Anda). 240MB tidak banyak tetapi di sisi lain ada banyak penyedia layanan VPS yang menyediakan VPS (yang merupakan server pribadi tervirtualisasi) dengan 256MB RAM dan orang menjalankan situs yang cukup besar pada mesin ini sehingga pasti mungkin.

Anda dapat mengatur batas memori yang tersedia untuk situs PHP dan pada banyak layanan hosting bersama itu diatur ke 8-16MB per situs. Dan banyak aplikasi yang bisa berjalan cukup bahagia dengan itu. MySQL memiliki banyak opsi konfigurasi yang dapat digunakan untuk membatasi penggunaan memori dan Anda dapat dengan mudah menjalankannya dengan 64MB (atau bahkan kurang) memori. Server web Apache juga tidak haus memori dan bahkan ada alternatif yang lebih ringan. Kita dapat melewati server FTP dan SOCKS karena mereka mengambil jumlah memori yang sangat kecil (setidaknya ketika digunakan oleh hanya beberapa pengguna).

Jadi basis data adalah masalah terbesar di sini. Ingat bahwa semakin banyak server database memori yang dimilikinya, semakin baik kinerjanya (biasanya digunakan untuk cache ke I / O disk yang aman). Di situs dengan lalu lintas sangat tinggi, server basis data memiliki cukup memori untuk menyimpan (hampir) seluruh basis data di dalam memori. Anda mungkin tidak akan membutuhkan kinerja yang baik itu. RaspberryPi tidak memiliki penyimpanan yang terlalu cepat (ini seperti 5-10 kali lebih lambat dari pada komputer full-blown bahkan tanpa RAID) sehingga kinerja Anda akan sangat lambat ketika mencapai penyimpanan. Melanjutkan VPS yang telah disebutkan - mereka memiliki banyak solusi penyimpanan yang lebih cepat dalam banyak kasus tetapi mereka juga berbagi penyimpanan ini dengan banyak VPS lainnya (seringkali 16 atau bahkan 32) sehingga sangat sering tidak lebih baik daripada yang ada di RaspberryPi. Dan lagi, banyak situs berjalan dengan gembira di server itu.

Jadi kesimpulannya - Anda harus benar-benar baik-baik saja dengan 256MB RAM tetapi Anda harus mengubah beberapa opsi konfigurasi untuk menurunkan penggunaan memori. Seharusnya mudah untuk menemukan beberapa tutorial tentang itu di Internet, terutama ketika mencari artikel tentang mengoptimalkan server untuk penggunaan VPS dll. Jika Anda tidak berencana menggunakan sesuatu yang membutuhkan lebih banyak memori di masa depan dan dapat menghemat uang dengan membeli RaspberryPi versi 256 MB, sangat berharga. Dan Anda dapat mempelajari beberapa keterampilan menarik seperti merancang aplikasi Anda sehingga menggunakan lebih sedikit memori atau mengonfigurasi sistem Anda untuk membutuhkan lebih sedikit memori. Keterampilan itu mungkin terbayarkan di masa depan.

Krzysztof Adamski
sumber
Terima kasih atas jawabannya. Ini memang cara yang sangat baik untuk belajar bagaimana mengembangkan aplikasi yang baik. Terima kasih banyak. Saya akan mendapatkan 256 satu. Saya menemukan banyak tutorial untuk melakukan ini: squidoo.com/optimizing-mysql-for-vps-dedicated-server wiki.vpslink.com/Low_memory_MySQL_/_Apache_configurations supportcenter.verio.com/KB/questions.php?questionid=267 serverfault .com / pertanyaan / 29126 / ... my.opera.com/floweringmind/blog/…
Laurence
1
@Laurence: Saya tahu ini hal yang jelas tapi ingat baik juga untuk tahu mengapa Anda harus mengubah beberapa nilai dan apa yang mereka lakukan jika Anda benar-benar ingin mempelajari sesuatu yang bermanfaat. Beberapa nilai hanya menyalin & menempel dari situs lain tanpa banyak berpikir dan mungkin tidak optimal untuk Anda.
Krzysztof Adamski
Saya kedua @ Laurence bahwa, mengembangkan sistem dengan sumber daya terbatas, bisa menjadi praktik yang baik. Saya biasa menulis perangkat lunak pada platform dengan 64kB tersedia untuk aplikasi dan 64kB untuk data. Anda akan kagum dengan apa yang bisa dilakukan orang dengan itu. Bahkan pendahulu perangkat lunak navigasi TomTom ditulis dalam batas-batas ini. Saat ini pengembang cenderung menjadi malas, dengan sidik jari memori yang besar sebagai hasilnya. Saya akan menggunakan model 256MB hanya karena batasan yang dipaksakan.
EDP