Dev Perfects – Telegram
Dev Perfects
41 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://news.1rj.ru/str/dev_perfects/455


ارتباط:
https://news.1rj.ru/str/HidenChat_Bot?start=936082426
Download Telegram
خطا داریم؟ همینه که هست!

یه مثال دیدم که می‌گفت شما وقتی ماشینتون پنچر میشه صبر می‌کنید تا تعمیرکار بیاد درستش کنه، یا با همون چرخ های پنجر با سرعت کم ادامه میدین تا به مقصد برسید؟

به نظرم همین توی برنامه‌نویسی هم مصداق داره، وقتی برنامه‌مون به ارور میخوره چطوری مدیریتش می‌کنیم؟ حالا این ارور خیلی وقت ها exceptionه توی زبون های برنامه نویسی، ولی یکم سطح بالاتر ببینیم،
مثلا به یه سرویس خارجی درخواست دادیم و نیست، خب چیکار کنیم؟
یه فایل کانفیگ رو میخوایم لود کنیم ولی نیست.
دیتایی که از سمت کاربر اومده معتبر نیست.

در یک برنامه معمولی جوابِ (احتمالا) درست به خیلی از این سوالا اینه که خب کارکرد برنامه رو متوقف کن و بگو نمیتونم. برنامه کار نکنه تا دوباره با برطرف شدن مشکلات یکی از اول اجراش کنه،
ولی اگر برنامه ما قراره توی یکسری از محیط‌ها اجرا بشه دیگه خبری از «من کار نمیکنم تا شرایط درست بشه» نیست. چه محیط‌هایی؟ محیط‌هایی که availability بالا مهمه مثلا سیستم های امبدد یا بک‌اند.
مثلا قراره ما مسیریابی یک هواپیما رو انجام بدیم و سیگنال GPS دریافت نمی‌کنیم، خب به هواپیما بگیم فعلا من کار نمیکنم؟! یعنی چی که کار نمیکنم، با سرعت زیاد داره میره :)))
یا مثلاً توی کلود اگر ارور بدیم و برنامه کرش کنه کنیم چی میشه؟ کوبرنتیز دوباره برنامه رو اجرا می‌کنه و دوباره با مشکل درگیریم!

پس در این شرایط نمیشه ارور داد و بیخیال شد، بلکه باید با همون چرخ پنچر ادامه داد، برای هر روش هم با خلاقیت خودمون یا با کمک روش های پیشنهاد شده باید یه پلن بی داشته باشیم،
پیاده سازی و تست خود برنامه در کنار اینکه هر قسمتی ممکنه کار نکنه و سناریوهای مختلفش، کار سختیه ولی هزینه‌ی داشتن یه نرم افزار قابل اعتماده.

مثلا چه مشکلاتی؟
مثلاً اگه قراره کانفیگ فایل رو از بیرون لود کنیم, آمادگی نبودنش رو هم داشته باشیم، مثلا یه کانفیگ پیشفرض داشته باشیم (البته کانفیگ چون موقع اولین اجرای برنامه خودش رو نشون میده شاید نیازی هم نباشه)
مثلا اگر داده gps به ما نرسید، با کمک داده های قبلی که ذخیره کردیم و یا ترکیبش با سرعت و شتاب و ... مشکل رو موقتا و حتی نادقیق حل کنیم
یا مثلاً اگر به سرور خارجی درخواست می‌زنیم و نیست، آمادگی نبودنش رو داشته باشیم، اینجا یکسری پترن که تو صنعت استفاده میشه داریم
مثلا چه پترنهایی؟
+ دوباره درخواست بده: retry pattern
+ به یکی دیگه درخواست بده: fallback
+ اگر خرابه تا یه مدت بهش درخواست نده تا ارور الکی نگیری: circuit breaker
+ اگه سرور خارجی کنده، خیلی صبر نکن تا response time خودت هم بالا نره
+ اگر سرور خارجی دیتا قراره بهت بده، دیتای قبلی رو کش کن.

