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

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
ویکی پارچ موقتاً از دسترس خارج می‌باشد.



@ParchLinux
Forwarded from Astro Terminal (amin)
#Free_Software
#Obsidian

اگر دوست دارید یک شبکه از نت هاتون رو روی سیستم داشته باشید که میتونه مثل ویکی پدیای Local یا حتی مغز دوم شما عمل کنه میتونید از نرم افزار Obsidian استفاده کنید.📝

آبسیدین یک نرم افزار نت برداریه که از فرمت md (markdown) استفاده میکنه. شما میتونید نت های مرتبط به ایده های مرتبط رو به هم لینک کنید🔗 (مثل شبکه ای که در تصویر بالا میبینید).

علاوه بر اینها این پروژه متن باز تعداد بسیار زیادی افزونه و اکستنشن داره که میتونید نرم افزار رو طبق استفادتون شخصی سازی کنید.🪛

@Astro_Terminal 👾
Forwarded from Astro Terminal (amin)
Forwarded from Astro Terminal (amin)
#Obsidian

اگر دوست دارید یک شبکه از نت هاتون رو روی سیستم داشته باشید که میتونه مثل ویکی پدیای Local یا حتی مغز دوم شما عمل کنه میتونید از نرم افزار Obsidian استفاده کنید.📝

آبسیدین یک نرم افزار نت برداریه که از فرمت md (markdown) استفاده میکنه. شما میتونید نت های مرتبط به ایده های مرتبط رو به هم لینک کنید🔗 (مثل شبکه ای که در تصویر بالا میبینید).

علاوه بر اینها این پروژه تعداد بسیار زیادی افزونه و اکستنشن داره که میتونید نرم افزار رو طبق استفادتون شخصی سازی کنید.🪛

@Astro_Terminal 👾
Forwarded from Astro Terminal (amin)
چالش روزانه یک سرور:
امروز با یک مشکل عجیب روبرو شدم! سرور ما ناگهان از دسترس خارج شد و خطای ۵۰۳ می‌داد. بعد از بررسی، فهمیدم که حجم سرور پر شده!

با دستور 𝚍̲𝚞̲ ̲–̲𝚑̲𝚍̲𝟷̲ متوجه شدم یکی از پروژه‌ها، که به نظر ساده می‌رسید، حجم عظیمی از سرور را گرفته بود. پس از بررسی دقیق‌تر دیدم که پوشه دیتابیس بیش از حد بزرگ شده است. دلیل؟ فایل‌های 𝗕𝗶𝗻𝗮𝗿𝘆 𝗟𝗼𝗴 که به صورت خودکار ذخیره شده بودند ولی هیچ وقت پاک نشده بودند.

چطور مشکل را حل کردم؟
فایل‌ها را به صورت دستی پاک کردم.
و با اضافه کردن --𝘴𝘬𝘪𝘱-𝘭𝘰𝘨-𝘣𝘪𝘯 در تنظیمات 𝗗𝗼𝗰𝗸𝗲𝗿 𝗖𝗼𝗺𝗽𝗼𝘀𝗲، از ذخیره شدن این لاگ‌ها جلوگیری کردم.

درس‌هایی که گرفتم:
همیشه به فضای ذخیره‌سازی سرور دقت کنید.
اگر به 𝗕𝗶𝗻𝗹𝗼𝗴 نیاز ندارید، آن را غیرفعال کنید یا پاک‌سازی خودکار تنظیم کنید.

@DevTwitter |<Reza Parsian/>
Forwarded from Md Daily (Mahan)
چرا parseInt(0.0000005) تو جاوا اسکریپت عدد "5" رو برمی‌گردونه؟

قبلا تو یه این پست یه اتفاق بی منطق تو JS رو با منطق پشتش راجبش نوشتم. حالا وقتشه بریم سراغ یه مورد دیگه :)

از تابع parseInt() برای تبدیل رشته به عدد صحیح تو JS استفاده میشه و خب تا اینجا همه چیز طبیعیه تا وقتی که این کد رو اجرا کنیم:

parseInt(0.0000005)


