কিনো হল একটি উচ্চ‑পারফরম্যান্স Ractor ওয়েব সার্ভার, Ruby 4.0+ এর জন্য। Ruby থ্রেডগুলো কোডকে সমান্তরালভাবে চালাতে পারে না, তাই প্রোডাকশন সেটআপগুলো প্রতিটি কোরের জন্য একটি প্রক্রিয়া ফর্ক করে এবং মেমরিতে প্রতিটি কপির জন্য অর্থ প্রদান করে। কিনো আপনার কোডকে একটি ছোট প্রক্রিয়ায় প্রতিটি কোরে চালায়। একটি Rust (tokio + hyper) ফ্রন্ট‑এন্ড নেটওয়ার্কের মালিক; সমান্তরাল Ractor ওয়ার্কাররা আপনার Rack 3 অ্যাপ চালায়, এবং একটি থ্রেডেড ফ্যালব্যাক মোড Rails সহ সবকিছু চালায়। দ্রুত। একটি বাস্তব 8‑কোর সার্ভারে, প্রতিটি কিনো মোড I/O‑লাইট এন্ডপয়েন্টে Puma ফর্ক ক্লাস্টারের চেয়ে 1.5‑2× এগিয়ে। র্যাক্টর মোডও বিশুদ্ধ CPU তে 30 %+ জিতে। নিচে বেঞ্চমার্ক। মেমরির একটি অংশ। সরল বেঞ্চ Ractor অ্যাপে প্রায় 7×, এবং ফ্যালব্যাক থ্রেড মোডে Rails পরিবেশনকারী Puma ক্লাস্টারের চেয়ে প্রায় 4× কম মেমরি। ফর্ক ছাড়া সমান্তরাল।
র্যাক্টর মোড একই ছোট প্রক্রিয়ায় CPU কাজকে Kino এর নিজস্ব GVL‑bound থ্রেডেড মোডের চেয়ে 5× এর বেশি দ্রুত চালায়। প্রোডাকশন পাইপলাইন অন্তর্ভুক্ত: গ্রেসফুল ড্রেন, ক্র্যাশ সুপারভিশন ও রিস্পন, 503 ব্যাকপ্রেশার সহ সীমিত কিউ, রিকোয়েস্ট টাইমআউট, হার্ডেনড ইনটেক (slowloris ও TLS‑হ্যান্ডশেক ডেডলাইন, কানেকশন ও বডি‑সাইজ ক্যাপ), আপনার এরর ট্র্যাকার জন্য on_error হুক, TLS (rustls), লাইভ স্ট্যাটস, অ্যাসিঙ্ক অ্যাক্সেস ও অ্যাপ লগিং। এটি আপনাকে বলে কেন।
কিনো এর CLI ও কনফিগ DSL Puma‑আকৃতির; আপনি যদি Puma চালাতে পারেন, তাহলে কিনো চালাতে পারেন।
উৎস: Hacker News · সারাংশ: HeadlinesBriefing