Peringkat kerangka kerja web berkecepatan tinggi 2020



Saya bingung beberapa hari yang lalu dengan memilih solusi untuk server backend dari satu pembangun situs yang dimuat. Arsitektur saat ini dibangun di atas kerangka MVC populer di PHP lama yang bagus. Kerangka kerja seperti itu bagus untuk pengembangan cepat sejumlah besar fungsi dan awal yang cepat, kita semua tahu ini. Hanya setelah permulaan ini, momen segera datang ketika kemacetan muncul yang membutuhkan peningkatan kinerja dan kerangka kerja universal yang biasa tidak dapat lagi mengatasinya.

Dalam proses menemukan solusi, saya menemukan analisis kecepatan pemrosesan permintaan untuk sejumlah besar kerangka kerja yang ada saat ini. Saya memilih mereka yang memiliki lebih dari 5.000 bintang di GitHub dan yang memproses lebih dari 150.000 permintaan per detik. Dalam rumus untuk menghitung peringkat, parameter kedua kuadrat, karena fluktuasi bintang-bintang jauh lebih besar.

Hasilnya, rumusnya adalah sebagai berikut:
Jumlah bintang di GitHub * (Jumlah permintaan per detik) ^ 2

Pemimpin yang berani dalam hal kecepatan pemrosesan permintaan disorot.

1. Beego [go] - 359 279
2. Gin [go] - 252 895
3. FastHttp [go] - 420 498
4. Echo [go] - 262 940
5. ASP.NET Core[csharp] - 263 725
6. Workerman [php] - 349 897
7. Mux [go] - 263 585
8. Koa [js] - 159 032
9. Sempurna [cepat] - 218 634
10. Chi [pergi] - 274 507
11. Fastify [js] - 177 372
12. Falcon [python] - 208 805
13. Botol [python] - 168 776
14. Ktor [kotlin] - 162 842
15. owboy [elixir] - 160 063

Pengukuran jumlah permintaan dalam kedua dilakukan dengan menggunakan wrk. Mekanisme penghitungan didasarkan pada jawaban dalam tiga skenario:
- membuka halaman utama dengan jawaban 200 dan konten kosong
- membuka halaman / pengguna dengan jawaban 200 dan konten kosong
- membuka halaman / user / __ ID__ dengan jawaban 200 dan c __ID__ dalam konten.

Jika Anda tidak menemukan kerangka favorit Anda, maka lihat di sumbernya, di sana ada lebih dari seratus. Jika tidak ada, maka akan segera muncul dan peringkat akan ditinjau. Anda dapat mempercepat ini dengan membuat permintaan tarikan dengan kerangka kerja Anda.

Sumber data: GitHub dan kerangka kerja web.

Jika Anda memiliki pengalaman menggunakan kerangka kerja ini, saya akan senang untuk berdiskusi dengan Anda dalam komentar.

Source: https://habr.com/ru/post/undefined/


All Articles