و بجای اینکه یه عدد کوچیک بده، به ما 5 رو بر میگردونه.

دقیقا پشت صحنه داره چی میشه؟

تابع parseInt() فقط به خود عدد نگاه نمیکنه. اول مقدار را به یک رشته تبدیل می‌کنه. پس، وقتی 0.0000005 رو بهش می‌دیم، جاوا اسکریپت اون رو به طور خودکار به رشته "5e-7" تبدیل میکنه .

حالا، parseInt() شروع به خوندن رشته از سمت چپ می‌کنه و در اولین کاراکتر غیرعددی متوقف میشه. در "5e-7"، اول "5" را میبینه، پس همونجا متوقف میشه و "5" را بر میگردونه. قسمت نماد علمی (e-7) رو هم کلا ایگنور میکنه و رقم های اعشاری رو نادیده میگیره .

خلاصش اینه که:

تابع parseInt() اول عدد رو به متن تبدیل می‌کنه.
فقط اولش رو می‌خونه تا به یه عدد برسه.
هر چی بعدش باشه براش مهم نیست.

—-
مثل همیشه کنجکاو بمونید :)

🆔 @MdDaily
Forwarded from Yasha
Forwarded from Golden Code (@lix)
در لاراول وقتی نیاز به پردازش دیتای سنگین داریم میتونیم از lazy collection استفاده کنیم.

با استفاده از lazy collection درواقع دیتاها فقط زمانی که بهشون نیاز باشه لود میشن، پس بدلیل لود تدریجی سرعت بارگزاری بهتر میشه!
این یعنی برخلاف Collection معمولی که همه‌ی دیتاها رو یک‌جا لود میکنه.
#Laravel
@GoldenCodeir
(به‌منبع و مثالش دقت کنید 👇🏾)
https://x.com/thelarrybarker/status/1855281331770429474?t=W8HppF5MAi6ewngacubEXw&s=35
Forwarded from Yasha
ویکی پارچ مجددا در دسترس است.

@ParchLinux
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 بعد از چند سال توقف واردات خودرو, خودروی شیائومی SU7 در تهران دیده شد

@TheRaymondDev
عملا همه چیز برای ویندوز چیزی بیشتر از یک جوک نیست
روشن میکنی یه دردسره، میخوای خاموش کنی هم یه دردسره
نیم ساعته منتظرم که آماده بشه که خاموش کنه سیستم رو😐🤦🏻‍♂🤦🏻‍♂🤦🏻‍♂
Forwarded from Md Daily (Amir Ghojavand)
اما خب طرز کار الاستیک سرچ به چه صورتی هستش ؟
قبل از رفتن سراغ این قسمت چند مورد تاپیک خدمتون معرفی میکنم و در اخر میگم چجوری این ها به هم متصل میشوند


خب تاپیک هایی که باید بدونیم ایناس

الستیک سرچ موتورجستجو و کلا قلب تپنده ی این محصول است و همه چیز هستش (به همین راحتی)

کیبانا رابط گرافیکی الستیک سرچ برای استفاده راحت تر هستش و خیلی راحت استفاده ازش اگه الستیک سرچ بلد باشید

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

خب حالا در عمل ما میخواهیم لاگ های بخشی از سیستم جمع کنیم چکار انجام میدیم؟
اول از همه چند سرور اماده میکنیم و در کانیفیگ هایشان ip بقیه سرورهارو و میزاریم سپس نوع نود های که توضیح خواهم داد میزاریم مهمترین نوع نود همان master and replica (یعنی یک سرور نقش اصلی و پردازش دارد و بقیه کپی دیتا از روی اون هستن )هستش بعد از اون ادرس الاستیک سرچ به fluentd میدهیم و کانفیگ اون را هم درست میکنیم که نمونه هاشو میزارم و در نهایت کانفیگ kibana ست خواهیم کرد
خب مهمترین قسمت شاید میتونم بگم fluentd یا ابزار دیگه ای که مثل همین هستش logstash هست چون ۲ نوع کانفیگ داره یکی کانفیگ جمع اوری لاگ و یکی کانفیگ ارسال لاگ ولی همگی در فایلی به عنوان fluent.conf هستند
این یک مثال ساده از جمع اوری لاگ nginx ارسال ان به الستیک سرچ هست
<source>
@type tail
path /var/log/nginx/access.log
pos_file /var/log/td-agent/httpd-access.log.pos
tag nginx.access
format nginx
</source>
<match **>
@type elasticsearch
logstash_format true
logstash_prefix "nginx"
host "localhost"
port 9200
index_name "ngnix"
</match>


