Forwarded from ASafaeirad
Forwarded from Golden Code (@lix)
یه روش برای اینکه کارهای تکراریه مثل ساخت یه سری کلاسهای خاص (مثلا DTO) رو خودکار کنید
اولش ببینیم چرا custom artisan command مفیده؟
صرفهجویی در زمان
کاهش خطا: از نوشتن دستی کد جلوگیری میکنین
وقت بیشتری برای کدنویسی بخشهای مهم پروژه دارید.
📌 چطوری custom artisan command بسازیم؟
1. ایجاد کامند جدید:
با دستور زیر، یک کامند جدید ایجاد کنین:
2. نوشتن منطق دستور:
در کلاس جدید،دستور مورد نظرتونو بنویسین (مثل ساخت یک DTO جدید).
یه مثال:
3. اجرای دستور:
حالا با این دستور میتونین بسادگی کلاسهای DTO جدید بسازید:
خلاصش که:
با استفاده از custom artisan command، میتونین کارهای تکراریتون رو خودکار کنین و توسعه پروژتون رو هم سرعت بدید.
#Laravel #Laravel_tip #لاراول
@GoldenCodeir 🔥
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/mmartin_joo/status/1982797695568707742?t=EQ-hdRBX3rRgGuPH2EyA9Q&s=19
اولش ببینیم چرا custom artisan command مفیده؟
صرفهجویی در زمان
کاهش خطا: از نوشتن دستی کد جلوگیری میکنین
وقت بیشتری برای کدنویسی بخشهای مهم پروژه دارید.
📌 چطوری custom artisan command بسازیم؟
1. ایجاد کامند جدید:
با دستور زیر، یک کامند جدید ایجاد کنین:
php artisan make:command CreateDto
2. نوشتن منطق دستور:
در کلاس جدید،دستور مورد نظرتونو بنویسین (مثل ساخت یک DTO جدید).
یه مثال:
<?php
protected $signature = 'make:dto {name}';
protected $description = 'Create a new DTO class';
public function handle() {
$name = $this->argument('name');
file_put_contents(app_path("Dtos/{$name}.php"), "<?php\n\nclass {$name} {}\n");
$this->info("DTO {$name} created successfully!");
}
3. اجرای دستور:
حالا با این دستور میتونین بسادگی کلاسهای DTO جدید بسازید:
php artisan make:dto MyDto
خلاصش که:
با استفاده از custom artisan command، میتونین کارهای تکراریتون رو خودکار کنین و توسعه پروژتون رو هم سرعت بدید.
#Laravel #Laravel_tip #لاراول
@GoldenCodeir 🔥
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/mmartin_joo/status/1982797695568707742?t=EQ-hdRBX3rRgGuPH2EyA9Q&s=19
X (formerly Twitter)
Martin Joo (@mmartin_joo) on X
💡 Did you know you can create custom artisan generator commands for your classes?
If you find yourself creating the same type of class over and over again (for example, DTOs), you might want to take a look at it:
If you find yourself creating the same type of class over and over again (for example, DTOs), you might want to take a look at it:
Forwarded from Gopher Academy
🔵 عنوان مقاله
The Concurrency Conundrum: A Story of Curiosity and Code
🟢 خلاصه مقاله:
**این مقاله داستان برخورد با یک مشکل رایج در همزمانی است: سرویس ظاهراً سالمی که زیر بار گاهی قفل میکرد و درخواستها معطل میماندند. با افزودن لاگهای ساختیافته، ابزارهای رهگیری و یک تست حداقلیِ قابلبازتولید، ریشه مشخص شد: ترتیبگیری نادرست قفلها و بخشهای بحرانی طولانی که به بنبست و گاهی رقابت در دسترسی به متغیرها منجر میشد. راهحل با تعریف نظم ثابت در ترتیب اخذ قفلها، جایگزینی قفل سراسری با قفلهای ریزدانه و read-write، کوچککردن بخشهای بحرانی و پرهیز از I/O زیر قفل، بهکارگیری try-lock با backoff و timeout، و در مسیرهای پرتردد، حرکت به سمت پیاممحوری بهجای وضعیت مشترک اجرا شد. سپس با Thread Sanitizer و ابزارهای تشخیص بنبست در CI، تستهای تنشی و مبتنی بر ویژگی، و سنجههای مربوط به تراکم قفل، سامانه سختجانتر شد. جمعبندی: مدل همزمانی را ساده نگه دارید، دادههای نامتغیر و عملیات idempotent را ترجیح دهید، از سازوکارهای سطحبالا استفاده کنید، و ترتیب قفلها و ناورداییها را مستند و پایشپذیر کنید.
#Concurrency #Locking #Deadlock #RaceConditions #Multithreading #Debugging #SoftwareEngineering #Reliability
🟣لینک مقاله:
https://golangweekly.com/link/176333/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
The Concurrency Conundrum: A Story of Curiosity and Code
🟢 خلاصه مقاله:
**این مقاله داستان برخورد با یک مشکل رایج در همزمانی است: سرویس ظاهراً سالمی که زیر بار گاهی قفل میکرد و درخواستها معطل میماندند. با افزودن لاگهای ساختیافته، ابزارهای رهگیری و یک تست حداقلیِ قابلبازتولید، ریشه مشخص شد: ترتیبگیری نادرست قفلها و بخشهای بحرانی طولانی که به بنبست و گاهی رقابت در دسترسی به متغیرها منجر میشد. راهحل با تعریف نظم ثابت در ترتیب اخذ قفلها، جایگزینی قفل سراسری با قفلهای ریزدانه و read-write، کوچککردن بخشهای بحرانی و پرهیز از I/O زیر قفل، بهکارگیری try-lock با backoff و timeout، و در مسیرهای پرتردد، حرکت به سمت پیاممحوری بهجای وضعیت مشترک اجرا شد. سپس با Thread Sanitizer و ابزارهای تشخیص بنبست در CI، تستهای تنشی و مبتنی بر ویژگی، و سنجههای مربوط به تراکم قفل، سامانه سختجانتر شد. جمعبندی: مدل همزمانی را ساده نگه دارید، دادههای نامتغیر و عملیات idempotent را ترجیح دهید، از سازوکارهای سطحبالا استفاده کنید، و ترتیب قفلها و ناورداییها را مستند و پایشپذیر کنید.
#Concurrency #Locking #Deadlock #RaceConditions #Multithreading #Debugging #SoftwareEngineering #Reliability
🟣لینک مقاله:
https://golangweekly.com/link/176333/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Wawandco
The Concurrency Conundrum: A Story of Curiosity and Code | Wawandco
Building a simple reservation system sounds easy—until concurrency steps in. As a product grows, naive checks break down. This post unpacks why atomicity isn’t enough, and how pessimistic vs. optimistic locking prevent overbooking at scale.
Forwarded from DevTwitter | توییت برنامه نویسی
This media is not supported in your browser
VIEW IN TELEGRAM
کمپانی HuggingFace اومده و یک بلاگ (که میتونید به صورت یک کتاب هم دانلود کنید و بخونید) از تمام مراحل training تا post training و fine tuning مدلهای کوچک LLM و VLM که خودشون انجام دادند را درست کردند. یعنی تمام نکات و قلق ها را توضیح میدند.
Link: https://huggingface.co/spaces/HuggingFaceTB/smol-training-playbook
@DevTwitter | <Mehdi Allahyari/>
Link: https://huggingface.co/spaces/HuggingFaceTB/smol-training-playbook
@DevTwitter | <Mehdi Allahyari/>
Forwarded from Linuxor ?
علت اینکه هوش مصنوعی بعد از ده ها سال یهویی پیشرفت کرد بخاطر این بود هوش مصنوعی گیر کرده بود توی گلوگاه خودش و تونست با ظهور چهارتا کارت گرافیک قوی و یه الگوریتم ترنسفورمر گلوگاه رو بشکنه، حالا صد ها میلیارد دلار روش سرمایه گذاری شده و قراره براش کلی زیرساخت بسازن، یک درصد فکر کنید یه گلوگاه دیگه جلوی پیشرفت باشه و همه پول هایی که خرج هوش مصنوعی شده هدر بره (گلوگاه یعنی مثلا از اینی که وجود داره خیلی پیشرفت نکنه و اگرم کنه یه درصد خیلی کم، و این محتمله، گلوگاه میتونه مثلا عدم کیفیت داده ها و یا حتی انرژی باشه)
@Linuxor
@Linuxor
Forwarded from Reza Jafari
سلام و درود بچهها
ما یه ظرفیت دیگه برای این کارآموزی باز کردیم (حضوری) و شما میتونید شرکت کنید، امکان استخدام بعد از اتمام کارآموزی دانشگاه هم وجود داره.
میتونید رزومههاتون رو به آیدی زیر ارسال کنید :
@rzdjafari
ما یه ظرفیت دیگه برای این کارآموزی باز کردیم (حضوری) و شما میتونید شرکت کنید، امکان استخدام بعد از اتمام کارآموزی دانشگاه هم وجود داره.
میتونید رزومههاتون رو به آیدی زیر ارسال کنید :
@rzdjafari
Forwarded from DevTwitter | توییت برنامه نویسی
سیستم سفارش رستوران من روی گیتهاب منتشر شد!
ساده، کاربردی و آماده استفاده برای مدیریت سفارشات
https://github.com/nimaohamdi/Restaurant-Order-System
@DevTwitter | <Nimo/>
ساده، کاربردی و آماده استفاده برای مدیریت سفارشات
https://github.com/nimaohamdi/Restaurant-Order-System
@DevTwitter | <Nimo/>
Forwarded from CleverDevs (Mammad)
یکی از بچه های چنل یه پکیج لاراول نوشته که کمکتون میکنه راحتتر ساختار پروژه هاتونو به چت بات ها بفهمونید
میتونید یه نگاه به گیت هابش بندازید
https://github.com/saeedvir/laravel-project-markdown
اگه توضیحات فارسی هم خواستید یه مطلب کوچیک براش تو ویرگول نوشته
#Laravel #php
@CleverDevs - @CleverDevsGp
میتونید یه نگاه به گیت هابش بندازید
https://github.com/saeedvir/laravel-project-markdown
اگه توضیحات فارسی هم خواستید یه مطلب کوچیک براش تو ویرگول نوشته
#Laravel #php
@CleverDevs - @CleverDevsGp
Forwarded from Gopher Academy
🔵 عنوان مقاله
SFTPGo 2.7: A Full Featured File Transfer Solution
🟢 خلاصه مقاله:
این نسخه از SFTPGo 2.7 یک سرور انتقال فایل مبتنی بر Go است که پروتکلهای SFTP، HTTP/S، FTP/S و WebDAV را در یک راهکار یکپارچه ارائه میدهد. تمرکز آن بر پیکربندی منعطف و کنترل دقیق دسترسی است تا مدیران بتوانند سیاستها، مسیرها و رفتار کاربران را مطابق نیاز تنظیم کنند. نقطهقوت اصلی، تعامل با storageهای ابری است؛ میتوان backendهایی مانند Amazon S3، Google Cloud Storage و Azure Blob را مانند پوشههای محلی در اختیار کلاینتها گذاشت و همان داده را همزمان از چند پروتکل ارائه کرد. امنیت انتقال با TLS و رمزنگاری مدرن تضمین میشود و ثبت رویدادها نیز برای نظارت و انطباق در دسترس است. نسخه 2.7 بر پایداری و بلوغ خط v2 تأکید دارد و گزینهای مناسب برای نوسازی جریانهای انتقال فایل و پلزدن میان کلاینتهای قدیمی و زیرساختهای cloud-first است.
#SFTPGo #SFTP #FTP #WebDAV #GoLang #CloudStorage #FileTransfer #DevOps
🟣لینک مقاله:
https://golangweekly.com/link/176312/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
SFTPGo 2.7: A Full Featured File Transfer Solution
🟢 خلاصه مقاله:
این نسخه از SFTPGo 2.7 یک سرور انتقال فایل مبتنی بر Go است که پروتکلهای SFTP، HTTP/S، FTP/S و WebDAV را در یک راهکار یکپارچه ارائه میدهد. تمرکز آن بر پیکربندی منعطف و کنترل دقیق دسترسی است تا مدیران بتوانند سیاستها، مسیرها و رفتار کاربران را مطابق نیاز تنظیم کنند. نقطهقوت اصلی، تعامل با storageهای ابری است؛ میتوان backendهایی مانند Amazon S3، Google Cloud Storage و Azure Blob را مانند پوشههای محلی در اختیار کلاینتها گذاشت و همان داده را همزمان از چند پروتکل ارائه کرد. امنیت انتقال با TLS و رمزنگاری مدرن تضمین میشود و ثبت رویدادها نیز برای نظارت و انطباق در دسترس است. نسخه 2.7 بر پایداری و بلوغ خط v2 تأکید دارد و گزینهای مناسب برای نوسازی جریانهای انتقال فایل و پلزدن میان کلاینتهای قدیمی و زیرساختهای cloud-first است.
#SFTPGo #SFTP #FTP #WebDAV #GoLang #CloudStorage #FileTransfer #DevOps
🟣لینک مقاله:
https://golangweekly.com/link/176312/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Sftpgo
SFTP & FTP as a Managed Service (SaaS) and On-premise
Fully featured and highly configurable SFTP server with HTTP/S Web UI, FTP/S and WebDAV - As a Managed Service, On-premise, Cloud, Hybrid Cloud - Data at Rest Encryption, S3, Google Cloud, Azure Blob.
Forwarded from ⚝ (امیرحسین پناهےفر)
یکی از اتفاقات جالب و البته آموزنده اخیر برام outage منطقه aws us-east-1 بود.
اختلالی که ریشه اون به یک مشکل رو سرویس dns داخلی مرتبط با ddb برمیگشت و در نهایت روی زنجیره ای از سرویس های critical تاثیر گذاشت؛ بخشی از api gateway، lambda، IAM، cloudwatch و حتی سرویسهای third party...
این ایونت برام یه نکته مهم بودش که تو سیستم های دیستریبیوت، دیپندسی های لایه های ابسترکت و failure domain های اشتباهی، همیشه دیر یا زود خودشون رو نشون میدن :)
این دقیقا همون دلیلی هست که مهندسی آشوب یه کار اختیاری نیستش و صد البته لایف سایکل دیزاین دیستریبیوت سیستم به حساب میاد.
در واقع هدف اصلی اینه فرض کنیم هر چیز قابل تصوری در هر لحظه ممکنه fail کنه و بعدش این failure رو به طور کنترل شده و آگاهانه ایجادش میکنیم تا بتونیم
یکی متریک ha رو بسنجیم یا رفتار failover و ریکاوری رو به چشم ببینیم، در این میان دیپندنسی های کریتکال هیدن کاپلینگ رو کشف کنیم یا برای مدار های دفاعی مون مثل retry، timeout، backoff، circuit breaker ولیدیشن بگیریم.
بخوام تقسیمش کنم اون رو به سه failure domain تقسیمش میشه کرد مشابه مدل simian army نتفلکس
اولی سرویس لول
اسکوپ اختلالش به یه سرویس، یه پاد، یه اینیستنس یا یه پروسس بر میگرده
مثالش کیل کردن یه کانتینر رندوم یا ریستارت کردن میکروسرویس میشه اشاره کردش حتی شبیه سازی کردن latency فقط روی یه بخش مثل auth تمرکز کرد.
خروجیش میشه سنجش resiliency روی لایه اپلیکیشن، شناسایی دپندنسی های شکننده tight coupling روی پالیسی های retry/timeout هم تاثیر خوبی میذاره.
دومی az لول
اسکوپ دیس اوردرش از مدار خارج کردن یه availability zone
مثلا شات داون کردن کل subnet مربوط به یه زون یا سیمولیت کردن دیسکانکت کامل nat/route table یه az حتی حذف کردن مولتی az رپلیکاها برای دیتابیس و بررسی رفتار fallback اینطوری میشه فهمید که سنجش resiliency روی لایه اینفرا چقدر تاب میاره از ولیدیشن دیزاین لود بالانسینگ، روتینگ و vpc میشه در آورد ارزیابی failover دیتابیس با مولتی az رپلیکا به چه صورتیه... اینا نشون میدن دیزان flaws ها چی هستند.
سومی failure در حد ریجن بشه
اسکوپش شات داون کل ریجنه hell yeah :)
مثلا شبیه سازی همین قطع کامل us-east-1 کیس سناریو خوبیه که failover کنه کل ترافیک رو به eu-west-1 واسه تست global control plane resiliency هم کاراس
یه نکته ای رو بگم این روند chaos engineering تخریب رندوم نیستش یه روش علمی با سایکل کامله یه چند تا مثال واقعی بیارم بهتر درک بشه
اگه سرویس dns اینترنال ms 500 latency داشته باشه آیا میکروسرویس x بگیم همچنان قادر خواهد بود درخواست های کریتکال رو پاسخ بده؟
اگه db regionally unreachable بشه، آیا سیستم ما به رپلیکا جغرافیایی failover میکنه؟
اگه یه az کامل شات داون بشه آیا سیستم بدون human intervention به کارش ادامه میده؟
هدف مون از این اسکوپ محدود کردن دومین به اصطلاح blast radius به حساب میاد
به صورت تدریجی از لوکال به سمت small subset بعدش az و در آخر اسکوپ ریجن در حین اینکه داریم failure رو ایجاد میکنیم تاثیر رو هم باس مدیریت کنیم.
بعد این تست واسه پست مورتن نوشتن و هاردنینگ باس توجه کنیم اصلی ترین هدف مون بهبود دیزاین سیستمه resilient بشه در غیر این صورت فایده نداره.
اختلالی که ریشه اون به یک مشکل رو سرویس dns داخلی مرتبط با ddb برمیگشت و در نهایت روی زنجیره ای از سرویس های critical تاثیر گذاشت؛ بخشی از api gateway، lambda، IAM، cloudwatch و حتی سرویسهای third party...
این ایونت برام یه نکته مهم بودش که تو سیستم های دیستریبیوت، دیپندسی های لایه های ابسترکت و failure domain های اشتباهی، همیشه دیر یا زود خودشون رو نشون میدن :)
این دقیقا همون دلیلی هست که مهندسی آشوب یه کار اختیاری نیستش و صد البته لایف سایکل دیزاین دیستریبیوت سیستم به حساب میاد.
در واقع هدف اصلی اینه فرض کنیم هر چیز قابل تصوری در هر لحظه ممکنه fail کنه و بعدش این failure رو به طور کنترل شده و آگاهانه ایجادش میکنیم تا بتونیم
یکی متریک ha رو بسنجیم یا رفتار failover و ریکاوری رو به چشم ببینیم، در این میان دیپندنسی های کریتکال هیدن کاپلینگ رو کشف کنیم یا برای مدار های دفاعی مون مثل retry، timeout، backoff، circuit breaker ولیدیشن بگیریم.
بخوام تقسیمش کنم اون رو به سه failure domain تقسیمش میشه کرد مشابه مدل simian army نتفلکس
اولی سرویس لول
اسکوپ اختلالش به یه سرویس، یه پاد، یه اینیستنس یا یه پروسس بر میگرده
مثالش کیل کردن یه کانتینر رندوم یا ریستارت کردن میکروسرویس میشه اشاره کردش حتی شبیه سازی کردن latency فقط روی یه بخش مثل auth تمرکز کرد.
خروجیش میشه سنجش resiliency روی لایه اپلیکیشن، شناسایی دپندنسی های شکننده tight coupling روی پالیسی های retry/timeout هم تاثیر خوبی میذاره.
دومی az لول
اسکوپ دیس اوردرش از مدار خارج کردن یه availability zone
مثلا شات داون کردن کل subnet مربوط به یه زون یا سیمولیت کردن دیسکانکت کامل nat/route table یه az حتی حذف کردن مولتی az رپلیکاها برای دیتابیس و بررسی رفتار fallback اینطوری میشه فهمید که سنجش resiliency روی لایه اینفرا چقدر تاب میاره از ولیدیشن دیزاین لود بالانسینگ، روتینگ و vpc میشه در آورد ارزیابی failover دیتابیس با مولتی az رپلیکا به چه صورتیه... اینا نشون میدن دیزان flaws ها چی هستند.
سومی failure در حد ریجن بشه
اسکوپش شات داون کل ریجنه hell yeah :)
مثلا شبیه سازی همین قطع کامل us-east-1 کیس سناریو خوبیه که failover کنه کل ترافیک رو به eu-west-1 واسه تست global control plane resiliency هم کاراس
یه نکته ای رو بگم این روند chaos engineering تخریب رندوم نیستش یه روش علمی با سایکل کامله یه چند تا مثال واقعی بیارم بهتر درک بشه
اگه سرویس dns اینترنال ms 500 latency داشته باشه آیا میکروسرویس x بگیم همچنان قادر خواهد بود درخواست های کریتکال رو پاسخ بده؟
اگه db regionally unreachable بشه، آیا سیستم ما به رپلیکا جغرافیایی failover میکنه؟
اگه یه az کامل شات داون بشه آیا سیستم بدون human intervention به کارش ادامه میده؟
هدف مون از این اسکوپ محدود کردن دومین به اصطلاح blast radius به حساب میاد
به صورت تدریجی از لوکال به سمت small subset بعدش az و در آخر اسکوپ ریجن در حین اینکه داریم failure رو ایجاد میکنیم تاثیر رو هم باس مدیریت کنیم.
بعد این تست واسه پست مورتن نوشتن و هاردنینگ باس توجه کنیم اصلی ترین هدف مون بهبود دیزاین سیستمه resilient بشه در غیر این صورت فایده نداره.
اَحپِفاِیْسم 🍋
Forwarded from IRCF | اینترنت آزاد برای همه
نسخه ۳.۱۰ از #فیلترشکن متنباز و رایگان #OblivionDesktop برای ویندوز، لینوکس و مکاواس منتشر شد.
در اینآپدیت هسته مسکپلاس به نسخه جدید بروزرسانی شده، مشکل قطعشدن VPN هنگام خروجاز حالت Sleep برطرف شده، قابلیت Local DNS Resolver اضافه شده و برخی از مشکلات برطرف شدن.
💡 برای متصلشدن کافیه متد اتصال رو روی مسک قرار بدین و از اندپوینت سفارشی
👉 github.com/bepass-org/oblivion-desktop/releases
🔍 ircf.space/software
@ircfspace
در اینآپدیت هسته مسکپلاس به نسخه جدید بروزرسانی شده، مشکل قطعشدن VPN هنگام خروجاز حالت Sleep برطرف شده، قابلیت Local DNS Resolver اضافه شده و برخی از مشکلات برطرف شدن.
💡 برای متصلشدن کافیه متد اتصال رو روی مسک قرار بدین و از اندپوینت سفارشی
162.159.198.2:443 استفاده کنین👉 github.com/bepass-org/oblivion-desktop/releases
🔍 ircf.space/software
@ircfspace
Forwarded from Linuxor ?
وزیر ارتباطات: فیلترشکنها باعث حملات سایبری از داخل کشور شدهاند
استفاده از فیلترشکنها آسیبهای امنیتی جدی به همراه داشته و به آلودگی شبکه منجر شده است. این آلودگی بستر را برای حملات سایبری از داخل کشور به زیرساختها فراهم کرده و بسیاری از حملات سالهای اخیر از داخل بودهاند، نه خارج از کشور.
@Linuxor
استفاده از فیلترشکنها آسیبهای امنیتی جدی به همراه داشته و به آلودگی شبکه منجر شده است. این آلودگی بستر را برای حملات سایبری از داخل کشور به زیرساختها فراهم کرده و بسیاری از حملات سالهای اخیر از داخل بودهاند، نه خارج از کشور.
@Linuxor
Forwarded from DevTwitter | توییت برنامه نویسی
This media is not supported in your browser
VIEW IN TELEGRAM
این پروژههای Fun هم حس و حال خودشون رو دارند مثل Screensaverهای Cli.
بعضی ها موقع ای که از Cli استفاده نمی کنند، اجرا می کنند، گهگاهی هم خودم برای باحال شدن پروژهام داخل Loading اسکریپتها استفاده می کنم.
خلاصه باحال هست، یک نگاه کنید.
https://github.com/attogram/bash-screensavers
@DevTwitter | <VAHID NAMENI/>
بعضی ها موقع ای که از Cli استفاده نمی کنند، اجرا می کنند، گهگاهی هم خودم برای باحال شدن پروژهام داخل Loading اسکریپتها استفاده می کنم.
خلاصه باحال هست، یک نگاه کنید.
https://github.com/attogram/bash-screensavers
@DevTwitter | <VAHID NAMENI/>