tolong bantu startup memilih dan membangun server


primahendika

Beginner 2.0
coba cek proses sql nya sedang memproses apa saja,
cek juga di error_log di myqlnya, barang kali ada proses yang crash sehingga mengakibatkan sql bekerja extra
bisa coba di cek pakai ini
Code:
tail -f /var/lib/mysql/hostname.err

barusan saya coba

tail -f /var/lib/mysql/hostname.err
tapi ternyata ga ada hostname.err tuan

akhirnya saya cek lognya di /var/log/mysql/
dan disitu ada beberapa log yang saya cek isinya semua Access denied for user 'root'@localhost atau root@ip adress, semua isinya seperti itu tuan
 

Najamudin

Apprentice 2.0
Verified Provider
barusan saya coba

tail -f /var/lib/mysql/hostname.err
tapi ternyata ga ada hostname.err tuan

akhirnya saya cek lognya di /var/log/mysql/
dan disitu ada beberapa log yang saya cek isinya semua Access denied for user 'root'@localhost atau root@ip adress, semua isinya seperti itu tuan
saya lupa dulu pernah juga alami access denied ini, karna install aplikasi apa gitu yg perlu untuk cek statistik di server, apa ada install aplikasi monitoring server tuan? yg tidak terconfig dengan benar

atau bisa juga sedang ada yg coba login sebagai root dari aplikasi tuan, mungkin saja :)
 

dhyhost

Web Hosting Service
The Warrior
Verified Provider
optimasi apachenya, atau coba webserver yang lebih cepat
btw apa ram 16gb itu ngga kurang?
 

mustafaramadhan

Hosting Guru
Rasanya itu server belum dioptimasi disisi mysql, apache dan bahkan mungkin phpnya sendiri.
 

BUANA dotnet

Hosting Guru
Verified Provider
process untuk database mysqlnya sih tuan kalo di liat dari command top

kalo untuk profilling sendiri fungsinya untuk ngukur spek servernya ya tuan ? atau ada maksut lain ?

ok bener apache nya yg banyak pake..


coba baca2 ini buat tune:
https://www.liquidweb.com/kb/apache-performance-tuning-apache-mpm-modules/
https://www.liquidweb.com/kb/apache-performance-tuning-swap-memory/

tapi kalo beneran 40k users bersamaan, keliatannya memang perlu multi server+load balancer
kecuali tiap akses cuma ambil data kecil2, masih bisa ditolerir, queue dikit2
 

silentreader

Poster 2.0
kalau coba saya baca dari diskusi ini sepertinya tuan @primahendika sedang membutuhkan seseorang partner/jasa
ada yg bilang bisa menggunakan multiserver dengan loadbalancer, adakah disini yg menyediakan jasa konsultasi dalam masalah server ? saya berniat mencari partner dalam urusan server yang akan saya berikan fee di setiap konsultasi
jadi intinya kalau tuan tuan disini yang ahli dan siap mengetahui seluk beluk server, apalagi sedang kosong waktu ,... segera sergap tuan @primahendika ini lewat inbox siapa tau jadi partner abadi wallahu'alam
saya kurang tau detail untuk proses apanya, saya menggunakan framework laravel untuk backend, dan react native untuk appnya,
biasanya cpu mentok saat traffic lagi rame ramenya, biasanya user registrasi, user upload transaksi, dan load promo yg isinya image

jujur balik lagi saya kurang mengerti server
biarlah setiap orang pada keahlian porsinya masing masing
karena tidak ada orang seperti supermen yang melakukannya sendirian (supremen pun kalau disurunh ngoding mungkin mendadak botak :v )
saya handle, development & pengembangan app nya tuan, makanya butuh partner untuk handle servernya

saat ini kan pake apache, jadi sarannya bagusan pake nginx ya tuan ?
maaf jika kata kata saya kalau sesuai dengan yg ts maksud,... maaf mau tanya ngomong ngomong singkatan dari "ts" itu apa ?
 

paijrut

Poster 2.0
coba pakai litespeed Tuan.. sama mysql nya kalau pakai innodb buffer nya naikin.. kalau dilihat dr top nya load average nya masih acceptable.. kalau 40rb user barengan ada kemungkinan bottleneck di bandwidth juga bisa.. tinggal di throtle aja tiap user bw nya.. saya cm pakai cpu E3 buat wp pageviews 40rb sehari aja masih longgar kok..
 

Milea Adnan

Expert 1.0
Dilihat dari top dan menganalisa dari spek servernya sih menurut saya masih mencukupi untuk 40ribu user.
Artinya aplikasi yang dibangun menggunakan laravel + react-native nya masih terbilang simple.

Mungkin langkah-langkah berikut bisa dibuat sebagai acuan untuk meng-optimize servernya secara garis besarnya :
  1. Karena storagenya SSD, coba di cek filesystemnya menggunakan apa ? jika menggunakan ext4, maka perlu di optimasi filesystem ext4-nya.
  2. Klaimnya menggunakan RAM 16GB, tapi terlihat di top, hanya terdeteksi total 8GB, silakan dicek kembali ke DS provider-nya, mungkin salah ambil spek.
  3. Daemon yang grab resource tinggi itu adalah MySQL. Mungkin bisa di optimasi dengan cara membesarkan nilai parameter-parameter khususnya mengenai buffering. Mengenai DB Engine bebas, asal nilai buffering engine-nya dibesarkan sesuai rumus-rumus yang telah banyak di publikasikan.
  4. Dari sisi coding, terutama untuk query sql nya coba di audit kembali, sebisa mungkin di sederhanakan, utamanya terhadap JOIN.
  5. Kalau menguasai Store Procedure di mysql, lebih baik digunakan juga, karena itu juga sangat membantu mengurangi proses query.
  6. Juga perlu dipertimbangkan menggunakan teknik sql caching seperti menggunakan memcache atau redis. Ini juga membantu mengurangi proses query langsung ke ssd/storage.
  7. Selain optimasi diatas, juga perlu dipertimbangkan me-replace MySQL dengan MariaDB atau Percona.
  8. Mengenai banyaknya root@ access denied di log mysql.err, sebaiknya port mysql ditutup dan hanya dibuka untuk localhost saja.
  9. Era Big-Data sekarang ini, rasanya SQL sudah mulai ditinggalkan, untuk kemudian beralih ke jenis NoSQL, mungkin bisa dipertimbangkan juga di sisi codingnya.
  10. Webserver, mungkin juga bisa me-replace Apache dengan Tengine. Atau yg berbayar seperti Litespeed.
 

Top