Hacker News

Kombisa HN: Deadlog – kwalomu ka drop-in mutex yo lulamisa swihoxo Go deadlocks

\u003ch2\u003eKombisa HN: Deadlog – ku lava ku hoxa mutex yo lulamisa swihoxo Go deadlocks\u003c/h2\u003e \u003cp\u003ePositi leyi ya Hacker News "Show HN" yi humesa phurojeke ya vutumbuluxi kumbe xitirhisiwa lexi tumbuluxiweke hi vaendli va vaaki. Nkandziyiso wu yimela vutumbuluxi bya xithekiniki na ku tlhantlha swiphiqo hi ku tirha...

6 min read Via github.com

Mewayz Team

Editorial Team

Hacker News
\u003ch2\u003eKombisa HN: Deadlog – ku lava ku hoxa mutex yo lulamisa swihoxo Go deadlocks\u003c/h2\u003e \u003cp\u003ePositi leyi ya Hacker News "Show HN" yi humesa phurojeke ya vutumbuluxi kumbe xitirhisiwa lexi tumbuluxiweke hi vaendli va vaaki. Ku rhumeriwa ku yimela vutumbuluxi bya xithekiniki na ku tlhantlha swiphiqo hi ku tirha.\u003c/p\u003e \u003ch3\u003eSwihlawulekisi swa Phurojeke\u003c/h3\u003e \u003cp\u003eSwiyenge swa nkoka leswi endlaka leswaku phurojeke leyi yi xiyeka:\u003c/p\u003e \u003cul\u003e \u003cli\u003eMaendlelo ya xihlovo lexi pfulekeke yo tlakusa ntirhisano\u003c/li\u003e \u003cli\u003eNtlhantlho lowu tirhaka eka swiphiqo swa xiviri\u003c/li\u003e \u003cli\u003eVutumbuluxi bya xithekiniki eka nhluvukiso wa sofwere\u003c/li\u003e \u003cli\u003eKu nghenelela ka vaaki na ku antswisiwa loku fambiwaka hi mbuyelo\u003c/li\u003e \u003c/ul\u003e \u003ch3\u003eNkoka wa Xithekiniki\u003c/h3\u003e \u003cp\u003eMuxaka lowu wa phurojeke wu kombisa matimba ya nhluvukiso lowu fambiwaka hi vaaki na ku cinca loku yaka emahlweni ka swintshuxo swa xithekiniki hi ku tirhisa matshalatshala ya ntirhisano.\u003c/p\u003e

Swivutiso Leswi Vutisiwaka Nkarhi Na Nkarhi

I yini Deadlog naswona yi pfuna njhani ku debug Go deadlocks?

Deadlog i xihlovo lexi pfulekeke, lexi nga kusuhi na ku wisa lexi nga ta siviwa ka Go’s standard sync.Mutex lexi pfunaka vaendli ku kuma na ku kambela ku tsandzeka eka switirhisiwa swa nkarhi wun’we. Yi tirha hi ku logging lock acquisition order naku kuma ti circular dependencies leti endlaka leswaku ti goroutines ti lenga-lenga hilaha kunga heriki. Ematshan’wini yo languta hi tihlo ro tshwuka eka maendlelo lama titimelaka, u kuma swiviko leswi nga erivaleni leswi kombisaka kahle leswaku hi swihi swilotlelo leswi phikizanaka — ku hlayisa tiawara ta ku lulamisa swihoxo hi voko eka tikhodibase ta Go leti rharhanganeke ta nkarhi wun’we.

Ndzi nga yi hlanganisa njhani Deadlog eka phurojeke ya Go leyi nga kona?

Ku hlanganisiwa swi kongomile tanihileswi Deadlog yi endleriweke tanihi ku siva loku nga kusuhi no drop-in. U cincana sync.Mutex na muxaka wa mutex wa Deadlog eka khodi ya wena, hi ntolovelo swi lava ntsena ku cinca ka ndlela yo nghenisa na ku cinca lokutsongo. Yi endle yi tirha hi nkarhi wa nhluvukiso na ku kamberiwa, kutani u yi tshikisa eka vuhumelerisi ku papalata ku tlula mpimo. Eka swipano leswi lawulaka ti microservices to tala ta Go, tipulatifomo to fana na Mewayz ti nyika mimojula ya 207 hi $19/mo leyi nga olovisaka maendlelo ya ntirho ya ku tirhisiwa etlhelo ka switirhisiwa swo lulamisa swihoxo swo fana na Deadlog.

Xana Deadlog yi nga tirhisiwa hi ku hlayiseka eka tindhawu ta vuhumelerisi?

Deadlog ngopfungopfu yi kongomisiwile eka tindhawu ta nhluvukiso na ku veka switeji. Switirhisiwa swi engetela matirhelo ya le henhla hi ku landzelerisa swilotlelo na ku tsema mirhi, leswi endlaka leswaku swi nga ringanelanga eka ndzhwalo wa ntirho wa vuhumelerisi lowu nga na vuxiyaxiya bya latency. Endlelo leri ringanyetiweke i ku endla leswaku Deadlog hi nkarhi wa ku kamberiwa na tiphayiphi ta CI ku khoma swilo leswi nga tirhiki loko ti nga si fika eka vuhumelerisi. Loko se u kumile no lulamisa timhaka ta ku kanetana, cinca endzhaku eka sync.Mutex ya ntolovelo ku kuma matirhelo lamanene ya nkarhi wo famba.

Hi swihi swivangelo leswi tolovelekeke swa ku nga tirhi kahle eka Go, naswona ndzi nga swi sivela njhani?

Ti-deadlock eka Go hi ntolovelo ti humelela eka ku odawa ka swilotlelo loku nga fambelaniki, swilotlelo leswi pfanganisiweke leswi kumiweke hi ku landzelelana ko hambana, kumbe ti-goroutines leti rindzeleke eka tichanele leti nga si tshamaka ti amukela mimpimo. Maendlelo yo sivela ya katsa ku tshama u kuma swilotlelo hi ku landzelelana ka misava hinkwayo loku nga cincekiki, ku tirhisa ku hela ka nkarhi na context.Context, na ku tirhisa switirhisiwa swo fana na Deadlog ku kuma ka ha ri na nkarhi. Mimojula ya nhluvukiso ya 207 ya Mewayz, leyi kumekaka hi $19/mo, yi katsa switirhisiwa eka maendlelo lamanene ya Go concurrency ku pfuna swipano ku aka switirhisiwa leswi tiyeke, leswi nga riki na ku pfaleka.