Forwarded from Armon technical logs (armon Taheri)
Paravirtualization
همیشه برام یه بخشی از کتاب
LPIC-3 Virtualization and Containerization
بود و خیلی فرصت نشد که سمتش برم
این ارایه خیلی مختصر مفید و پرکتیکال سولوشن xen رو معرفی میکنه
https://youtu.be/vls88DuOO_o
همیشه برام یه بخشی از کتاب
LPIC-3 Virtualization and Containerization
بود و خیلی فرصت نشد که سمتش برم
این ارایه خیلی مختصر مفید و پرکتیکال سولوشن xen رو معرفی میکنه
https://youtu.be/vls88DuOO_o
YouTube
Xen for Beginners - Bryan Smith, Tacit Labs, Inc.
When you first approach Xen there are a lot of foreign terms, concepts and nomenclature that can confuse you and make things incomprehensible. In this talk I'll give an overview of Xen that is easy to comprehend for beginners and novices. I'll also demystify…
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Forwarded from چنل شخصی سید رحیم فیروزی
دو نگاه متفاوت به Project Layout در گولنگ
(انتخاب میان سادگی گولنگ و جذابیت ستارههای بالا)
مدتهاست دو الگوی مشهور برای ساختاردهی پروژههای گولنگ مطرح هستند:
۱. الگوی پیشنهادی در سایت رسمی گولنگ:
https://go.dev/doc/modules/layout
۲. ریپوزیتوری پرطرفدار golang-standards/project-layout در گیتهاب:
https://github.com/golang-standards/project-layout
ریپوزیتوری گیتهاب تعداد زیادی ستاره دارد؛ عددی که ممکن است در نگاه اول تصمیمگیری را سخت کند. و تردید ایجاد کند که «نقدی به آن وارد نیست و من اشتباه میکنم» اما با وجود این محبوبیت، من دیدگاه خودم را بیان میکنم
گولنگ بر فلسفهای ساده بنا شده است؛ فلسفهای که در اسناد رسمی آن کاملاً مشهود است. ساختار رسمی، ساده، شفاف و مستقیم است. اما لایوت پرستارهی گیتهاب، با وجود اعلام صریح در README که «استاندارد رسمی نیست»، اما با انتخاب نام golang-standards برای ریپوزیتوری گیتهاب خود و نوع ارائه خود رگههایی از پیچیدگی و استانداردسازی غیررسمی را ارایه میدهند. که ممکن است به کاربر مبتدی القا کند که استاندارد رسمی است.
از دید من، ساختار پروژه باید نتیجه معماری باشد، نه یک الگوی تحمیلی. اگر معماری دامنهمحور، سرویسمحور یا چندلایه انتخاب کردهاید، این انتخاب باید در ساختار پوشهها نمود پیدا کند. شکل نهایی پروژه باید بر اساس نوع معماری ساخته شود، نه بر اساس یک قالب عمومی که پیش از شناخت نیازها اعمال شده باشد.
در نهایت، احترام برای هر دو دیدگاه محفوظ است؛ اما انتخاب من همچنان همان خط رسمی گولنگ است:
سادگی، شفافیت و ساختاری که دقیقاً از نیاز معماری ساخته شود، نه بالعکس.
البته نمیشود ترند بودن یک ابزار، معماری و ... یا project layout را نادیده گرفت. توجه افراد زیاد خود، میتواند اعتبار بیاورد.
برای من، نقطه شروع درست همان الگوی رسمی Go است و هرگونه پیچیدگی ساختاری باید تنها زمانی افزوده شود که پروژه و معماری آن توجیه کافی برای افزایش لایهها و بخشها داشته باشد و نام گذاری بر عهده من باشد نه برحسب الگوی خشک با کمترین انعطاف.
موفق باشید! 🌹
@srfirouzi_channel
(انتخاب میان سادگی گولنگ و جذابیت ستارههای بالا)
مدتهاست دو الگوی مشهور برای ساختاردهی پروژههای گولنگ مطرح هستند:
۱. الگوی پیشنهادی در سایت رسمی گولنگ:
https://go.dev/doc/modules/layout
۲. ریپوزیتوری پرطرفدار golang-standards/project-layout در گیتهاب:
https://github.com/golang-standards/project-layout
ریپوزیتوری گیتهاب تعداد زیادی ستاره دارد؛ عددی که ممکن است در نگاه اول تصمیمگیری را سخت کند. و تردید ایجاد کند که «نقدی به آن وارد نیست و من اشتباه میکنم» اما با وجود این محبوبیت، من دیدگاه خودم را بیان میکنم
گولنگ بر فلسفهای ساده بنا شده است؛ فلسفهای که در اسناد رسمی آن کاملاً مشهود است. ساختار رسمی، ساده، شفاف و مستقیم است. اما لایوت پرستارهی گیتهاب، با وجود اعلام صریح در README که «استاندارد رسمی نیست»، اما با انتخاب نام golang-standards برای ریپوزیتوری گیتهاب خود و نوع ارائه خود رگههایی از پیچیدگی و استانداردسازی غیررسمی را ارایه میدهند. که ممکن است به کاربر مبتدی القا کند که استاندارد رسمی است.
از دید من، ساختار پروژه باید نتیجه معماری باشد، نه یک الگوی تحمیلی. اگر معماری دامنهمحور، سرویسمحور یا چندلایه انتخاب کردهاید، این انتخاب باید در ساختار پوشهها نمود پیدا کند. شکل نهایی پروژه باید بر اساس نوع معماری ساخته شود، نه بر اساس یک قالب عمومی که پیش از شناخت نیازها اعمال شده باشد.
در نهایت، احترام برای هر دو دیدگاه محفوظ است؛ اما انتخاب من همچنان همان خط رسمی گولنگ است:
سادگی، شفافیت و ساختاری که دقیقاً از نیاز معماری ساخته شود، نه بالعکس.
البته نمیشود ترند بودن یک ابزار، معماری و ... یا project layout را نادیده گرفت. توجه افراد زیاد خود، میتواند اعتبار بیاورد.
برای من، نقطه شروع درست همان الگوی رسمی Go است و هرگونه پیچیدگی ساختاری باید تنها زمانی افزوده شود که پروژه و معماری آن توجیه کافی برای افزایش لایهها و بخشها داشته باشد و نام گذاری بر عهده من باشد نه برحسب الگوی خشک با کمترین انعطاف.
موفق باشید! 🌹
@srfirouzi_channel
go.dev
Organizing a Go module - The Go Programming Language
Forwarded from Armon technical logs (armon Taheri)
پست مرتن مربوط به قطعی سراسری 18 نوامبر 2025
یک نمونه واقعی و مسئولیت پذیرانه از نحوه اصولی واکنش بعد از وقوع یک دیزستر
https://blog.cloudflare.com/18-november-2025-outage/
یک نمونه واقعی و مسئولیت پذیرانه از نحوه اصولی واکنش بعد از وقوع یک دیزستر
https://blog.cloudflare.com/18-november-2025-outage/
The Cloudflare Blog
Cloudflare outage on November 18, 2025
Cloudflare suffered a service outage on November 18, 2025. The outage was triggered by a bug in generation logic for a Bot Management feature file causing many Cloudflare services to be affected.
Forwarded from کانال مهرداد لینوکس
🚀 Blender 5.0 منتشر شد!
آپدیت خفن ، پر از تغییرات بنیادی و قابلیتهای حرفهای:
🔥🔥ویژگی های جدید
✨ پشتیبانی از HDR / Wide Gamut (روی لینوکس فقط با Wayland + Vulkan)
🎨 سیستم رنگ جدید + AgX HDR View + رنگفضاهای ACES 1.3/2.0
✏️ Curve Drawing بازطراحی شد + ابزارهای جدید برای Curve و Geometry
🧩 ۶ Modifier جدید مبتنی بر Geometry Nodes
🔥 الگوریتم جدید Render حجمها (Null Scattering)
🧍 مش پایهٔ Human Skeleton اضافه شد
📚 Storyboarding Workspace جدید
📥 دانلود نسخهٔ لینوکس
نسخهٔ Universal Binary برای همهٔ توزیعها در دسترس است و بدون نصب اجرا میشه.🤯
(blender.org)
منبع
از ویرایش فیلم گرفته تا ساخت انمیشن دو بعدی و سه بعدی نرمافزار رایگان، متنباز و قدرتمند برای مدلسازی سهبعدی، انیمیشن، VFX و…
حجم فقط ۳۷۰ مگ حتی بدون نصب اجرا میشه
قدرت ✨⚡️
آپدیت خفن ، پر از تغییرات بنیادی و قابلیتهای حرفهای:
🔥🔥ویژگی های جدید
✨ پشتیبانی از HDR / Wide Gamut (روی لینوکس فقط با Wayland + Vulkan)
🎨 سیستم رنگ جدید + AgX HDR View + رنگفضاهای ACES 1.3/2.0
✏️ Curve Drawing بازطراحی شد + ابزارهای جدید برای Curve و Geometry
🧩 ۶ Modifier جدید مبتنی بر Geometry Nodes
🔥 الگوریتم جدید Render حجمها (Null Scattering)
🧍 مش پایهٔ Human Skeleton اضافه شد
📚 Storyboarding Workspace جدید
📥 دانلود نسخهٔ لینوکس
نسخهٔ Universal Binary برای همهٔ توزیعها در دسترس است و بدون نصب اجرا میشه.🤯
(blender.org)
منبع
Forwarded from Rust for Python developers
"When the bad file with more than 200 features was propagated to our servers, this limit was hit — resulting in the system panicking."
"This resulted in the following panic which in turn resulted in a 5xx error:
thread fl2_worker_thread panicked: called Result::unwrap() on an Err value"
اینو یکی از بچهها توی گروه دیگری فرستاد؛ دیروز نصف اینترنت رسماً قطع شد، چرا ؟ کلودفلیر یک باگ خورده بود.
حالا مشخص شده اون باگ از یک خطای انسانی افتضاح میاد.
داستان اینه؛
یک سرور به محدودیت میخوره و از دسترس خارج میشه که باعث میشه تمام ریسپانسهاش خطای ۵۰۰ باشه؛ اما یک توسعه دهنده بجای اینکه
response رو بررسی کنه که آیا ۲۰۰ هست یا نه فرض کرده چون ما داخل دیتاسنتر هستیم و کلودفلیر هیچوقت غیر از ۲۰۰ نمیگیریم.
پس
unwrap زده و چون غیر از ۲۰۰ گرفته بوده؛ سیستم ترکیده.چندتا نکته :
۱- هیچ چیزی رو فرض نکنید، همه چیز رو تست کنید.
من هم توی بعضی کدهام
unwrap مینویسم؛ اما خیلی وقتا عمدی هست چون واقعاً نمیدونم خروجی اون تابع یا ماکرو چطور میتونه Error باشه!مینویسم که بیزینس در بیاد.
۲- زبان برنامهنویسی
Rust فقط امنیت روی مموری بهتون میده؛ قراره نیست براتون نون هم بخره.نکته جالبتر اینکه؛
AI هم این خطاهارو تشخیص نمیده !! اینه که همیشه از peer-review استقبال باید بشه.
۳- مورد راحتی مثل خطای 5xx توی http و اینکه حتی این مورد ساده هم تست نشده؛ نشون میده کلودفلیر هم که بری؛ قرار شیت کد ببینی.
پس دوست عزیز حداقل تست بنویس.
Forwarded from IRCF | اینترنت آزاد برای همه
کاربری به نام اتمیک در پیام اخیر خودش گفته جالبه که دقیقا وقتی کلودفلر دچار مشکل شده، ترافیک اینترنت ایران طوری دیده میشه که انگار کامل باتنت شده؛ یعنی شبیه ترافیک مشکوک و غیرعادی. میزان ترافیک مشکوک در کشورهای دیگه حداکثر ۷۰ تا ۸۰ درصد میشه، ولی برای ایران به ۱۰۰ درصد میرسه که کاملاً عجیبه.
این کاربر این فرضیه رو مطرح کرده که دولت ایران داره به کلودفلر فشار میاره تا اونها سرویسهایی مثل Warp و Workers رو محدود کنن.
🔍 ircf.space
@ircfspace
این کاربر این فرضیه رو مطرح کرده که دولت ایران داره به کلودفلر فشار میاره تا اونها سرویسهایی مثل Warp و Workers رو محدود کنن.
🔍 ircf.space
@ircfspace
Forwarded from یه شعر (Poem Bot)
حافظ | قطعات | قطعه شمارهٔ ۲۲
سرور اهل عمایم شمع جمع انجمن
صاحب صاحب قران خواجه قوام الدین حسن
سادس ماه ربیع الاخر اندر نیم روز
روز آدینه به حکم کردگار ذوالمنن
هفت صد و پنجاه و چار از هجرت خیرالبشر
مهر را جوزا مکان و ماه را خوشه وطن
مرغ روحش کـ او همای آشیان قدس بود
شد سوی باغ بهشت از دام این دار محن
#حافظ | گنجور
📍@iipoem
سرور اهل عمایم شمع جمع انجمن
صاحب صاحب قران خواجه قوام الدین حسن
سادس ماه ربیع الاخر اندر نیم روز
روز آدینه به حکم کردگار ذوالمنن
هفت صد و پنجاه و چار از هجرت خیرالبشر
مهر را جوزا مکان و ماه را خوشه وطن
مرغ روحش کـ او همای آشیان قدس بود
شد سوی باغ بهشت از دام این دار محن
#حافظ | گنجور
📍@iipoem
Forwarded from IRCF | اینترنت آزاد برای همه
کلودفلر در گزارش رسمی خودش به اختلال گستردهای پرداخت که از حدود ساعت ۱۴:۵۰ روز گذشته آغاز شده بود. این شرکت توضیح داد که مشکل نه بهخاطر حملهٔ سایبری، بلکه بهدلیل یک تغییر اشتباه در سطح دسترسی پایگاهداده بود که باعث تولید یک فایل پیکربندی معیوب برای سیستم مدیریت باتها شد.
این فایل نادرست در سراسر شبکه پخش شد و چون اندازهش از حد مجاز عبور کرده بود، بخش اصلی مسیریابی ترافیک در سرورهای کلودفلر از کار افتاد و خطاهای 5xx به شکل گسترده ظاهر شد.
کلودفلر توضیح داد که در ابتدا تصور میکرد با یک حملهٔ بزرگ روبرو باشه، چون رفتار سیستم نوسانی و غیرعادی بود و حتی صفحهٔ وضعیت شرکت هم همزمان دچار اختلال شد. اما پس از مشخص شدن منبع مشکل، انتشار فایل متوقف و نسخهٔ سالم قبلی جایگزین شد. بهتدریج سرویسها به حالت عادی برگشتن و تا حدود ساعت ۲۰:۳۶ روز ۲۷ آبان، تمامی بخشها کاملاً احیا شدن.
کلودفلر این اختلال رو غیرقابلقبول توصیف کرده و اعلام کرد که درحال تقویت سازوکارهای داخلیشه، تا خطاهای مشابه در آینده تکرار نشن.
👉 blog.cloudflare.com/18-november-2025-outage
🔍 ircf.space
@ircfspace
این فایل نادرست در سراسر شبکه پخش شد و چون اندازهش از حد مجاز عبور کرده بود، بخش اصلی مسیریابی ترافیک در سرورهای کلودفلر از کار افتاد و خطاهای 5xx به شکل گسترده ظاهر شد.
کلودفلر توضیح داد که در ابتدا تصور میکرد با یک حملهٔ بزرگ روبرو باشه، چون رفتار سیستم نوسانی و غیرعادی بود و حتی صفحهٔ وضعیت شرکت هم همزمان دچار اختلال شد. اما پس از مشخص شدن منبع مشکل، انتشار فایل متوقف و نسخهٔ سالم قبلی جایگزین شد. بهتدریج سرویسها به حالت عادی برگشتن و تا حدود ساعت ۲۰:۳۶ روز ۲۷ آبان، تمامی بخشها کاملاً احیا شدن.
کلودفلر این اختلال رو غیرقابلقبول توصیف کرده و اعلام کرد که درحال تقویت سازوکارهای داخلیشه، تا خطاهای مشابه در آینده تکرار نشن.
👉 blog.cloudflare.com/18-november-2025-outage
🔍 ircf.space
@ircfspace
Forwarded from IRCF | اینترنت آزاد برای همه
پروژه OpexCore یک مجموعه ابزار یکپارچه در پایتون هست، که فرآیند مدیریت و تعامل با پنلهای مختلف VPN رو برای توسعهدهندگان ساده میکنه. بهجای اینکه برای هر پنل ماژول جداگانه بسازین یا APIهای متفاوت رو بهصورت دستی پیادهسازی کنین، این ابزار همه اونهارو در قالب یک SDK منسجم گردآوردی کرده.
با پشتیبانی از پنلهایی مانند Marzban, Marzneshin, OvPanel, Pasarguard, Remnawave, Rebbeca و ... میشه تنها با یک ساختار واحد، عملیات و درخواستهای لازم رو روی هر سرویس انجام داد.
👉 github.com/erfjab/OpexCore/releases/latest
🔍 ircf.space
@ircfspace
با پشتیبانی از پنلهایی مانند Marzban, Marzneshin, OvPanel, Pasarguard, Remnawave, Rebbeca و ... میشه تنها با یک ساختار واحد، عملیات و درخواستهای لازم رو روی هر سرویس انجام داد.
👉 github.com/erfjab/OpexCore/releases/latest
🔍 ircf.space
@ircfspace
Forwarded from IRCF | اینترنت آزاد برای همه
سرویس استاتوس آروان دیروز بهدلیل مشکلی که برای کلودفلر پیش اومده بود، از دسترس خارج شد.
مدیرعامل آروان در پاسخ به این موضوع گفته سرویس استاتوس کلودفلر روی AWS و آروان روی کلودفلر هست؛ چون لازمه وقتی سرویس خودت اختلال داره بقیه بتونن از این اختلال مطلع بشن.
🔍 ircf.space
@ircfspace
مدیرعامل آروان در پاسخ به این موضوع گفته سرویس استاتوس کلودفلر روی AWS و آروان روی کلودفلر هست؛ چون لازمه وقتی سرویس خودت اختلال داره بقیه بتونن از این اختلال مطلع بشن.
🔍 ircf.space
@ircfspace
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
آکادمی آموزشی کندوی دانش
افزایش سرعت copy/paste - آکادمی آموزشی کندوی دانش
در لینوکس، سرعت انتقال فایلها به عوامل مختلفی مانند اندازه فایل، نوع دیسک (HDD یا SSD) و اندازه بافر خواندن/نوشتن بستگی دارد. یکی از سادهترین روشها برای
Forwarded from Mr Python | مستر پایتون (حسین)
🟣 اسمبلی x86 - قسمت 21 :تست بیت ها با دستورالعمل TEST
در این ویدیو به بررسی دستورالعمل TEST و نحوه استفاده از آن برای تست کردن یک بیت خاص در یک عدد خواهیم پرداخت .
همچنین به عنوان تمرین عملی برنامه ای برای تشخیص زوج یا فرد بودن یک عدد دلخواه با استفاده از دستورالعمل TEST پیاده خواهیم کرد .
Aparat : https://www.aparat.com/v/zee6oc3
Youtube : https://youtu.be/trVeaeD2b4Y
🆔 : @MrPythonBlog | BOOST
در این ویدیو به بررسی دستورالعمل TEST و نحوه استفاده از آن برای تست کردن یک بیت خاص در یک عدد خواهیم پرداخت .
همچنین به عنوان تمرین عملی برنامه ای برای تشخیص زوج یا فرد بودن یک عدد دلخواه با استفاده از دستورالعمل TEST پیاده خواهیم کرد .
Aparat : https://www.aparat.com/v/zee6oc3
Youtube : https://youtu.be/trVeaeD2b4Y
🆔 : @MrPythonBlog | BOOST
Forwarded from IRCF | اینترنت آزاد برای همه
برنامه متنباز و رایگان PyWarp که برای ویندوز، لینوکس و مکاواس عرضه شده، در تازهترین آپدیتش تغییراتی داده که پروتکل مسک مجددا روی اینترنتهایی که Masque رو مسدود کردن قابل استفاده بشه.
خودم تست کردم و جوابگو بود؛ البته ممکنه برای اتصال نیاز باشه چندین مرتبه تلاش کنین.
👉 github.com/saeedmasoudie/pywarp/releases/latest
🔍 ircf.space
@ircfspace
خودم تست کردم و جوابگو بود؛ البته ممکنه برای اتصال نیاز باشه چندین مرتبه تلاش کنین.
👉 github.com/saeedmasoudie/pywarp/releases/latest
🔍 ircf.space
@ircfspace
Forwarded from Go Casts 🚀
نکتهای که تجربهاش رو توی سیستمهای high-scale دیدم، اینه که بسیاری از این تصمیمات فقط یکبار نیستن — بلکه evolutionary هستن.
مثلاً شروع با monolith منطقیترین انتخاب برای یک سیستم جدید با domain uncertainty بالا هست، اما همون معماری با رشد traffic و team size ممکنه به bottleneck تبدیل بشه. در اون مرحله migration به microservices دیگه یک انتخاب نیست، بلکه یک forced trade-off بین developer productivity، operational complexity و scalability هست.
یا مثلاً انتخاب database: با 10K QPS شاید PostgreSQL با read replica کافی باشه، ولی با 100K+ QPS باید راجع به sharding، caching layer و eventual consistency فکر کنی. همین decision دوباره وابسته میشه به اینکه consistency requirements چقدر سختگیرانهان.
به نظرم شاید یه اصل مهم دیگه هم مثل "it depends" اینه که بدونیم چه موقع باید یک تصمیم رو revisit کنیم. این یعنی داشتن observability و metrics که نشون بدن کِی architectural constraints ما به actual bottleneck تبدیل شدن.
در تایید این پست خوب دوست عزیزم محمد نصر
https://www.linkedin.com/posts/mohammadne_%D8%AF%D8%B1-%D8%B3%D8%A7%D9%84%D9%87%D8%A7%DB%8C%DB%8C-%DA%A9%D9%87-%D8%B1%D9%88%DB%8C-software-architecture-activity-7396796883618217985-GquG?utm_source=share&utm_medium=member_desktop&rcm=ACoAABKaeq4BumiQ-WRCbtW6ppzE1JdD1EBnCUQ
پی نوشت: عذرخواهی میکنم واقعا سخته فارسی کنی کلمات رو و همون معنی رو بده. من خودم انگلیسی م چندان تعریفی نداره و خدای نکرده برداشت بدی نشه. ولی واقعا سخته بعضی جاها. نگم سخته بهتره بگم سریعتره که اینطوری نوشته بشه 🙂. بازم معذرت
@gocasts
مثلاً شروع با monolith منطقیترین انتخاب برای یک سیستم جدید با domain uncertainty بالا هست، اما همون معماری با رشد traffic و team size ممکنه به bottleneck تبدیل بشه. در اون مرحله migration به microservices دیگه یک انتخاب نیست، بلکه یک forced trade-off بین developer productivity، operational complexity و scalability هست.
یا مثلاً انتخاب database: با 10K QPS شاید PostgreSQL با read replica کافی باشه، ولی با 100K+ QPS باید راجع به sharding، caching layer و eventual consistency فکر کنی. همین decision دوباره وابسته میشه به اینکه consistency requirements چقدر سختگیرانهان.
به نظرم شاید یه اصل مهم دیگه هم مثل "it depends" اینه که بدونیم چه موقع باید یک تصمیم رو revisit کنیم. این یعنی داشتن observability و metrics که نشون بدن کِی architectural constraints ما به actual bottleneck تبدیل شدن.
در تایید این پست خوب دوست عزیزم محمد نصر
https://www.linkedin.com/posts/mohammadne_%D8%AF%D8%B1-%D8%B3%D8%A7%D9%84%D9%87%D8%A7%DB%8C%DB%8C-%DA%A9%D9%87-%D8%B1%D9%88%DB%8C-software-architecture-activity-7396796883618217985-GquG?utm_source=share&utm_medium=member_desktop&rcm=ACoAABKaeq4BumiQ-WRCbtW6ppzE1JdD1EBnCUQ
پی نوشت: عذرخواهی میکنم واقعا سخته فارسی کنی کلمات رو و همون معنی رو بده. من خودم انگلیسی م چندان تعریفی نداره و خدای نکرده برداشت بدی نشه. ولی واقعا سخته بعضی جاها. نگم سخته بهتره بگم سریعتره که اینطوری نوشته بشه 🙂. بازم معذرت
@gocasts
Linkedin
در سالهایی که روی Software Architecture و Distributed System Design کار کردهام، بیشترین سوءتفاهمی که دیدهام این است که تصور…
در سالهایی که روی Software Architecture و Distributed System Design کار کردهام، بیشترین سوءتفاهمی که دیدهام این است که تصور میشود برای هر پروژه یک «نسخهی واحد» وجود دارد؛ از انتخاب معماری گرفته تا انتخاب زیرساخت.
اما واقعیت این است که در مهندسی نرمافزار،…
اما واقعیت این است که در مهندسی نرمافزار،…
Forwarded from DevTwitter | توییت برنامه نویسی
This media is not supported in your browser
VIEW IN TELEGRAM
خب جمینای ۳ هم منتشر شد!
نسخه اولیهاش تا اینجای کار خیلی جذاب به نظر میرسه.
تمرکز جمینای ۳ اینه که برای اولین بار مولتیمدل واقعی ارائه بده. علاوه بر این، ادعا میکنه بین همه مدلها بهترین توانایی تحلیل عمیق رو داره.
نکته مهم دیگه اینه که هدف اصلی این نسخه، بهبود استفاده از امکانات جمینای و ترکیب آن با ساخت اجنتها برای اتوماتیک کردن فرآیندهاست.
در کل از ۱۰ معرفی جالب اخیر در حوزه AI، هفتتاش متعلق به گوگل بوده و واقعا کارهای بزرگی انجام داده. امیدوارم بهش حسابی.
@DevTwitter | <Farokh/>
نسخه اولیهاش تا اینجای کار خیلی جذاب به نظر میرسه.
تمرکز جمینای ۳ اینه که برای اولین بار مولتیمدل واقعی ارائه بده. علاوه بر این، ادعا میکنه بین همه مدلها بهترین توانایی تحلیل عمیق رو داره.
نکته مهم دیگه اینه که هدف اصلی این نسخه، بهبود استفاده از امکانات جمینای و ترکیب آن با ساخت اجنتها برای اتوماتیک کردن فرآیندهاست.
در کل از ۱۰ معرفی جالب اخیر در حوزه AI، هفتتاش متعلق به گوگل بوده و واقعا کارهای بزرگی انجام داده. امیدوارم بهش حسابی.
@DevTwitter | <Farokh/>
Forwarded from Gopher Academy
این تصویر بهصورت دقیق نحوهی ادغام خلاصهها (summary merging) در مدیریت حافظهی Go را نشان میدهد.
ایدهی اصلی:
در Go برای مدیریت صفحات آزاد از ساختاری به نام Summary استفاده میکند که سه مقدار دارد:
start → تعداد صفحات آزاد در ابتدای محدوده
end → تعداد صفحات آزاد در انتهای محدوده
max → بیشترین دنبالهی صفحات آزاد در هر نقطه از محدوده
هر Summary معمولاً ۵۱۲ صفحه را پوشش میدهد. وقتی دو محدودهی متوالی (مثل S1 و S2) کنار هم قرار میگیرند، Go میتواند آنها را با هم ادغام کند تا یک summary بزرگتر بسازد.
➖➖➖➖➖➖➖➖
👑 @gopher_academy
ایدهی اصلی:
در Go برای مدیریت صفحات آزاد از ساختاری به نام Summary استفاده میکند که سه مقدار دارد:
start → تعداد صفحات آزاد در ابتدای محدوده
end → تعداد صفحات آزاد در انتهای محدوده
max → بیشترین دنبالهی صفحات آزاد در هر نقطه از محدوده
هر Summary معمولاً ۵۱۲ صفحه را پوشش میدهد. وقتی دو محدودهی متوالی (مثل S1 و S2) کنار هم قرار میگیرند، Go میتواند آنها را با هم ادغام کند تا یک summary بزرگتر بسازد.
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Forwarded from Gopher Academy
وقتی این دو کنار هم قرار میگیرند، Go مقدارهای جدید را به شکل زیر محاسبه میکند:
start = S1.start = 3
(از آنجایی که ناحیه پایینتر از S1 شروع میشود)
end = S2.end = 2
(زیرا انتهای کل محدوده با S2 تمام میشود)
max = max(S1.max, S2.max, S1.end + S2.start)
= max(10, 8, 7 + 5)
= max(10, 8, 12)
با ادغام S1 و S2، خلاصهی جدید محدودهی ۱۰۲۴ صفحهای برابر است با:
start = 3, max = 12, end = 2
مزیت این روش:
Go با استفاده از این ساختار سلسلهمراتبی از summaryها میتواند بدون نیاز به اسکن کامل بیتمپها، در چند سطح (arena → chunk → bitmap) سریعاً پیدا کند کجا فضای خالی کافی برای تخصیص span جدید وجود دارد — در نتیجه تخصیص حافظه بسیار سریعتر و مقیاسپذیرتر انجام میشود.
➖➖➖➖➖➖➖➖
👑 @gopher_academy
start = S1.start = 3
(از آنجایی که ناحیه پایینتر از S1 شروع میشود)
end = S2.end = 2
(زیرا انتهای کل محدوده با S2 تمام میشود)
max = max(S1.max, S2.max, S1.end + S2.start)
= max(10, 8, 7 + 5)
= max(10, 8, 12)
با ادغام S1 و S2، خلاصهی جدید محدودهی ۱۰۲۴ صفحهای برابر است با:
start = 3, max = 12, end = 2
مزیت این روش:
Go با استفاده از این ساختار سلسلهمراتبی از summaryها میتواند بدون نیاز به اسکن کامل بیتمپها، در چند سطح (arena → chunk → bitmap) سریعاً پیدا کند کجا فضای خالی کافی برای تخصیص span جدید وجود دارد — در نتیجه تخصیص حافظه بسیار سریعتر و مقیاسپذیرتر انجام میشود.
➖➖➖➖➖➖➖➖
👑 @gopher_academy