Show HN: Deadlog – Go-ийн түгжрэлийг дибаг хийхэд зориулагдсан бараг унадаг мутекс
\u003ch2\u003eShow HN: Deadlog – Go-ийн түгжрэлийг дибаг хийхэд зориулагдсан бараг унадаг мутекс\u003c/h2\u003e \u003cp\u003e Энэхүү хакерын мэдээний "Show HN" нийтлэл нь хөгжүүлэгчдийн нийгэмд зориулан бүтээсэн шинэлэг төсөл эсвэл хэрэгслийг толилуулж байна. Илтгэл нь техникийн шинэчлэл, асуудлыг шийдвэрлэх арга замыг төлөөлдөг...
Mewayz Team
Editorial Team
Байнга асуудаг асуултууд
Deadlog гэж юу вэ, энэ нь Go-ийн түгжрэлийг арилгахад хэрхэн тусалдаг вэ?
Deadlog нь нээлттэй эх сурвалжтай, Go-н стандарт sync.Mutex-г орлуулах шахам орлуулах программ бөгөөд хөгжүүлэгчдэд нэгэн зэрэг хэрэглэгдэж буй программуудын түгжрэлийг илрүүлж, оношлоход тусалдаг. Энэ нь цоож авах дарааллыг бүртгэж, горутиныг тодорхойгүй хугацаагаар гацахад хүргэдэг дугуй хамаарлыг тодорхойлох замаар ажилладаг. Та царцаасан процессуудыг ширтэхийн оронд яг ямар түгжээтэй зөрчилдөж байгааг харуулсан тодорхой тайлангуудыг авах бөгөөд энэ нь Go-ийн нарийн төвөгтэй нэгэн зэрэг кодын үндсэн дээр гар аргаар дибаг хийхэд цаг хэмнэнэ.
Би Deadlog-г одоо байгаа Go төсөлд хэрхэн нэгтгэх вэ?
Deadlog нь бараг унадаг орлуулалт хэлбэрээр бүтээгдсэн тул интеграцчлал нь маш энгийн. Та sync.Mutex-г өөрийн кодын Deadlog-ийн мутекс төрлөөр сольдог бөгөөд ихэвчлэн зөвхөн импортын замыг өөрчлөх, хамгийн бага дахин боловсруулах шаардлагатай байдаг. Үүнийг хөгжүүлэлт болон туршилтын явцад идэвхжүүлж, дараа нь нэмэлт ачааллаас зайлсхийхийн тулд үйлдвэрлэлд идэвхгүй болго. Олон Go микро үйлчилгээг удирдаж буй багуудын хувьд Mewayz зэрэг платформууд Deadlog гэх мэт дибаг хийх хэрэгслүүдийн хамт байршуулах ажлын урсгалыг хялбарчлах боломжтой 207 модулийг сард 19 доллараар санал болгодог.
Deadlog-г үйлдвэрлэлийн орчинд аюулгүй ашиглаж болох уу?
Deadlog нь үндсэндээ хөгжүүлэлт болон үе шатлалын орчинд зориулагдсан. Төхөөрөмж нь түгжээг хянах, бүртгэл хөтлөх замаар гүйцэтгэлийн нэмэлт зардлыг нэмдэг бөгөөд энэ нь хоцролтод мэдрэмтгий үйлдвэрлэлийн ажлын ачаалалд тохиромжгүй болгодог. Санал болгож буй арга бол туршилтын явцад Deadlog болон CI дамжуулах хоолойнуудыг үйлдвэрлэлд хүрэхээс нь өмнө гацааг арилгахын тулд идэвхжүүлэх явдал юм. Та маргаантай асуудлуудыг тодорхойлж, шийдвэрлэсний дараа хамгийн оновчтой ажиллахын тулд стандарт sync.Mutex руу буцна уу.
Go-д гацах нийтлэг шалтгаан юу вэ, би түүнээс хэрхэн сэргийлэх вэ?
Go дахь түгжрэл нь ихэвчлэн түгжээний дараалалд нийцэхгүй байх, өөр өөр дарааллаар олж авсан үүрлэсэн цоожууд эсвэл хэзээ ч утгыг хүлээн авдаггүй сувгууд дээр хүлээгдэж буй гажигуудаас үүсдэг. Урьдчилан сэргийлэх стратегид түгжээг тогтмол дэлхийн дарааллаар авах, context.Context-тай завсарлага ашиглах, эрт илрүүлэх зорилгоор Deadlog гэх мэт хэрэгслүүдийг ашиглах зэрэг орно. Сард $19 үнээр авах боломжтой Mewayz-ийн 207 хөгжүүлэлтийн модуль нь багууд бат бөх, түгжрэлгүй аппликейшн бүтээхэд туслах Go concurrency шилдэг туршлагуудыг багтаасан болно.
We use cookies to improve your experience and analyze site traffic. Cookie Policy