اینها در سطح کد بودن، در سطح معماری هم میشه از قبل روش‌هایی رو تدارک دید مثلاً خود دیتابیس رو چطوری High available کنیم، یا روش‌هایی که بیشتر تو سیستم های امبدد استفاده میشه مثل اینکه یه برنامه رو با چند تا پیاده سازی همزمان اجرا کنیم تا اگر یکیش خراب شد اون یکی‌ها باشن!

منابع:
https://opensource.com/article/19/9/transient-faults-devops

https://www.jrebel.com/blog/microservices-resilience-patterns

https://learn.microsoft.com/en-us/azure/architecture/best-practices/transient-faults

https://learn.microsoft.com/en-us/dotnet/architecture/cloud-native/application-resiliency-patterns

@terminal_stuff
ویرایش: لینک پیرتوب قرار گرفت.
Forwarded from Geek Alerts
اوضاع و شرایط خیلی به نفع پاوول دورو نیست، اول اینکه پاوول تابعیت امارات و فرانسه رو داره و البته که متولد روسیه هست.
از زمان دستگیریش تا الان که برای ۹۶ ساعت دستگیریش تمدید شد بیشتر حامیانش از میان راست‌ها بودن، برای مثال ماتئو معاون نخست وزیر راست‌گرای ایتالیا که نسبت به این اتفاق گفته اروپا تحت سانسور هست.
یعنی توسط کسایی حمایت میشه که عملا توانایی زیادی توی اروپا ندارن.
از طرفی امارات به نظر میرسه خودشو وارد ماجرا نکرده و با وجود اینکه شهروندش الان توی فرانسه بازداشت هست ولی حمایتی از پاوول نداشتن.
بعد روسیه کشوری که حتی ممکنه پاوول بعد از ورود بهش دادگاهی بشه الان داره ازش حمایت میکنه.
سفارت روسیه در پاریس درخواست کرده که مقامات فرانسوی در ماجرای پاول باهاش همکاری کنن و اونا هم جوابی ندادن.
این بیشتر از اون حمایت‌هاست که نبودش بهتره، یعنی اینکه حامی یه نفر توی دادگاه‌های اروپا کشور روسیه باشه احتمالا پرونده‌رو پیچیده‌تر هم میکنه.
خود تلگرام هم یه پست منتشر کرده که ما از قوانین اتحادیه اروپا پیروی میکنیم و پاوول دورو چیزی برای پنهان کردن نداره و این ادعا که یک پلتفرم مسئول سوء استفاده افراد از اون پلتفرمه پوچ هست.
politico
https://news.1rj.ru/str/telegram/329
@geekalerts
فروشگاه پارچ با محصولات جدید بروزرسانی شد.

https://parchlinux.tarhvar.com/


@ParchLinux
نام‌بان اکنون برای فدورا 🖼️ در دسترس است.

https://software.opensuse.org//download.html?project=home%3Asohrabbehdani&package=namban

میتونید مخزن نام‌بان رو از طریق Open Build Service به فدورا اضافه کنید.

🐧 @ParchLinux
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Pishro App
🧠 توی #لاراول 11.21 یه متد جدید اضاف شده که میتونید با اون مدل هایی که از SoftDelete استفاده میکنند رو راحت تر حذف کنید

قبلا به این صورت بود:
$comment = Comment::find(1);
$comment->forceDelete();
 


حالا میتونید به این صورت مدل با ای دی یک رو حذف کنید:
Comment::forceDestroy(1);



اگه بخواید چند ردیف رو با هم حذف کنید هم بصورت زیر هست که نتیجه تعداد حذف شده ها رو برمیگردونه: 
$count = Comment::forceDestroy([1, 2]);



👾 @pishroapp
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی (SeYeD.Dev)
پست من ترکید و بالا نمیاد 😕
#postman

@SEYED_BAX
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی (SeYeD.Dev)
پست من ترکید و بالا نمیاد 😕
#postman

@SEYED_BAX
این دوره امشب (۵ ساعت دیگر) آپدیت خواهد شد

به نسخه 0.7.5 :

Youtube Live


اگر حال صبر کردن تا آپدیت پلی‌لیست رو ندارید :

Live updating axum
Forwarded from Python Hints
مثال می‌نویسم پست آپدیت بشه
Forwarded from Code Module | کد ماژول (genix)
بهترین زبان دنیا 😂😂

