This is kihanb
Kanalga Telegram’da o‘tish
اینجا یکی از قدیمی ترین کانال های تلگرام حداقل توی حوزه ای هست که من فعالیت دارم که البته دوسالی هست تبدیل به دیلی و آپدیت کارهام شده چون دلم نیومد پاکش کنم، اغلب اوقات مطالب مفیدی نداریم ولی خب همیشه اپدیت پروژه ها و کار هامو اینجا به اشتراک میذارم.
Ko'proq ko'rsatish3 466
Obunachilar
-124 soatlar
+17 kun
-2930 kun
Postlar arxiv
3 466
اینطور پستی خوراک لینکدینه، ولی خب از جهتی که حوصله فعالیت توی لینکدین ندارم پس نمیزارمش
3 466
بخشی از هسته داخلی هات داگ، وظیفه بروزرسانی اطلاعات پایگاه داده بر اساس پایگاه داده های خارجی مثل IMDB و MyAnimelist و... رو به عهده داره و درصورتی هم که داده ای نقصان داشته باشه جمع آوری و تکمیل میکنه.
خلاصه اینکه این ورکر وظیفه اش اینه که داده هارو بررسی، اصلاح و تکمیل کنه، بخشی از این اطلاعات هم دریافت متادیتاها، لیست بازیگران و... هست، دریافت و بروزرسانی این اطلاعات میتونه تا چند ساعت طول بکشه و بیشتر از چندهزار ریکورد توی دیتابیس ایجاد کنه، منم برای اینکه صحت و جامعگی اطلاعات توی پایگاه داده حفظ بشه تمام این بلاک های کد و تغییراتی که انجام میدن رو در قالب یه transaction دیتابیس اجرا میکردم، این قابلیت یه خاصیتی داره که رکورد هایی که ایجاد یا تغییر میدی رو تا زمانی که commit نکنی بصورت واقعی اجرا نمیشن و هرجا به هرمشکلی برخوردی میتونی خیلی راحت تر مدیریت کنی و در صورت لزوم rollback یا دراپ کنی و تغییرات بی اثر بشن.
من توی یکی از بلاک های کد مربوط به imdb یه شرط گذاشته بودم که اگه ایدی که برای اون عنوان ثبت شده اشتباه باشه اجرای ادامه کد رو بیخیال بشه، درصورتی که transaction (یا تراکنش) از قبلش شروع شده بود و توی این کیس سناریو، نه کامیتی صورت میگیرت و نه رولبک، و کد وارد بلاک دیگه ای میشد که هیچ تراکنشی ایجاد و مدیریت نمیشد، در نتیجه تا اخر اجرای کد تمامی تغییرات روی پایگاه داده در ادامه همون تراکنش باز انجام میشد و در نهایت هم وضعیت تراکنش تکمیل نمیشد.
وقتی هم داشتم ورکر رو تست میکردم، میدیدم بخش هایی ازش به درستی اجرا میشن ولی هیچ ریکوردی توی دیتابیس ساخته نمیشه، کوئری هارو شبیه سازی کردم، تست کردم و هیچ مشکلی توی کوئری ها یا منطق کدها پیدا نکردم، تا اینکه وسط اجرای ورکر، ورکر رو کیل کردم و وقتی که دوباره کوئری هارو تست کردم دیدم که یکی از جدول ها لاک شده، گشتم و گشتم تا یه تراکنش رسیدم که جدول رو لاک کرده بود ولی توی حالت sleep بود، که مشخص بود از همین ورکره اس چون هیچ پروسه دیگه ای حق نوشتن روی اون جدول رو نداشت، وقتی برگشتم روی کد ببینم که کجا و کدوم کوئری ممکنه جدول رو لاک کرده باشه یادم افتاد توی بلوک بالاییش دارم تراکنش میسازم، رفتم سراغش دیدم اره توی کیسی که توضیح دادم تراکنش بسته نمیشه، و علت اینکه تغییرات ثبت نمیشدن یا وسط کار ورکر کیلش کردم جدول لاک مونده بخاطر این تراکنش مدیریت نشده اس!
خلاصه اینکه بعضی از باگ های منطقی، توی کیس های خاصی رخ میدن که توی هیچ تستی شبیه سازی نشدن، و با برهمکنش با بخش های دیگه برنامه یا پروژه، ممکنه دنبال کردن و دیباگ کردنش رو سخت تر کنه، من توی این پروژه از هوش مصنوعی یا وایب کدینگ استفاده نکردم ولی احتمال اینکه اینطور سناریویی هم هوش مصنوعی خلق کنه بالاست، وقتی وایب کدینگ میکنید حواستون به این جزئیات و سناریوها باشه.
3 466
🔴 صداوسیما:
ارتش اعلام کرده امروز از ساعت 8 صبح تا 1 ظهر قراره مهمات منفجرنشده باقیمونده از جنگ رو تو مناطق جنوبی اصفهان، بهارستان و صفه با انفجارهای کنترلشده از بین ببره؛
مردم این مناطق اگه صدای انفجار شنیدن، نگران نباشن، این صداها مربوط به همین عملیاته.
3 466
امروز بابام رفت مخابرات پیگیری کنه که ۲هفته اس چرا پول مارو نمیدن
نه تنها وصل نشد، اتصال فیبرنوری هم قطع شد
3 466
فردا صبح میگم چیشد، باگ ساده ای بود ولی از جلوی چشم دور افتاده بود، با هیچ تست و تریس و... پیداش نمیشد و خیلی رندوم فهمیدم که اره
3 466
اینترنت سیمکارتم اینطوری شده که یه ربع قطعه 2 دقیقه بزور وصله در حدی که یه کامند هم نمیتونم توی ssh بزنم، قطع هم میشه با قطع اینترنت یا حالت پرواز هم برنمیگرده ولی اگه ussd بگیرم وصل میشه
3 466
"دخترا موجودات عجیبی هستن، نمیتونم ارتباط برقرار کنم"
"اعتماد به نفس ندارم به دختره پیام یا پیشنهاد بدم"
دخترا:
3 466
خلاصه اینکه یکم بهم برخورد که طرف انقدر ساده لوحانه با زحمت و تلاش هایی که توی این چندسال داشتم برخورد کرد ولی خب جوری بهش فهموندم که سریع عقب کشید فهمید ادم و پروژه اشتباهی رو برای به چالش کشیدن انتخاب کرده!
