Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
نمایش وضعیت آب و هوا در ترمینال:
در لینوکس برنامههای مختلفی برای نمایش وضعیت آب و هوا وجود دارد، از جمله ویجتها، اپلتها، و کلاینتهای مختلف. با این حال، wttr.in این قابلیت را مستقیماً از طریق خط فرمان ارائه میدهد و میتواند پیشبینی چند روزهای از وضعیت آب و هوا برای هر مکانی که مشخص کنید، نمایش دهد.
ویژگیهای اصلی wttr.in این است که نیازی به نصب یا تنظیمات پیچیده مانند کلید API ندارد و ظاهر جذابی دارد. همچنین اگر دستور curl را نصب کرده باشید، میتوانید به سادگی با اجرای دستور زیر، وضعیت آب و هوای یک شهر مشخص را دریافت کنید:
نویسنده: حسین سیلانی
منبع : کانال لینوکسی: لینوکس تی ان تی
@linuxtnt
حمایت از کانال-donate
https://zarinp.al/learninghive.ir
در لینوکس برنامههای مختلفی برای نمایش وضعیت آب و هوا وجود دارد، از جمله ویجتها، اپلتها، و کلاینتهای مختلف. با این حال، wttr.in این قابلیت را مستقیماً از طریق خط فرمان ارائه میدهد و میتواند پیشبینی چند روزهای از وضعیت آب و هوا برای هر مکانی که مشخص کنید، نمایش دهد.
ویژگیهای اصلی wttr.in این است که نیازی به نصب یا تنظیمات پیچیده مانند کلید API ندارد و ظاهر جذابی دارد. همچنین اگر دستور curl را نصب کرده باشید، میتوانید به سادگی با اجرای دستور زیر، وضعیت آب و هوای یک شهر مشخص را دریافت کنید:
curl wttr.in/City
نویسنده: حسین سیلانی
منبع : کانال لینوکسی: لینوکس تی ان تی
@linuxtnt
حمایت از کانال-donate
https://zarinp.al/learninghive.ir
Forwarded from DevTwitter | توییت برنامه نویسی
اوبونتو، توزیع محبوب لینوکس؛ بیستساله شد.
این توزیع، در اکتبر ۲۰۰۴ توسط «مارک شاتلورث» و بر پایه «دبیان گنو/لینوکس» با هدف تبدیل شدن به یک سیستمعامل همگانی دسکتاپ، ارائه شد.
در حال حاضر این توزیع انتخاب اول بسیاری افراد هم برای دسکتاپ و هم برای سروره.
تولدش مبارک!
@DevTwitter | <Mohammadreza Haghiri/>
این توزیع، در اکتبر ۲۰۰۴ توسط «مارک شاتلورث» و بر پایه «دبیان گنو/لینوکس» با هدف تبدیل شدن به یک سیستمعامل همگانی دسکتاپ، ارائه شد.
در حال حاضر این توزیع انتخاب اول بسیاری افراد هم برای دسکتاپ و هم برای سروره.
تولدش مبارک!
@DevTwitter | <Mohammadreza Haghiri/>
Forwarded from آموزش لاراول | LaravelHub (rwx-rwx-rwx)
🔥 آموزش Broadcasting توی لاراول (با مثال) 🔥
رفقا، امروز میخوایم بریم سراغ یه قابلیت خف ن تو لاراول به اسم Broadcasting! با این قابلیت میتونین یهسری رویدادها رو زنده (real-time) برای کاربرهاتون بفرستین. یعنی مثلاً تو چت آنلاین، اعلانهای لحظهای یا هر چیز دیگه که لازمه سریع به کاربر برسه، این خیلی کارآمده. 😎
خب بریم ببینیم چجوری میتونیم این کار رو انجام بدیم! 👇
قبل از هرچیزی باید Broadcasting رو تو پروژهتون راه بندازین. توی فایل .env، بیاین و Broadcasting رو روی سرویس Pusher تنظیم کنیم. البته میتونین Redis یا Socket.io هم استفاده کنین، ولی اینجا با Pusher میریم جلو. 💻
تو فایل .env اینا رو اضافه کنین:
بعدش باید کتابخونه pusher رو نصب کنین:
حالا میریم سراغ تنظیمات بیشتر!
بعد از تنظیمات اولیه، باید یه سری کانفیگ توی فایل config/broadcasting.php انجام بدیم. تو این فایل، Pusher رو به عنوان درایور انتخاب کنید:
حالا وقتشه یه ایونت درست کنیم! با دستور زیر یه ایونت به اسم MessageSent میسازیم:
این دستور یه کلاس توی پوشه app/Events میسازه. حالا بیاین تو این فایل کد زیر رو اضافه کنیم:
تو این مثال، وقتی یه پیغام ارسال میشه، ما این ایونت رو برای کانال chat broadcast میکنیم. ✉️
حالا باید توی کدی که داریم، ایونت رو بفرستیم. مثلاً توی کنترلر:
این کد باعث میشه که پیغام به صورت real-time بره برای کسایی که تو کانال chat عضو هستن. 💬
برای اینکه از طرف کاربرها پیامها رو دریافت کنیم، باید توی سمت فرانت هم یه سری تنظیمات انجام بدیم. اگه از Vue.js یا React استفاده میکنین، میتونین از Laravel Echo استفاده کنین که کدتون رو خیلی راحتتر و تمیزتر میکنه.
اول laravel-echo و pusher-js رو نصب کنین:
بعد توی فایل جاوااسکریپتتون، چیزی مثل این رو تنظیم کنین:
به همین راحتی! وقتی پیامی ارسال بشه، شما اون رو از طریق جاوااسکریپت توی مرورگر میگیرید و میتونید هر کاری که میخواید باهاش انجام بدید! 😍
خلاصه اگه یه اپلیکیشن دارین که نیاز به رویدادهای زنده داره، Broadcasting تو لاراول میتونه بهترین راهحل باشه. با استفاده از Pusher و Laravel Echo، کارتون خیلی سریع و تمیز انجام میشه.
سوالی داشتین تو کامنتها بپرسین! 😁
🔥⚡️ کانال آموزشی LaravelHub
@LaraveHub
رفقا، امروز میخوایم بریم سراغ یه قابلیت خف ن تو لاراول به اسم Broadcasting! با این قابلیت میتونین یهسری رویدادها رو زنده (real-time) برای کاربرهاتون بفرستین. یعنی مثلاً تو چت آنلاین، اعلانهای لحظهای یا هر چیز دیگه که لازمه سریع به کاربر برسه، این خیلی کارآمده. 😎
خب بریم ببینیم چجوری میتونیم این کار رو انجام بدیم! 👇
قبل از هرچیزی باید Broadcasting رو تو پروژهتون راه بندازین. توی فایل .env، بیاین و Broadcasting رو روی سرویس Pusher تنظیم کنیم. البته میتونین Redis یا Socket.io هم استفاده کنین، ولی اینجا با Pusher میریم جلو. 💻
تو فایل .env اینا رو اضافه کنین:
BROADCAST_DRIVER=pusher
PUSHER_APP_ID=your-app-id
PUSHER_APP_KEY=your-app-key
PUSHER_APP_SECRET=your-app-secret
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1
بعدش باید کتابخونه pusher رو نصب کنین:
composer require pusher/pusher-php-server
حالا میریم سراغ تنظیمات بیشتر!
بعد از تنظیمات اولیه، باید یه سری کانفیگ توی فایل config/broadcasting.php انجام بدیم. تو این فایل، Pusher رو به عنوان درایور انتخاب کنید:
'connections' => [
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
'cluster' => env('PUSHER_APP_CLUSTER'),
'useTLS' => true,
],
],
],
حالا وقتشه یه ایونت درست کنیم! با دستور زیر یه ایونت به اسم MessageSent میسازیم:
php artisan make:event MessageSent
این دستور یه کلاس توی پوشه app/Events میسازه. حالا بیاین تو این فایل کد زیر رو اضافه کنیم:
class MessageSent implements ShouldBroadcast
{
public $message;
public function __construct($message)
{
$this->message = $message;
}
public function broadcastOn()
{
return new Channel('chat');
}
}
تو این مثال، وقتی یه پیغام ارسال میشه، ما این ایونت رو برای کانال chat broadcast میکنیم. ✉️
حالا باید توی کدی که داریم، ایونت رو بفرستیم. مثلاً توی کنترلر:
event(new MessageSent('سلام! این یه پیام لایو از طرف علیرضا هست'));این کد باعث میشه که پیغام به صورت real-time بره برای کسایی که تو کانال chat عضو هستن. 💬
برای اینکه از طرف کاربرها پیامها رو دریافت کنیم، باید توی سمت فرانت هم یه سری تنظیمات انجام بدیم. اگه از Vue.js یا React استفاده میکنین، میتونین از Laravel Echo استفاده کنین که کدتون رو خیلی راحتتر و تمیزتر میکنه.
اول laravel-echo و pusher-js رو نصب کنین:
npm install --save laravel-echo pusher-js
بعد توی فایل جاوااسکریپتتون، چیزی مثل این رو تنظیم کنین:
import Echo from "laravel-echo";
window.Pusher = require('pusher-js');
window.Echo = new Echo({
broadcaster: 'pusher',
key: process.env.MIX_PUSHER_APP_KEY,
cluster: process.env.MIX_PUSHER_APP_CLUSTER,
encrypted: true
});
window.Echo.channel('chat')
.listen('MessageSent', (e) => {
console.log(e.message);
});
به همین راحتی! وقتی پیامی ارسال بشه، شما اون رو از طریق جاوااسکریپت توی مرورگر میگیرید و میتونید هر کاری که میخواید باهاش انجام بدید! 😍
خلاصه اگه یه اپلیکیشن دارین که نیاز به رویدادهای زنده داره، Broadcasting تو لاراول میتونه بهترین راهحل باشه. با استفاده از Pusher و Laravel Echo، کارتون خیلی سریع و تمیز انجام میشه.
سوالی داشتین تو کامنتها بپرسین! 😁
🔥⚡️ کانال آموزشی LaravelHub
@LaraveHub
Forwarded from Gopher Academy
نکته خیلی جالبش شاید استفاده از GOMEMLIMIT بصورت dynamic هست که در runtime ست میشه..
Go Beyond: Building Performant and Reliable Golang Applications
https://blog.zomato.com/go-beyond-building-performant-and-reliable-golang-applications
✍️حسین نظری
#performance
#golang
#گولنگ
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Go Beyond: Building Performant and Reliable Golang Applications
https://blog.zomato.com/go-beyond-building-performant-and-reliable-golang-applications
✍️حسین نظری
#performance
#golang
#گولنگ
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Forwarded from ⚝ (ZiZiGuLu)
تکنولوژی های ون (wan technology) :
تکنولوژی های wan به ما کمک می کنند تا بتوانیم شبکه داخلی wan خود را به دیگر شبکه در دنیای خارج متصل کنیم.
این کار توسط سرویس دهنده های سوم شخص مانند مخابرات و شرکت های ISP(خودم توی یکیشون کار میکردم😌😂) صورت می پذیرد.
انواع این تکنولوژی ها از چندروش یا method استفاده می کند :
1)circuit switching (سوئیچینگ مدار)
2) packet switching (سوئیچینگ بسته)
3)PSTN(Public switched telephone network)
نکته: switching به معنای راه یا راهگزینی(وقتی می خواهیم اطلاعاتی را از مبدا به مقصد ارسال کنیم درواقع آنهارا از مسیری گه وجود دارد switchمی کنیم)می باشد.
در سوئیچینگ مدار : یک مسیر مشخص بین مبدا و مقصد به عنوان خط اختصاصی ایجاد می شود و جریان داده ها بین این مسیر منتقل می شود.
در سوئیچینگ بسته : داده ها به بسته های اطلاعاتی تقسیم می شوند. و هر بسته یک روت مستقل از مبدا به مقصد ایجاد می کند و در نهایت تمام بسته ها در مقصد به داده اصلی تبدیل می شوند .(به خاطر همین سرعت کمتری دارد )
مانند : DSL / ISDN/ATM/X.25
#Network
@amiria703_channel
تکنولوژی های wan به ما کمک می کنند تا بتوانیم شبکه داخلی wan خود را به دیگر شبکه در دنیای خارج متصل کنیم.
این کار توسط سرویس دهنده های سوم شخص مانند مخابرات و شرکت های ISP(خودم توی یکیشون کار میکردم😌😂) صورت می پذیرد.
انواع این تکنولوژی ها از چندروش یا method استفاده می کند :
1)circuit switching (سوئیچینگ مدار)
2) packet switching (سوئیچینگ بسته)
3)PSTN(Public switched telephone network)
نکته: switching به معنای راه یا راهگزینی(وقتی می خواهیم اطلاعاتی را از مبدا به مقصد ارسال کنیم درواقع آنهارا از مسیری گه وجود دارد switchمی کنیم)می باشد.
در سوئیچینگ مدار : یک مسیر مشخص بین مبدا و مقصد به عنوان خط اختصاصی ایجاد می شود و جریان داده ها بین این مسیر منتقل می شود.
در سوئیچینگ بسته : داده ها به بسته های اطلاعاتی تقسیم می شوند. و هر بسته یک روت مستقل از مبدا به مقصد ایجاد می کند و در نهایت تمام بسته ها در مقصد به داده اصلی تبدیل می شوند .(به خاطر همین سرعت کمتری دارد )
مانند : DSL / ISDN/ATM/X.25
#Network
@amiria703_channel
Telegram
Daily Contents of 'Amiria'
A curious geek with an ecocenteric mind.
I love Japan, GIS, Video techniques, Compression methods, Literature and loads of science stuff.
A software developer based in Tehran, Iran.
Send me a science-based fact and I'll be your friend: @amiria703
I love Japan, GIS, Video techniques, Compression methods, Literature and loads of science stuff.
A software developer based in Tehran, Iran.
Send me a science-based fact and I'll be your friend: @amiria703
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰نمایش وضعیت آب و هوا در ترمینال:
در لینوکس برنامههای مختلفی برای نمایش وضعیت آب و هوا وجود دارد، از جمله ویجتها، اپلتها، و کلاینتهای مختلف. با این حال، wttr.in این قابلیت را مستقیماً از طریق خط فرمان ارائه میدهد و میتواند پیشبینی چند روزهای از وضعیت آب و هوا برای هر مکانی که مشخص کنید، نمایش دهد. ویژگیهای اصلی wttr.in این است که نیازی به نصب یا تنظیمات پیچیده مانند کلید API ندارد و ظاهر جذابی دارد. همچنین اگر دستور curl را نصب کرده باشید، میتوانید به سادگی با اجرای دستور زیر، وضعیت آب و هوای یک شهر مشخص را دریافت کنید:
🔰ابزار جایگزین
WeGo یک ابزار بسیار دقیق دیگر برای خط فرمان است که از APIهای مختلف مانند OpenWeatherMap برای نمایش وضعیت دقیق آب و هوا استفاده میکند. این ابزار قابلیتهای زیادی از جمله پیشبینی چندروزه و جزئیات کامل آب و هوا را دارد.
روش نصب:
یا
wego -l "City"
--------------------------
نویسنده: حسین سیلانی
حمایت از کانال-donate
https://zarinp.al/learninghive.ir
در لینوکس برنامههای مختلفی برای نمایش وضعیت آب و هوا وجود دارد، از جمله ویجتها، اپلتها، و کلاینتهای مختلف. با این حال، wttr.in این قابلیت را مستقیماً از طریق خط فرمان ارائه میدهد و میتواند پیشبینی چند روزهای از وضعیت آب و هوا برای هر مکانی که مشخص کنید، نمایش دهد. ویژگیهای اصلی wttr.in این است که نیازی به نصب یا تنظیمات پیچیده مانند کلید API ندارد و ظاهر جذابی دارد. همچنین اگر دستور curl را نصب کرده باشید، میتوانید به سادگی با اجرای دستور زیر، وضعیت آب و هوای یک شهر مشخص را دریافت کنید:
curl wttr.in/City
🔰ابزار جایگزین
WeGo یک ابزار بسیار دقیق دیگر برای خط فرمان است که از APIهای مختلف مانند OpenWeatherMap برای نمایش وضعیت دقیق آب و هوا استفاده میکند. این ابزار قابلیتهای زیادی از جمله پیشبینی چندروزه و جزئیات کامل آب و هوا را دارد.
روش نصب:
sudo snap install wego
یا
https://github.com/schachmat/wego.git
wego -l "City"
--------------------------
نویسنده: حسین سیلانی
حمایت از کانال-donate
https://zarinp.al/learninghive.ir
Forwarded from 🎄 یک برنامه نویس تنبل ( MΞ)
🔶 دانلود فیلم و سریال بدون سانسور از طریق تورنت
https://x.com/AmirrezaKN/status/1847968186299257108
@TheRaymondDev
https://x.com/AmirrezaKN/status/1847968186299257108
@TheRaymondDev
Forwarded from DevTwitter | توییت برنامه نویسی
ابزار Austin یک Python frame stack sampler است
پروفایل های آماری قدرتمندی که کمترین تأثیر را بر برنامه داره میسازه
ابزار جانبی نمیخواد، تاثیر حداقلی، سریع و سبک، پروفایل زمان و حافظه،
پشتیبانی از چند فرآیندی (مثل. mod_wsgi)
@DevTwitter | <MehrdadLinux/>
پروفایل های آماری قدرتمندی که کمترین تأثیر را بر برنامه داره میسازه
ابزار جانبی نمیخواد، تاثیر حداقلی، سریع و سبک، پروفایل زمان و حافظه،
پشتیبانی از چند فرآیندی (مثل. mod_wsgi)
@DevTwitter | <MehrdadLinux/>
Forwarded from DevTwitter | توییت برنامه نویسی
سال 2022 یک پروژه فروشگاهی پیشرفته لاراولی ساختم به نام Shopline که به صورت فول استک بود
توسعه این پروژه چند ماهی تقریبا متوقف کرده بودم ولی الان دوباره دارم یک سری آپدیت ها براش میدم.
اولین آپدیت این بود که از لاراول 10 به لاراول 11 آپدیت کردم
این پروژه به نظرم میتونه خیلی برای یادگیری مناسب باشه
https://github.com/milwad-dev/shopline
@DevTwitter | <Milwad Khosravi/>
توسعه این پروژه چند ماهی تقریبا متوقف کرده بودم ولی الان دوباره دارم یک سری آپدیت ها براش میدم.
اولین آپدیت این بود که از لاراول 10 به لاراول 11 آپدیت کردم
این پروژه به نظرم میتونه خیلی برای یادگیری مناسب باشه
https://github.com/milwad-dev/shopline
@DevTwitter | <Milwad Khosravi/>
Forwarded from DevTwitter | توییت برنامه نویسی
دستیار هوش مصنوعی برای برنامه نویسان پایتون!
از وب سایت zzzcode.ai می تونید به عنوان یک دستیار تخصصی برای زبان پایتون، حوزه داده و هوش مصنوعی استفاده کنید. هم براتون کد مینویسه و هم کدهایی که بهش میدید رو توضیح میده. به عنوان نمونه من ازش خواستم که سورس کد مدل یادگیری ماشین GCNN روی توی پایتون بهم بده و خروجی تصویر رو داده. نمونه پرامپت داده شده در زیر:
Prompt:
Hi dear, I want to train a GCNN model on "MyDataset" dataset. Can you please write code in Python?
لینک وب سایت: https://zzzcode.ai/
@DevTwitter | <Ali Nazarizadeh/>
از وب سایت zzzcode.ai می تونید به عنوان یک دستیار تخصصی برای زبان پایتون، حوزه داده و هوش مصنوعی استفاده کنید. هم براتون کد مینویسه و هم کدهایی که بهش میدید رو توضیح میده. به عنوان نمونه من ازش خواستم که سورس کد مدل یادگیری ماشین GCNN روی توی پایتون بهم بده و خروجی تصویر رو داده. نمونه پرامپت داده شده در زیر:
Prompt:
Hi dear, I want to train a GCNN model on "MyDataset" dataset. Can you please write code in Python?
لینک وب سایت: https://zzzcode.ai/
@DevTwitter | <Ali Nazarizadeh/>
Forwarded from ASafaeirad
Forwarded from Python Hints
YouTube
فصل دوازدهم - Special Methods for Sequences
این جلسات کاملا رایگان و با هدف کمک به جامعه توسعه دهنده پایتون برگذار شده.
توی این جلسه؛ به بررسی فصل دوازدهم پرداختیم و آماده شدیم برای درک بهتر پروتکلها در پایتون.
کدهای هر جلسه رو میتونید توی گیتهاب بخونید:
https://github.com/Pyhints/fluent_python…
توی این جلسه؛ به بررسی فصل دوازدهم پرداختیم و آماده شدیم برای درک بهتر پروتکلها در پایتون.
کدهای هر جلسه رو میتونید توی گیتهاب بخونید:
https://github.com/Pyhints/fluent_python…
Forwarded from IRCF | اینترنت آزاد برای همه
Forwarded from LearnPOV | لرن پی او وی
اگر برنامه نویسی به زودی قراره چشمات به فنا بره اگر به این توصیه هایی که بهت میگم عمل نکنی :)
👀 استفاده از قطره اشک مصنوعی
این بزرگواری که تو تصویر میبینید قطره اشک مصنوعی هستش، من تحقیق کردم استفاده ازش ضرری نداره و خب از اونجایی که ما خیلی به مانیتور و کد هامون خیره میشیم و تعداد دفعات پلک زدن میاد پایین چشمامون خشک میشه
⏰ استراحت دادن به چشم
هر 20 دقیقه یک بار پنج دقیقه دست از کار بکشید و 3 الی 5 دقیقه به چشمای خودتون استراحت بدید
حالا به چه شکلی ؟
➊ برید لب پنجره یا جایی که نور طبیعی وجود داره و به دور نگاه کنید، وقتی اینکارو انجام میدید چشماتون یه حالتی میشه و خودتون متوجه تغییر میشید
➋ چشم خودتون رو ببندید و با چپ، راست، بالا و پایین کردن چشمتون بهش ورزش بدید، این کار باعث تقویت عضله های چشم میشه
و در نهایت مراقب چشماتون باشید چون یه عمر قراره باهاشون زندگی کنید و سلامتش رو در اولویت قرار بدید ❤️
👀 استفاده از قطره اشک مصنوعی
این بزرگواری که تو تصویر میبینید قطره اشک مصنوعی هستش، من تحقیق کردم استفاده ازش ضرری نداره و خب از اونجایی که ما خیلی به مانیتور و کد هامون خیره میشیم و تعداد دفعات پلک زدن میاد پایین چشمامون خشک میشه
به همین دلیل سعی کنید روزی حداقل ➍ مرتبه ازش استفاده کنید ✅
⏰ استراحت دادن به چشم
هر 20 دقیقه یک بار پنج دقیقه دست از کار بکشید و 3 الی 5 دقیقه به چشمای خودتون استراحت بدید
حالا به چه شکلی ؟
➊ برید لب پنجره یا جایی که نور طبیعی وجود داره و به دور نگاه کنید، وقتی اینکارو انجام میدید چشماتون یه حالتی میشه و خودتون متوجه تغییر میشید
➋ چشم خودتون رو ببندید و با چپ، راست، بالا و پایین کردن چشمتون بهش ورزش بدید، این کار باعث تقویت عضله های چشم میشه
این مورادی که گفتم بهتون توصیه چندین چشم پزشک مختلف به من بوده مخصوصا مورد اول پس جدیش بگیرید !
و در نهایت مراقب چشماتون باشید چون یه عمر قراره باهاشون زندگی کنید و سلامتش رو در اولویت قرار بدید ❤️
#️⃣ #tips #programming
🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟 | 𝗚𝗥𝗢𝗨𝗣
Forwarded from Rust for Python developers
توی بعضی شرایط rust-analyzer ممکنه رو دستش بیاد؛ اونوقت highlight به درستی انجام نمیشه اگر اینطوری شد توی تنظیمات
وارد بشید و گزینهاش رو غیر فعال کنید موقتا ( تا آخر پروژه مثلا)
Rust-analyzer > Semantic Highlighting > String
وارد بشید و گزینهاش رو غیر فعال کنید موقتا ( تا آخر پروژه مثلا)
Forwarded from Gopher Academy
🔵 عنوان مقاله
Some Go Web Dev Notes
🟢 خلاصه مقاله:
مقالهی مورد بحث بر اهمیت و کارایی پستهای جولیا تاکید دارد که به دلیل صداقت، کمک و بیپردهگوییاش مشهور است. این مقاله یک مجموعه نکات فوری، توصیهها و مشاهدات میباشد که نشان از کیفیت بالای محتوای ارایه شده توسط جولیا دارد. نویسنده به خوانندگان تضمین میدهد که جولیا همواره چیز جدیدی برای ارائه دارد و چشمان آنها را به موضوعات یا دیدگاههای نو باز میکند. این شیوه نوشتار جولیا تاثیرگذار و مفید ارزیابی شده و خواننده را به مطالعه بیشتر ترغیب میکند.
🟣لینک مقاله:
https://golangweekly.com/link/160479/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Some Go Web Dev Notes
🟢 خلاصه مقاله:
مقالهی مورد بحث بر اهمیت و کارایی پستهای جولیا تاکید دارد که به دلیل صداقت، کمک و بیپردهگوییاش مشهور است. این مقاله یک مجموعه نکات فوری، توصیهها و مشاهدات میباشد که نشان از کیفیت بالای محتوای ارایه شده توسط جولیا دارد. نویسنده به خوانندگان تضمین میدهد که جولیا همواره چیز جدیدی برای ارائه دارد و چشمان آنها را به موضوعات یا دیدگاههای نو باز میکند. این شیوه نوشتار جولیا تاثیرگذار و مفید ارزیابی شده و خواننده را به مطالعه بیشتر ترغیب میکند.
🟣لینک مقاله:
https://golangweekly.com/link/160479/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Julia Evans
Some Go web dev notes
Forwarded from 🎄 یک برنامه نویس تنبل ( MΞ)
🔸توی این پست میخوایم پروژههای دانلودر از سوشال مدیا رو معرفی کنیم اگه موردی دیگه سراغ داشتید کامنت کنید:
1) پروژههای اوپن سورس:
+https://github.com/vaaski/telegram-ytdl
+https://github.com/tskau/cobold
+https://github.com/Rojeck/alwaysReelsBot
+https://github.com/yt-dlp/yt-dlp
+https://github.com/imputnet/cobalt
+https://github.com/TeamNewPipe/NewPipe/
2) سایت:
+https://cobalt.tools/
+https://newpipe.net/
+https://chatgpt.com/share/6714c3a7-a0c0-800f-ae49-869d26afb706
3) رباتهای تلگرام:
+@uvd_bot
+@coboldbot
+@AlwaysReels_bot
+@MegaSaverBot
#معرفی
@TheRaymondDev
1) پروژههای اوپن سورس:
+https://github.com/vaaski/telegram-ytdl
+https://github.com/tskau/cobold
+https://github.com/Rojeck/alwaysReelsBot
+https://github.com/yt-dlp/yt-dlp
+https://github.com/imputnet/cobalt
+https://github.com/TeamNewPipe/NewPipe/
2) سایت:
+https://cobalt.tools/
+https://newpipe.net/
+https://chatgpt.com/share/6714c3a7-a0c0-800f-ae49-869d26afb706
3) رباتهای تلگرام:
+@uvd_bot
+@coboldbot
+@AlwaysReels_bot
+@MegaSaverBot
#معرفی
@TheRaymondDev
Forwarded from Pink Orca ✌️ پینک اورکا
This media is not supported in your browser
VIEW IN TELEGRAM
~> ACID Properties
ACID یه سری خصوصیات کلیدی هستش که تو دیتابیسهای رابطهای برای تضمین صحت تراکنشها (Transactions) استفاده میشه. این مفهوم اولین بار سال 1983 توسط Theo Härder و Andreas Reuter معرفی شد.
حالا ACID مخفف چیه؟!⬇️
Atomicity (اتمی بودن): یعنی یه تراکنش یا باید کامل انجام بشه یا اصلا انجام نشه. مثلا وقتی پول از یه حساب بانکی به حساب دیگه منتقل میشه، یا باید هم کم شدن از حساب اول و هم اضافه شدن به حساب دوم انجام بشه، یا هیچکدوم انجام نشه. حالت نصفه و نیمه نداریم. اگه وسط کار مشکلی پیش بیاد، عملیات Rollback میشه.
Consistency (سازگاری): یعنی دیتابیس باید همیشه تو حالت معتبر (valid) باشه، چه قبل تراکنش و چه بعدش. مثلا اگه قانون داریم که موجودی حساب نباید منفی بشه، هیچ تراکنشی نمیتونه این قانون رو نقض کنه. اگه تراکنشی بخواد این کار رو بکنه، کامل کنسل میشه.
Isolation (انزوا): یعنی تراکنشهای همزمان نباید روی هم تاثیر بذارن. مثلا اگه دو نفر همزمان از یه حساب برداشت میکنن، سیستم باید طوری مدیریت کنه که نتیجه نهایی درست باشه. این کار با مکانیزمهای مختلف Locking انجام میشه.
سطوح مختلف Isolation وجود داره:
- Read Uncommitted: کمترین سطح ایزوله بودن.
- Read Committed: فقط تغییرات تایید شده دیده میشن.
- Repeatable Read: خوندنهای تکراری نتیجه یکسان میدن.
- Serializable: بالاترین سطح ایزوله بودن.
Durability (ماندگاری): یعنی وقتی تراکنشی موفق انجام شد (Commit شد)، تغییراتش باید دائمی باشه و حتی با قطع برق یا کرش سیستم هم از بین نره. این کار معمولا با Write-Ahead Logging (WAL) انجام میشه.
تو دنیای واقعی گاهی باید بین این خصوصیات تعادل برقرار کرد. مثلا NoSQLها معمولا از مدل BASE استفاده میکنن که Basically Available, Soft State, Eventually Consistent هستش و سازگاری کمتری داره ولی در عوض مقیاسپذیری (Scalability) بیشتری داره.
PostgreSQL یکی از بهترین پیادهسازیهای ACID رو داره و میتونه همه سطوح Isolation رو ساپورت کنه. MySQL هم ACID رو پشتیبانی میکنه ولی فقط با موتور InnoDB، موتور MyISAM این قابلیت رو نداره.
یه نکته جالب اینه که پیادهسازی ACID روی عملکرد (Performance) دیتابیس تاثیر منفی میذاره. به همین خاطر بعضی سیستمها مثل Redis از تکنیکهای خاصی مثل AOF (Append-Only File) استفاده میکنن تا تعادل بهتری بین کارایی و تضمینهای ACID برقرار کنن.
#نرم_افزار #علوم_کامپیوتر #نوشته
~> @PinkOrca🩷
ACID یه سری خصوصیات کلیدی هستش که تو دیتابیسهای رابطهای برای تضمین صحت تراکنشها (Transactions) استفاده میشه. این مفهوم اولین بار سال 1983 توسط Theo Härder و Andreas Reuter معرفی شد.
حالا ACID مخفف چیه؟!⬇️
Atomicity (اتمی بودن): یعنی یه تراکنش یا باید کامل انجام بشه یا اصلا انجام نشه. مثلا وقتی پول از یه حساب بانکی به حساب دیگه منتقل میشه، یا باید هم کم شدن از حساب اول و هم اضافه شدن به حساب دوم انجام بشه، یا هیچکدوم انجام نشه. حالت نصفه و نیمه نداریم. اگه وسط کار مشکلی پیش بیاد، عملیات Rollback میشه.
Consistency (سازگاری): یعنی دیتابیس باید همیشه تو حالت معتبر (valid) باشه، چه قبل تراکنش و چه بعدش. مثلا اگه قانون داریم که موجودی حساب نباید منفی بشه، هیچ تراکنشی نمیتونه این قانون رو نقض کنه. اگه تراکنشی بخواد این کار رو بکنه، کامل کنسل میشه.
Isolation (انزوا): یعنی تراکنشهای همزمان نباید روی هم تاثیر بذارن. مثلا اگه دو نفر همزمان از یه حساب برداشت میکنن، سیستم باید طوری مدیریت کنه که نتیجه نهایی درست باشه. این کار با مکانیزمهای مختلف Locking انجام میشه.
سطوح مختلف Isolation وجود داره:
- Read Uncommitted: کمترین سطح ایزوله بودن.
- Read Committed: فقط تغییرات تایید شده دیده میشن.
- Repeatable Read: خوندنهای تکراری نتیجه یکسان میدن.
- Serializable: بالاترین سطح ایزوله بودن.
Durability (ماندگاری): یعنی وقتی تراکنشی موفق انجام شد (Commit شد)، تغییراتش باید دائمی باشه و حتی با قطع برق یا کرش سیستم هم از بین نره. این کار معمولا با Write-Ahead Logging (WAL) انجام میشه.
تو دنیای واقعی گاهی باید بین این خصوصیات تعادل برقرار کرد. مثلا NoSQLها معمولا از مدل BASE استفاده میکنن که Basically Available, Soft State, Eventually Consistent هستش و سازگاری کمتری داره ولی در عوض مقیاسپذیری (Scalability) بیشتری داره.
PostgreSQL یکی از بهترین پیادهسازیهای ACID رو داره و میتونه همه سطوح Isolation رو ساپورت کنه. MySQL هم ACID رو پشتیبانی میکنه ولی فقط با موتور InnoDB، موتور MyISAM این قابلیت رو نداره.
یه نکته جالب اینه که پیادهسازی ACID روی عملکرد (Performance) دیتابیس تاثیر منفی میذاره. به همین خاطر بعضی سیستمها مثل Redis از تکنیکهای خاصی مثل AOF (Append-Only File) استفاده میکنن تا تعادل بهتری بین کارایی و تضمینهای ACID برقرار کنن.
#نرم_افزار #علوم_کامپیوتر #نوشته
~> @PinkOrca
Please open Telegram to view this post
VIEW IN TELEGRAM