#fun
@CodeModule
Forwarded from DevAcademy
شرکت یکی از دوستان در آلمان دنبال نیروی کار دواپس و دیتا_ساینتیست و مدیر_محصول می‌گرده، ویزا اسپانسر هم میشن.
https://www.vengine.tech/career

#devops

#prdocut_manager

💻@DevAcaademy
💬
@DevAcademyGroup
Forwarded from Python Hints
#Quick

من این مشکل رو زیاد دیدم؛ بیش از حداقل 20% پروژه‌های خدماتی که دوستان روش کار می‌کنن. می‌بینم که Postgresql به معنای واقعی کلمه OverKill هست. مخصوصا وقتی Sqlite کار رو در میاره.

شاید به روی خودتون نیارید ولی خیلی از شما هم ازین پروژه‌ها دیدید دیگه.

خواستم هم اهمیت SQLite رو یادآوری کنم
هم بگم پروژه‌هایی مثل rqlite هم وجود داره‌ها


مثال:
کاری به درست و غلط بودن دیزاین و ... ندارم و بحثم فقط همین مورد Sqlite هست.
یک کدی رو دیدم؛ طرف یک سیستم verification جدا براش طراحی کرده بود و تمام پروژه‌هاشون ازین سرویس استفاده می‌کرد. فکر کنم این سرویس یا .net بود یا golang بعد بحث اصلی سر این بود که Postgres بذارند یا MsSql من درجا پیشنهاد SQlite رو دادم.
این دیتابیس خیلی اهمیت زیادی نداره؛ هر کد قراره نهایتا ۱۰ دقیقه valid باشه. در صورت پاک شدن هم طرف یکبار دیگه درخواست میده (که من تاحالا پاک شدن خود به خود توش ندیدم).

چرا می‌خواید شر درست کنید برای تیم devops, server, database, ...
خیلی ها مشکلشون این هست که اطلاعات ندارند (هیچ‌وقت هم جرات تجربه کردن نداشتند)؛ خود SQLite روی SSD طبق بنچمارک‌ها.
بیش از 500 هزار insert در ثانیه رو پشتیبانی می‌کنه و برای read هم این مورد به بیش از 1 میلیون میرسه و این مورد بدون config های پرفورمنسی هست که توی داکیومنت خودش ارائه شده.
روی NVMe هم چندسال قبل تست کردیم؛ اعداد بهتر هم میشه.

اضافه کنم :
اینم rqlite اگر حتی خواستید SQlite رو بصورت distributed داشته باشید (قبلا توی اون کی کانال راجبش صحبت کردم با K8s )
👍1
سلام بچه ها
ما تو مکتب خونه به دنبال یک senior devops engineer هستیم

اگر خودتون و اطرافیانتون علاقه مند به این موقعیت هستید
میتونید رزومتون رو برای من
بفرستید که مستقیم ریفر کنم

@m0sidev

شرایط داخل این لینک هستش

https://career.hrcando.ir/co/maktabkhooneh-1/job-detail/0c149259-adc8-4cda-b056-869125704d6f
Forwarded from Gopher Academy
🔵 عنوان مقاله
Hookdeck: The Amazon EventBridge Alternative

🟢 خلاصه مقاله:
مقاله مورد بحث، راهکاری را برای تیم‌های مهندسی به منظور بهبود مدیریت پیام‌ها در معماری گرا به رویداد (EDA) ارائه می‌دهد. روش پیشنهادی شامل دریافت، تبدیل، فیلتر، هدایت و ارسال پیام‌ها از طریق یک درگاه رویداد است. این فرآیند به تیم‌های مهندسی اجازه می‌دهد تا ارتباطات بین بخش‌های مختلف و سرویس‌ها را به صورت کارآمدتر مدیریت کنند. درگاه رویداد به عنوان واسطی عمل می‌کند که پیام‌ها را بر اساس الزامات دقیق فیلتر کرده و به درستی در مسیرهای مورد نظر قرار می‌دهد. این سیستم همچنین فرصت‌هایی برای خطاهای کمتر در انتقال داده‌ها و عملکرد بهینه‌تر در دسترسی و تبادل اطلاعات فراهم می‌آورد. در نتیجه، راهکار واسط رویداد می‌تواند به طرز قابل توجهی به بهبود کارایی و اثربخشی فرآیندهای مهندسی در یک سازمان کمک کند.

