Mengatasi masalah kinerja Redmine (Bitnami Stack)

9

Saya punya instance Redmine (Bitnami Stack) yang luar biasa lambat. Karena saya hanya mencoba untuk menyelesaikan ini, saya punya beberapa teori yang ingin saya bahas di sini. Jadi, jika ada yang punya ide tentang ini, jangan ragu untuk membantu :-)

Sistem:

Bitnami Stack dengan Redmine 1.4.x ditingkatkan ke Bitnami Stack dengan Redmine 2.1.0 seperti ini:

  • mysqldump'd database lama
  • menginstal Bitnami Stack baru dengan Redmine 2.1.0
  • mengimpor dump dengan rapi dengan membuat ulang semua tabel
  • rake db: bermigrasi dan semua itu

Tumpukan berjalan pada Mesin Virtual dengan OpenSUSE 12.1. Sumber daya seharusnya tidak menjadi masalah, karena selalu ada beberapa gigabytes RAM dan paku CPU gratis pada permintaan Redmine hanya mencapai 50% dari 2 core CPU. Juga, hanya ada beberapa pengguna yang mengaksesnya.

Apa yang mungkin sangat penting: Login pengguna ditangani melalui LDAP (ActiveDirectory).

Masalah:

Pada setiap permintaan, Redmine bereaksi sangat lambat. Terkadang butuh 3 detik, terkadang bahkan hingga 10 detik untuk mengirim halaman.

Pikiran saya:

  • Saya tidak tahu apakah "Pembuatan pengguna langsung" dicentang di pengaturan LDAP Redmine, saya hanya dapat memeriksa yang ini hari ini. Tapi bisakah kurangnya cek di sini menjadi masalah? Otentikasi memerlukan waktu saat masuk yang normal dan diakui. Tetapi ketika tidak membuat pengguna dengan cepat, apakah hanya menyimpan satu sesi atau mengautentikasi ulang pada setiap permintaan, sehingga bisa menjadi masalah?
  • Apakah Redmine 2.x mungkin jauh lebih lambat dari 1.4.x sehingga itu biasa saja?
  • Apakah konfigurasi Apache2 + Penumpang Bitnami salah?
  • Indeks MySQL tidak akan menjadi masalah mengingat fakta bahwa MySQL sangat tenang pada CPU, bukan?

Satu hal lagi yang tampaknya sangat aneh bagi saya, tetapi mungkin hasil pengukuran yang salah (perlu memeriksa kembali besok ketika saya melihat mesin):

Saya mencoba memeriksa apakah itu masalah jaringan (reaksi jaringan lambat, mungkin DNS atau sesuatu; server ada di jaringan lokal). Sepertinya permintaan di localhost (Browser langsung di OpenSUSE VM) cepat, tetapi permintaan melalui jaringan tidak. Biasanya, saya akan memikirkan masalah jaringan, tetapi yang aneh adalah: Ketika benar-benar mengukur waktu koneksi, jaringan cepat sekali. Ping bagus, waktu pengiriman statis juga. Sepertinya hanya halaman terhitung sisi Redmine yang perlahan-lahan dikirim oleh server aplikasi sementara Apache masih cepat - tetapi hanya ketika permintaan adalah permintaan LAN jarak jauh. Sangat aneh ... tetapi seperti yang saya sebutkan di atas, saya harus memeriksa ulang yang ini. Sepertinya tidak masuk akal bagi saya.

arnekolja
sumber
Apakah Anda mendapat umpan balik - atau apakah Anda menemukan sesuatu?
Anthony Horne
2
Ini mungkin juga merupakan bandwidth disk atau mencari masalah waktu. Bagaimana hal terlihat di atas, dan khususnya, bagaimana hi, waktu mengganggu perangkat keras?
Falcon Momot
Apakah Anda mengaksesnya dengan domain dengan DNS lokal? Apakah Anda mengaksesnya sebagai localhost di dalam VM dan berfungsi dengan baik? Bisakah Anda mencoba mengaksesnya dengan IP VM? Sudahkah Anda mengatur nama host dengan benar dalam konfigurasi Redmine dan Apache?
Sohail Ahmed
Apakah Anda menjalankan VM pada penyimpanan lokal di server, atau pada nfs / iscsi jarak jauh?
Marco

Jawaban:

0

Coba periksa kembali log redmine jika ada masalah terkait dengan pemrosesan halaman atau login pengguna jika Anda menganggap login LDAP AD sebagai kesalahan.

Periksa juga apache dan log mySQL - server web mungkin sibuk dengan hal lain atau ruby ​​mungkin macet saat membuat plugin yang tidak didukung misalnya. MySQL mungkin menjalankan kueri yang berjalan lama dan seterusnya ..

Jika Anda me-restart semua layanan yang melayani instance redmine - apakah berjalan cepat di awal dan melambat setelah beberapa saat atau lambat dari awal?

Seperti yang disebutkan di bagian komentar - Disk IO juga bisa salah. Cobalah untuk mengekor log server web saat Anda mengeklik antarmuka web redmine untuk mengetahui apa yang paling banyak memakan waktu untuk merender.

Coba juga untuk menguji koneksi jaringan Anda ke instance redmine (tidak hanya dengan ping / ICMP) tetapi juga mencoba memuat beberapa konten statis (unduh) atau mendorong beberapa file (unggah) melalui port 80 atau 443.

Cobalah untuk mengukur kehilangan paket, waktu perjalanan dan jitter (berapa banyak paket yang keluar dari urutan) untuk mengetahui apakah jaringan tidak bersalah.

Roman Spiak
sumber