AminCoder Profile Banner
Amin Badin Profile
Amin Badin

@AminCoder

Followers
2K
Following
2K
Media
97
Statuses
1K

•Developer || Compiler & Optimization Enthusiast || Chemical Engineer at Bushehr Petrochemical Company;

Bushehr
Joined April 2017
Don't wanna be here? Send us removal request.
@AminCoder
Amin Badin
12 days
توی یودوز یه ابزار ساده Web Performance Checker برای بررسی سرعت و پرفورمنس وب سایت ها ساختیم. از این لینک شما هم می تونید بررسیش کنید : https://t.co/d6MN3lulpH
1
4
15
@AminCoder
Amin Badin
14 days
یکی از مهمترین تغییرات در Go 1.25 ، اضافه شدن تابع go به WaitGroup توی پکیج sync هست. از طریق این تابع دیگه نیاز به (1)add و done و بالانس آن ها ندارید ، در همین باب از مشکلات رایج توی این پترن مثل deadlock و race جلوگیری می کنه.
0
4
43
@AminCoder
Amin Badin
2 months
اگه سایت یا سرویس آنلاینی داری، حیاتیه که از سرویس مانیتورینگ رایگان یودوز استفاده کنی! فقط تو ۲ دقیقه راه‌اندازی می‌شه و خیالت رو از پایداری سرویس راحت می‌کنه. 👉 https://t.co/rSlxLAibDn #مانیتورینگ #یودوز
1
6
29
@AminCoder
Amin Badin
3 months
6️⃣ خروجی نهایی بصورت JSON. این رشتو صرفا جنبه آموزشی دارد ، می توان به آن Partial Write ، Chunked encoding و ... اضافه کرد ، در نهایت اگر مفید بود می تونین WebSocket و HTTP2 هم به این روش پیاده کنیم.
0
0
10
@AminCoder
Amin Badin
3 months
5️⃣ تابع parse_response برای جدا کردن و مرتب سازی داده های دریافتی. داده های دریافتی از end-point به ترتیب : Status line Headers Body است که بین هدر و بادی از \r\n اضافی استفاده شده ، تا حد هدر مشخص شود.
1
0
7
@AminCoder
Amin Badin
3 months
اسکرین قبل هست. 4️⃣ تابع fetch_response_from_conn برای خواندن پاسخ ها. برای راحتی کار از پکیج bufio استفاده شده ( در غیر این صورت با یک حلقه خودتان می توانید داده ها را مستقیم از conn بگیرید.) - آخرین خط برگشتی از ReadString همزمان با مقدار برگشتی و err مربوط EOF است.
1
0
8
@AminCoder
Amin Badin
3 months
3️⃣ تابع write_request برای ارسال request با هدر کامل و body. برای متد GET/DELETE/HEAD به شکل تصویر دوم با در کانکشن ایجاد شده نوشت. در غیر این صوت برای POST/PUT/PATCH که حاوی دیتا هستن باید از url-encoded استفاده کرد ، در نهایت نیاز به هدر Content-Length و Content-Type مطابق /3
1
0
8
@AminCoder
Amin Badin
3 months
1️⃣ پارس URL و تعیین پورت (http=80, https=443). 2️⃣ اتصال TCP یا TLS با timeout. - کار Dial ایجاد کانکشن اولیه به یک endpoint هست،حالا اگر اندپوینت از SSL/TLS پشتیبانی می کرد باید از پکیج crypto/tls استفاده شود. - پشت Dial در صورت نیاز یک DNS Lookup برای تبدیل دامنه به IP هست.
1
0
11
@AminCoder
Amin Badin
3 months
نقاب انتزاع HTTP Request ها رو برداریم و وارد یه سطح پایین تری از پروتکل بشیم. این کد Go ، یک درخواست HTTP (GET/POST/PUT/PATCH) به سرور می‌فرستد و پاسخ را می‌خواند، پارس می‌کند و به JSON تبدیل می‌کند. /1
2
3
97
@AminCoder
Amin Badin
3 months
امروز تو مسیر رفتن سرکار ، دلم خیلی برای کامپایلر نوشتن تنگ شده. احتمالا دیگه فرصت نکنم برم سمت علایق Low Level ام .
2
0
44
@AminCoder
Amin Badin
4 months
توی یودِوز قابلیت Status-Page رو توسعه دادیم. می تونین وضعیت آپتایم سایت و سرورتون رو به کاربرانتون نشون بدید. از این صفحه ها بسازین برای سایتتون 🎉😅 آدرس سایت: https://t.co/ZutLkVNi5g
3
4
69
@AminCoder
Amin Badin
4 months
بالاخره وقتشه 🚀 با افتخار نسخه اولیه‌ی یودوز منتشر شد ✅ سرویسی رایگان برای مانیتورینگ آنی آپتایم وب‌سایت و سرور شما(بدون نصب Agent). لینک: https://t.co/ZutLkVNi5g نظراتتون رو با آغوش باز پذیرا هستیم.
21
14
175
@AminCoder
Amin Badin
5 months
پ.ن : مانیتورینگ و تست لحظه ای تغییرات الگوریتم به وسیله ترکیب Prometheus + Grafana روی یک RPC توسعه داده شده.
0
0
10
@AminCoder
Amin Badin
5 months
Dev to dev : فقط به سرعت یک الگوریتم اهمیت نده. Throughput و Latency مکمل هم هستن؛ یکی نباشه، اون یکی به‌درد نمی‌خوره.
2
3
118
@AminCoder
Amin Badin
5 months
برای استفاده سریعتر توی زمان بحران و ... ، از طریق ربات تلگرام ، راحتتر به پیست هاب دسترسی داشته باشید : https://t.co/OAKROptQvN
@AminCoder
Amin Badin
1 year
چند وقت پیش برای جا به جایی اطلاعات و فایل بین دیوایس ها یه سایت ساده راه انداختم و بدون هیچ تبلیغی الان روزانه چند صد کلیپ برد ساخته میشه کدومتون ریپورتاژ کرده ؟ 😇 https://t.co/AWuHlSedyp
1
2
26
@AminCoder
Amin Badin
5 months
فید شبکاری من :
13
6
350
@AminCoder
Amin Badin
5 months
حکمت خدا رو نمیدونم که یه پروژه ای که صرفا منتورینگ یکی از بچه ها نوشتم حتی داشبورد مدیریت هم نداره، الان روزانه بالای 5000 کلیپ برد و بازدید 20K داره . حالا بیا یه استارت آپ بساز اگر کسی نگاش کرد 😂😂😂
@AminCoder
Amin Badin
1 year
چند وقت پیش برای جا به جایی اطلاعات و فایل بین دیوایس ها یه سایت ساده راه انداختم و بدون هیچ تبلیغی الان روزانه چند صد کلیپ برد ساخته میشه کدومتون ریپورتاژ کرده ؟ 😇 https://t.co/AWuHlSedyp
0
3
57
@AminCoder
Amin Badin
6 months
تنظیم کرد. گولنگ با داشتن پکیج های مثل Fiber , Echo و ... یکی از بهترین انتخاب ها برای بک اند هست. ابزارهای معروفی که تا الان باهاش نوشتن Docker,K8s,Prometheus,Terraform,Hugo,Grafana,Caddy,InfluxDB... هستن. بازار کار بهتری داره و learning curve پایین تری داره.
0
0
6
@AminCoder
Amin Badin
6 months
از نظر من Productivity یعنی خیلی سریع بتونی برنامه رو بدون باگ های عجیب یا UB ها دیپلوی و بعدش بتونی Maintenance و refactor کنی ، گو اینو داره. خاصیت cross-compilation باعث میشه توی هر معماری بدون نصب وابستگی خاصی الخصوص toolchain یا linkerها خیلی راحت با آرگومنت میشه /7
1
0
5
@AminCoder
Amin Badin
6 months
گولنگ به خوبی روی بسترهای Cloud-Native مثل داکر و کوبرنتیز کار می کنه. برخلاف راست ، گولنگ GC داره اما نه اون GC های قدیمی که روی CLR دات نت فریم ورک بود همه می گفتیم که بعضی وقتا بیش از حد سربار به سیستم میده و کنده. ترکیب GC + Goroutine باعث شده کمترین overhead داشته باشه. /6
1
0
4