در قسمت source تنطیمات مربوط به لاگ nginx را گذاشتیم و در قسمت match تنظیمات مربوط به elasticsearch(مثلا یکیشن اینه چون جفتش روی یه سرور روی لوکال هاست گذاشتم یا اسم ایندکس هامو اونجا گذاشتم)
در این مثال لاگ ها از nginx جمع شده و به الستیک سرچ ارسال میشوند
خب حالا یه نکته ریز هم اشاره کنم که چرا بجای logstash باید از fluentd استفاده کنیم
اول از همه fluentd رم بسیار کمتری مصرف میکنه بخاطر سیستمی که داره و همچنین برای سیستم روتتینگ ایونت هاش از تگ استفاده میکنه که خیلی کمک بهتری به سبک شدن پروسه میکنه ولی مشکلی که داره اینه کانفیگور کردنش خیلی سخت تره از logstash

پ.ن : چند تا تعربف هم میگم ولی چون اهمیت کمتری دارن این زیر میگم این تعریف index که اولیش هست تو تمام دیتا بیس ها و ابزارها یکی خب اولیش index که دقیقا مثل یه پوشه هستش که داخلش یکسری مدرک احتمالا کارنامه هاتون شما یه جا نگه میدارید اون یه جا index داخل دیتا بیس هم به همین صورت
چیزی که احتمالا دیدین پورت بخوام به صورت خیلی ساده بگم پورت ها دوروازه هایی هستن که ورود و خروج کنترل میکنن اینم به زبون ساده گفتیم
لاگ هم یکسری داده درباره فعل و انفعالات بخش خاصی از سیستم که ۳ تا پارامتر داره کی لاگو انداخته چرا لاگو انداخته چقدر لاگی که انداخته مهم هستش

در آخر هم بگم چرا اصلا رفتم سراغ الستیک سرچ اونجایی که هستیم خیلی مهم اون بحث full text. سرچ گه خدمتتون گفتم و دلیل اصلیش این بود ولی خب قابلیت هایی که گفتم ببینید و مقایسه کنید برای کاربری خودتون یه چیزی هم که در دنیای کامپیوتر هستش اینه که هیچ محصول بد و خوبی وجود نداره صرفا باید ببینی تو به کدومش نیاز داری!

🆔 @MdDaily
Forwarded from Gopher Academy
🔵 عنوان مقاله
Leveraging benchstat Projections in Go Benchmark Analysis

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

🟣لینک مقاله:
https://golangweekly.com/link/161325/web


👑 @gopher_academy
داشتم دنبال شل PHP میگشتم که سرور پاک نکنه!
پیدا نکردم!

از این به عنوان ابزار بررسی و ریویو کد و در نهایت کد نویسی شل خودم استفاده کردم!

تبدیل تهدید به فرصت و از این چیزا!
https://github.com/pheditor/pheditor

@DevTwitter | <exploitio/>
Forwarded from Software Engineer Labdon
چگونه یک سیستم رزرو بلیت هواپیما با معماری Event-Driven و Saga پیاده‌سازی کنیم؟

تو این مقاله توضیح دادم چطور با ترکیب Event-Driven Architecture، RabbitMQ و Saga Pattern تونستم سیستم‌های رزرو بلیت هواپیما رو به یه سطح دیگه ببرم. اگه دنبال معماری‌های مقیاس‌پذیر و پایدار هستی، حتماً این مطلب رو بخون!

لینک مقاله

DevTwitter | <mostafa jafarzadeh/>

👑 @software_Labdon