🟣لینک مقاله:
https://hookdeck.com?ref=goweekly-500


👑 @gopher_academy
Forwarded from Gopher Academy
🌐بیانیه رسمی تلگرام: پاول دورف چیزی برای مخفی‌کردن ندارد

🔸در بیانیه‌ای که در کانال رسمی اخبار تلگرام منتشر شده، آمده است که این پیام‌رسان تابع قوانین اتحادیه اروپا، ازجمله قانون سرویس‌های دیجیتال است. این پیام‌رسان یادآور شده که روش‌های مدیریت محتوا در تلگرام مطابق استانداردهای موجود در این صنعت است و دائماً بهبود پیدا می‌کند.

🔸در بخش دیگری از این بیانیه آمده است:
«پاول دورف، مدیرعامل تلگرام، چیزی برای مخفی‌کردن ندارد و مکرراً به اروپا سفر می‌کند. بی‌معنی است که ادعا کنیم یک پلتفرم یا مالکش مسئول سوءاستفاده از آن پلتفرم است.»

🔸درحالی‌که رمزنگاری پیام‌ها در #تلگرام به‌صورت پیش‌فرض و در چت‌های معمولی فعال نیست، این شرکت رویکردی خنثی را در زمینه مدیریت محتوا در پیش گرفته است.

🔸 #پاول_دورف پیش‌تر در مصاحبه‌ای با «تاکر کارلسون» گفته بود که این پلتفرم در برابر درخواست دولت‌ها برای حذف محتوا مقاومت می‌کند.

🔸🔸🔸

بازداشت پاول دورف در فرانسه ممکن است ٢۴ ساعت دیگر تمدید شود

🔹«پاول دورف»، مدیرعامل #تلگرام، عصر شنبه در فرودگاه لو بورژه فرانسه بازداشت شد. اکنون به گفته یک منبع قضایی فرانسوی، بازداشت #پاول_دورف ممکن است ٢۴ ساعت دیگر نیز تمدید شود. طبق سازوکارهای سیستم حقوقی فرانسه، پلیس می‌تواند یک فرد را به مدت ٢۴ ساعت بازداشت کند و این مدت یک‌بار نیز قابل تمدید است. اگر مقامات بخواهند دورف را پس از بازداشت اولیه نگه دارند، ممکن است او کمی دیرتر به دادگاه پاریس معرفی شود.

🔸🔸🔸

🔵ارزش بازار Toncoin با بازداشت پاول دورف حدود ٢.٧ میلیارد دلار کاهش یافت

🔸بعد از بازداشت «پاول دورف»، مؤسس و مدیرعامل #تلگرام، در فرانسه، بازار رمزارزهای مرتبط با این پیام‌رسان روزهای متلاطمی را سپری می‌کند. بر همین اساس، ارزش توکن Toncoin که وابسته به این پیام‌رسان است با کاهشی حدود ۲.۷ میلیارد دلاری روبه‌رو شده است.

🔸توکن Toncoin روز دوشنبه در سنگاپور با قیمت تقریبی ۵.۶۹ دلار معامله شد که کاهشی ۱۶ درصدی نسبت به قبل را نشان می‌دهد. پیش‌بینی می‌شود که بازار توکن‌های مرتبط با تلگرام تا زمانی که #پاول_دورف در بازداشت است، همچنان متلاطم باقی بماند. درحالی‌که مدیر Toncoin پیش‌ازاین گفته بود که آن‌ها مجزا از تلگرام فعالیت می‌کنند، اما ارتباط بین آن‌ها انکارناپذیر است.

🔸🔸🔸

🔴 تداوم حمایت از پاول دورف؛ ایلان ماسک بر دفاع از آزادی بیان تأکید دارد

