Penafian: Sonassi adalah tuan rumah Magento
TL; DR - Tuan rumah yang baik akan memberi tahu Anda apa yang Anda butuhkan (dan membenarkannya). Anda seharusnya tidak melakukan ini sendiri.
Ketika seorang pelanggan mendekati kami, kami mengajukan beberapa pertanyaan untuk memahami apa persyaratan saat ini, persyaratan puncak dan persyaratan di masa depan untuk toko mereka. Maka kami akan memberikan rekomendasi atas dasar itu.
Mengingat kami menjadi tuan rumah bagi ribuan toko Magento, kami memiliki pemahaman yang cukup solid tentang infrastruktur apa yang dibutuhkan untuk serangkaian persyaratan pelanggan, sehingga cukup mudah bagi kami untuk memberikan rekomendasi (dan prediksi sumber daya apa yang akan digunakan) ketika mereka benar-benar ditayangkan.
Detail yang perlu diperhatikan di sini adalah bahwa sementara kami pasti dapat memberi tahu Anda persyaratan untuk infrastruktur kami sendiri yang menjalankan MageStack - yang hampir pasti tidak akan sama dengan pengaturan di tempat lain - jadi ingatlah itu.
Biarkan orang lain mengukur kebutuhan Anda
Simpan dan Katalog
- Versi Magento?
- Jumlah produk sederhana dalam katalog?
- Jumlah kategori dalam katalog?
- Jumlah atribut dalam katalog?
- Jumlah set atribut dalam katalog?
- Jumlah tampilan toko Magento (Admin> Sistem> Kelola Toko)?
- Transaksi per hari?
- Transaksi puncak dalam satu jam?
Lalu Lintas dan Bandwidth
- Apa tingkat pengunjung unik harian?
- Apa puncak tertinggi dalam satu jam pengunjung unik?
- Jumlah tampilan halaman per pengunjung?
- Dari negara mana sebagian besar pengunjung berasal?
- Apakah Anda mengantisipasi peningkatan lalu lintas situs selama 12 bulan ke depan, jika ya, seberapa banyak?
- Apakah Anda mengoperasikan kampanye / buletin lalu lintas tinggi (yang memiliki serapan signifikan) secara teratur?
- Apakah situs Anda menawarkan unduhan digital?
- Penggunaan bandwidth saat ini?
- Apakah Anda memerlukan layanan penyaringan dDOS?
Persyaratan Perangkat Keras
- Penggunaan ruang disk saat ini?
- Apakah Anda memerlukan penyimpanan log jangka panjang (kepatuhan PCI-DSS)?
- Apakah Anda memerlukan penyimpanan cadangan di luar situs?
- Apakah Anda perlu menjalankan perangkat lunak spesialis / alternatif di server?
- Apakah peraturan kepatuhan PCI Anda menentukan penggunaan firewall perangkat keras?
- Apakah Anda memerlukan solusi yang toleran terhadap kesalahan, sangat tersedia atau solusi beban-seimbang?
Praktek Pementasan / Pengembangan
- Apakah Anda memerlukan lingkungan khusus yang terpisah untuk pementasan / pengembangan?
- Apakah Anda memerlukan lingkungan "Test Live" agar sesuai dengan lingkungan "Live" (untuk pengujian pra-live akhir)?
Anggaran
- Apakah Anda memiliki anggaran bulanan?
Kemudian menggunakan informasi ini, kirimkan ke penyedia hosting pilihan Anda dan lihat apa yang mereka rekomendasikan.
Mengukur kebutuhan Anda sendiri
Sebagai patokan, dimungkinkan untuk
- Langsung mengkorelasikan tingkat lalu lintas Anda dengan persyaratan CPU Anda
- Korelasikan langsung persyaratan CPU Anda dengan persyaratan RAM
- Langsung mengkorelasikan penyimpanan MySQL Anda dengan persyaratan RAM
Pemilihan CPU
Pertama mulailah dengan mengukur lalu lintas Anda.
- Demo store Magento standar mampu menghasilkan sekitar 230 uniques per GHz, per jam.
- Toko web biasa, dengan aktivitas pengguna admin, aktivitas pengembangan, penambahan / penghapusan produk dapat melihat penurunan ini sekitar 100%, menjadi 115 uniques per GHz, per jam.
- Toko dengan template yang dibangun / berat kurang dapat mengurangi angka 100-200%, menjadi 50 uniques per GHz, per jam.
Dengan menggunakan angka-angka ini, Anda dapat mengetahui dengan tepat apa yang Anda butuhkan dalam hal sumber daya CPU.
Misalnya. Jika Anda memiliki 4.025 pengunjung unik / hari - Anda memerlukan total sumber daya CPU 28GHz (mis. 8 Cores @ 3.5GHz, atau 12 Cores @ 2.3GHz)
Detail penting lainnya adalah kecepatan CPU, dimungkinkan untuk memiliki:
- Waktu buka halaman yang lambat dan dukungan konkurensi rendah (CPU kecepatan clock rendah (GHz), beberapa core)
- Waktu buka halaman yang cepat, tetapi dukungan konkurensi rendah (CPU kecepatan tinggi (GHz), beberapa core)
- Waktu buka halaman yang lambat, tetapi dukungan konkurensi tinggi (CPU kecepatan rendah (GHz), banyak core)
- Waktu pemuatan halaman yang cepat dan dukungan konkurensi tinggi (CPU kecepatan tinggi (GHz), banyak core)
Pemilihan RAM
Untuk server mandiri (konfigurasi terbaik untuk Magento), aturan di sini adalah 2GB RAM / CPU Core. Jadi jika Anda memiliki 8 core, maka 16GB RAM harus menjadi minimum.
Untuk mengetahui apa yang Anda butuhkan selain ini, Anda perlu memperhitungkan ukuran katalog Anda. Melakukan ini mudah, gandakan jumlah tampilan toko Anda dengan ukuran katalog total.
Misalnya. Dalam kasus Anda, 1 tampilan toko * 10.000 produk = 10.000
Rekomendasi kami adalah,
<1,000 = 8GB RAM
<50,000 = 16GB RAM
<100,000 = 32GB RAM
<100,000 = 32GB RAM
<250,000 = 48GB RAM
<500,000 = 64GB RAM
<750,000 = 96GB RAM
>999,999 = 128GB RAM
Anda ingin mengambil yang lebih tinggi dari dua angka (mis. Dari CPU Core: rasio RAM dan persyaratan katalog), atau campuran yang masuk akal dari keduanya.
Pemilihan HDD
Mari kita perjelas, untuk rata-rata toko Magento (mis. <50rb pengunjung unik / hari), Magento tidak terikat oleh I / O - SSD tidak akan membuat toko Magento Anda lebih cepat; itu tidak akan meningkatkan konkurensi dan tidak akan meningkatkan TTFB. Demikian pula, menggunakan level RAID bergaris (mis. RAID10) juga tidak akan memberikan keuntungan (karena hampir setiap file pada disk akan lebih kecil dari ukuran stripe, jadi hanya disk tunggal yang akan digunakan).
Satu-satunya penyimpanan waktu adalah bottleneck pada layanan yang diperangi (mis. Cloud / VPS).
Namun, tentu saja ada keuntungan untuk mempercepat I / O di luar operasi toko itu sendiri. Dengan SSD, operasi file (mis. Status Git / SVN, backup / restore, menyalin direktori, dll.) Secara substansial lebih cepat. Kehidupan pengembang Anda akan jauh lebih mudah (dengan tugas-tugas rutin menjadi lebih cepat).
Perhatikan juga bahwa tidak semua disk drive dibuat sama.
- SSD murah / desktop-grade akan melakukan lebih lambat daripada HDD konvensional
- HDD murah / desktop-grade akan melakukan lebih lambat dari HDD perusahaan
- HDD murah / desktop-grade akan memiliki tingkat NRE yang buruk (biasanya 10 ^ 14) dibandingkan dengan disk perusahaan (biasanya 10 ^ 16)
Jadi pastikan untuk benar-benar memilih disk drive yang layak berada di server, yaitu. Intel DC S3700.
Memilih kapasitas itu mudah, Anda hanya perlu dua perintah,
Untuk root dokumen Magento
cd /path/to/magento/installation
du -hsL . \
--exclude="/var/log" \
--exclude="/var/session" \
--exclude="/var/cache" \
--exclude="/var/full_page_cache" \
--exclude="/var/report" \
--exclude="/var/tmp" \
--exclude="/includes/src/"
Untuk DB MySQL
SELECT
IFNULL(B.engine,'Total') "Storage Engine", CONCAT(LPAD(REPLACE(FORMAT(B.DSize/POWER(1024,pw),3),',',''),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Data Size", CONCAT(LPAD(REPLACE(FORMAT(B.ISize/POWER(1024,pw),3),',',''),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Index Size", CONCAT(LPAD(REPLACE(FORMAT(B.TSize/POWER(1024,pw),3),',',''),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Table Size" FROM (SELECT engine,SUM(data_length) DSize,SUM(index_length) ISize,SUM(data_length+index_length) TSize
FROM information_schema.tables
WHERE table_schema NOT IN ('mysql','information_schema','performance_schema')
AND engine IS NOT NULL
GROUP BY engine
WITH ROLLUP) B,(SELECT 3 pw) A
ORDER BY TSize;
.
Siapa yang harus memilih
Ya terserah Anda. Saya tidak bisa memberikan rekomendasi [walaupun akan jelas :)] - tetapi Anda tentu dapat membentuk opini Anda sendiri,
- Jika mereka memiliki perangkat keras yang sesuai dengan persyaratan minimum Anda
- Jika mereka memiliki warisan / reputasi yang kuat di Magento (mis. Berpartisipasi di situs-situs seperti ini, dan menunjukkan pengalaman dunia nyata)
- Jika mereka dapat memberikan demonstrasi toko Anda, di hosting mereka (mis. Sehingga Anda dapat melihat dengan tepat bagaimana kinerjanya)
- Jika mereka dapat menjawab setiap dan semua pertanyaan terkait Magento Anda (mis. Cobalah mengujinya dengan pertanyaan yang Anda miliki di masa lalu dan lihat bagaimana mereka menjawabnya)
- Jika harganya sesuai dengan anggaran Anda
- Pastikan dukungan mereka sesuai dengan harapan Anda (mis. Apakah Anda bersedia melakukan sendiri uji tuntas sendiri sebelum menghubungi dukungan, atau apakah Anda memiliki harapan mereka dapat men-debug masalah Magento Anda atas nama Anda)
- Pastikan lingkup pekerjaan yang disertakan sesuai dengan kebutuhan Anda (mis. Dikelola sepenuhnya, bare metal dll.)
- Jika solusinya scalable (mis. Apakah itu platform server tunggal - bisakah skala itu menjadi solusi multi-server).
- Jika solusinya menampilkan semua perangkat lunak yang Anda butuhkan untuk toko Magento Anda (Misalnya. ElasticSearch / Sphinx / SOLR, Redis / Memcache, Varnish dll.)
Ada sesuatu untuk ditambahkan di sini, Anda akan mendapatkan dua jenis host
- Dikelola (mis. Di mana server benar-benar diatur dan diurus)
- Tidak dikelola (mis. Tempat Anda mengatur seluruh server sendiri)
Yang mana yang paling tepat untuk Anda benar-benar tergantung pada apa keahlian Anda. Menurut pendapat jujur saya, pengembang bukan administrator sistem - hanya karena Anda dapat menjalankan apt-get install nginx
- itu tidak membuat Anda sysadmin yang berpengalaman. Kalau tidak, setiap pemilik toko yang dapat menggunakan Magento Connect dapat mengklasifikasikan diri mereka sebagai pengembang!
Memahami peran Anda (dan keterbatasan) sebagai pengembang dan membiarkan seseorang dengan pengalaman yang tepat dalam mengelola server memiliki nilai ekstrem. Siapa pun dapat menginstal serangkaian paket, tetapi mengatur konfigurasi perangkat lunak, memastikannya stabil, bebas bug, aman, dan berkinerja tinggi adalah hal yang sama sekali berbeda.
Saya akan hanya pernah merekomendasikan rute seluruh DIY kepada orang-orang yang memiliki besar jumlah Magento Server pengalaman konfigurasi, yang telah mengerahkan ribuan server sebelumnya, dengan konfigurasi yang dikenal diuji dan stabil. Jika tidak, pergilah dengan host Magento terkelola yang tahu apa yang mereka lakukan dan memungkinkan Anda untuk melakukan pekerjaan Anda tanpa gangguan.
Sumber: