Tencent သည် ဗားရှင်းအသစ်ကို ထုတ်ပြန်လိုက်ပြီဖြစ်သည်။ F-Stack 1.13၊ DPDK နှင့် FreeBSD TCP/IP stack ကို အခြေခံထားသော မူဘောင်။ framework အတွက် အဓိက platform ကတော့ Linux ပါ။ ကုဒ်ကို BSD လိုင်စင်အောက်တွင် ဖြန့်ဝေထားသည်။
မူဘောင်သည် အပလီကေးရှင်းများအား လည်ပတ်မှုစနစ်စတက်ကို ကျော်ဖြတ်ရန် ခွင့်ပြုပြီး ကွန်ရက်ဟာ့ဒ်ဝဲနှင့် တိုက်ရိုက်အလုပ်လုပ်သော အသုံးပြုသူနေရာများတွင် အကောင်အထည်ဖော်သည့် stack တစ်ခုကို အသုံးပြုခွင့်ပြုသည်။
မူဘောင်၏ ဖော်ပြပါအင်္ဂါရပ်များထဲတွင်-
- ကွန်ရက်ကတ်များ အပြည့်တင်နိုင်သည်- အသက်ဝင်သော ကွန်ရက်ချိတ်ဆက်မှု 10 သန်း၊ RPS 5 သန်းနှင့် CPS 1 သန်း ရရှိခဲ့သည်
- FreeBSD 11 မှ userspace stack ကို ပြောင်းရွှေ့ပြီး ကွန်ရက်စွမ်းဆောင်ရည်ကို များစွာတိုးတက်စေသည့် မရှိမဖြစ်လိုအပ်သော အင်္ဂါရပ်များစွာကို ဖယ်ရှားလိုက်သည်
- Nginx နှင့် Redis ပံ့ပိုးမှု။ အခြားအပလီကေးရှင်းများသည် F-Stack ကိုသုံးနိုင်သည်။
- Multi-Process Architecture ကြောင့် ချဲ့ထွင်ရလွယ်ကူခြင်း။
- microflows များအတွက် အထောက်အပံ့ပေးသည်။ အပလီကေးရှင်း အမျိုးမျိုးသည် ရှုပ်ထွေးသော အပြိုင်အဆိုင် ယုတ္တိဗေဒကို အကောင်အထည် မဖော်ဘဲ စွမ်းဆောင်ရည် မြှင့်တင်ရန် F-Stack ကို အသုံးပြုနိုင်သည်။
- ပုံမှန် epol/kqueue APIs များကို ပံ့ပိုးထားသည်။
ဗားရှင်းအသစ်တွင်-
- ပေါင်းထည့်ထားသော အင်တာဖေ့စ် ff_dup၊ ff_dup2၊ ff_ioctl_freebsd၊ ff_getsockopt_freebsd၊ ff_setsockopt_freebsd
- အဝင်ပက်ကေ့ခ်ျများမရှိသောအခါ CPU အသုံးပြုမှုကို လျှော့ချရန် "idle_sleep" ရွေးစရာကို ထည့်ထားသည်။
- arm64 ပံ့ပိုးမှုထည့်ထားသည်။
- Docker ပံ့ပိုးမှုကို ပေါင်းထည့်ထားသည်။
- vlan ပံ့ပိုးမှုထည့်ထားသည်။
- F-Stack အတွက် nginx အကောင်အထည်ဖော်မှုတွင် getpeername၊ getsockname၊ shutdown လုပ်ဆောင်ချက်များကို အစားထိုးခဲ့သည်။
- DPDK ဗားရှင်း 17.11.4 LTS သို့ အပ်ဒိတ်လုပ်ထားသည်။
source: linux.org.ru