🔹از زمانی که #ایلان_ماسک توییتر را خرید و نام آن را به ایکس تغییر داد، قصد او این بوده که این شبکه اجتماعی را به یک پلتفرم با «آزادی بیان مطلق» تبدیل کند. پس از دستگیری #پاول_دورف نیز او در یک پست این موضوع را به میلیون‌ها دنبال‌کننده خود یادآور شد:

«برای حمایت از آزادی‌بیان ضروری است که پست‌های ایکس را برای افرادی که می‌شناسید، به ویژه در کشورهایی که سانسور دارند، ارسال کنید.»

🔹پیش‌ازاین، او ضمن بازنشر مصاحبه دورف که در آن مدیرعامل #تلگرام از رویکرد مبتنی بر آزادی‌ بیان در ایکس حمایت کرده بود، هشتگ FreePavel را منتشر کرد. سپس در پست دیگری به فرانسوی نوشت: «آزادی، آزادی! آزادی؟» او همچنین با انتشار یک پست که در آن به دستگیری معترضان در بریتانیا برای انتشار میم‌ها، بازداشت دورف در فرانسه و غیره اشاره شده بود، نوشت: «دوران خطرناکی است.»

🔸🔸🔸

♨️اسنودن: رئیس‌جمهور فرانسه، مدیرعامل تلگرام را گروگان گرفته است

🔸#ادوارد_اسنودن، افشاگر معروف، در واکنش به دستگیری بنیان‌گذار #تلگرام، #پاول_دورف، در حساب ایکس خود نوشت که این اقدام تجاوز به حقوق اساسی بشر در آزادی بیان است:
«من از اینکه مکرون برای دسترسی به ارتباطات خصوصی کاربران به گروگان‌گیری روی آورده است، متعجب و عمیقاً متأسفم. این اقدام نه‌تنها جایگاه فرانسه، بلکه جهان را پایین می‌آورد.»

🔸🔸🔸

همستر کامبت و نات‌کوین به بازداشت مدیرعامل تلگرام اعتراض کردند

🔺هم‌زمان با بازداشت «پاول دورف»، مدیرعامل و مؤسس #تلگرام در فرانسه، توسعه‌دهندگان بازی‌های کریپتو که بر بستر این پیام‌رسان اجرا می‌شوند، به این عمل دولت فرانسه اعتراض کردند. این بازی‌ها جمعاً صدها میلیون کاربر تلگرام را جذب کرده‌اند.

🔺مالکان و توسعه‌دهندگان بازی‌های کریپتوی مبتنی بر تلگرام مانند همستر کامبت و Notcoin با به‌اشتراک‌گذاشتن استیکرهای لوگو تلگرام و پیام‌هایی در بازی‌های خود، به بازداشت #پاول_دورف اعتراض کردند.

🔸🔸🔸



👑 @gopher_academy
Forwarded from 🎄 یک برنامه نویس تنبل (Raymond Dev)
🔶 مایکروسافت پس از ۳۹ سال کنترل پنل را از ویندوز حذف می‌کند.

گزینه Settings در ویندوز با هدف استفاده راحت‌تر از محصولات مجهز به نمایشگر لمسی طراحی شد و درکنار کنترل پنل در دسترس کاربران قرار داشت. حالا با هدف ارائه تجربه کاربرپسندتر، مایکروسافت رسماً اعلام کرده این بخش را به‌طور کامل با صفحه کنترل پنل جایگزین خواهد کرد.

#خبر

@TheRaymondDev
Forwarded from 
@GimmeStickerBot

تبدیل استیکر (عکس‌برگردان)، ایموجی (شکلک) به همدیگر و به تصاویر:

#موقت
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی (SeYeD.Dev)
طبق شنیده‌ها؛ پاول از لحظه بازداشت دست به اعتصاب‌غذای خشک زده ؛ و فقط عسل و ارده شیره می‌خورد.

#FREEPAVEL
#FREEDUROV

@SEYED_BAX
Forwarded from کداکسپلور | CodeExplore (Koorosh)
کدام یک از موارد زیر برای ایمپورت کردن پکیج fmt در زبان Go صحیح است؟
Anonymous Quiz
48%
import "fmt"
13%
<include fmt>
28%
using fmt;
11%
require "fmt"