Gopher Academy
3.34K subscribers
918 photos
40 videos
279 files
1.99K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
🤔ایا تابحال میدونستید که👇🤔
😐حداکثر حجم اپلود در یوتوب چقدره 👇
🔺Maximum file size:
128GB

🔺Maximum video length:
12 hours

🔺Accepted YouTube video formats:
.mov, .mpeg, .mp4, .avi, .wmv, .mpegps, .flv, webM, and 3GPP

🎯 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 proto? 🔴https://t.me/gopher_academy/627 Defining A Message Type 🔴 https://t.me/gopher_academy/628 Assigning Field Numbers 🔴https://t.me/gopher_academy/629 Adding Comments 🔴 https://t.me/gopher_academy/630 Reserved Fields…
🔴Maps🔴

در این تایپ می‌تونید اطلاعات رو به صورت key/value تعریف کنید (مشابه جیسون). از تمامی تایپ‌ها غیر از float/double پشتیابی میکنه، برای مثال:
در مثال بالا ما مجموعه‌ای از یوزرها به همراه پروفایلشون داریم، که کلید هر پروفایل یوزرآیدی و مقدارش مسیج دیگه‌ای به عنوان پروفایله. و اما چند نکته:
فیلدهای map نمیتونند repated باشن.
هیچگونه مرتب سازی روی مپ اتفاق نمیفته، چون مپ key/value هستش.

🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 proto? 🔴https://t.me/gopher_academy/627 Defining A Message Type 🔴 https://t.me/gopher_academy/628 Assigning Field Numbers 🔴https://t.me/gopher_academy/629 Adding Comments 🔴 https://t.me/gopher_academy/630 Reserved Fields…
🔴Packages🔴
خیلی مهمه برای فایل‌های پروتو پیکج تعریف کنید، وقتی کد برای زبان خودتون جنریت کنید این پکیج‌ها کاربرد دارن، همچنین از کانفلیکت بین اسم مسیج‌ها جلوگیری میکنه، پیکج‌ها تو تمام زبان‌های پشتیبانی میشن.

🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 proto? 🔴https://t.me/gopher_academy/627 Defining A Message Type 🔴 https://t.me/gopher_academy/628 Assigning Field Numbers 🔴https://t.me/gopher_academy/629 Adding Comments 🔴 https://t.me/gopher_academy/630 Reserved Fields…
🔴Defining Services🔴
خب میخوایم درمورد ویژگی اصلی پروتوبافر حرف بزنیم، در فایل پروتو بجز مسیج‌ها میتونید سرویس‌ها روهم تعریف کنید، سرویس، اندپوینتی هست که کاربر (یا بقیه سرویس‌ها) میتونه بهش دسترسی داشته باشه، برای مثال:
در این فایل یک سرویس سرچ تعریف کردیم و گفتیم انتظار داریم یک مسیج سرویس ریکوئست دریافت کنیم و در جواب یک مسیج سرچ ریسپانس برمیگردونیم، سادس درسته؟ در اصل این شیوه ساخت یک API در فایل پروتو هست، در اینجا به یک فریمورک نیاز داریم تا این سرویس رو هندل کنه و کدهاشو جنریت کنه، در پروتو ورژن ۳ از فریمورک gRPC گوگل کمک میگیره، ولی شما میتونید روی اینترنت فریمورک‌های دیگم پیدا کنید.



🔰 @gopher_academy
Gopher Academy
🔴Defining Services🔴 خب میخوایم درمورد ویژگی اصلی پروتوبافر حرف بزنیم، در فایل پروتو بجز مسیج‌ها میتونید سرویس‌ها روهم تعریف کنید، سرویس، اندپوینتی هست که کاربر (یا بقیه سرویس‌ها) میتونه بهش دسترسی داشته باشه، برای مثال: در این فایل یک سرویس سرچ تعریف کردیم…
فرض کنید شما یک سرور جاوا دارید که یک سرویسی رو ارائه میده، حالا هر کلاینتی با هر زبانی، برای مثال گولنگ، پایتون، جاوا و... میتونه با کمک فایلهای پروتو کدهای کلاینت gRPC جنریت کنه، و کلاینت یک ریکوئست پروتوبافر تولید میکنه برای سرور میفرسته، و سرور در پاسخ یک ریسپانس پروتوبافر ارسال میکنه. پس پروتوبافر اینجا یک شیوه انتقال دیتا توی شبکه‌اس که تمام زبان‌هارو ساپورت میکنه که همین نقطه قوتش شده.

🔰 @gopher_academy
🎯 آموزش کار با Gin Web Framework 🎯
🔸 part 1
🔴 https://vrgl.ir/iPhoQ

🔸 part 2
🔴 https://vrgl.ir/eZW4m

🔸 part 3
🔴 https://vrgl.ir/wXpwI

🔸part 4
🔴 https://vrgl.ir/rcsZs

🔸part 5
🔴 https://vrgl.ir/H72zq

🔸 part 6
🔴 https://vrgl.ir/RWMSW

🔸part 7
🔴 https://vrgl.ir/x0UTP

🔸 part 8
🔴 https://vrgl.ir/pTeDF

🔸part 9
🔴 https://t.me/gopher_academy/430
.
#gin

🔰 @gopher_academy
This media is not supported in your browser
VIEW IN TELEGRAM
🎯موقعیت شغلی 🎯
#job

🔰 @gopher_academy
🔸استخدام Golang Developer در تجارت بین الملل رابین #تهران

🔹نوع همکاری: تمام‌وقت
🔹سطح: ارشد (Senior)
🔹زمینه کاری شرکت: پرداخت حوزه بین الملل و توریست
🔹حقوق بیش از ۱۲ میلیون تومان
مزایا: 🔹پروژه های تکنولوژی محور 🔹صبحانه و ناهار 🔹محیطی پویا و دوستانه 🔹امکان رشد 🔹حقوق و مزایای خوب

ارسال درخواست از طریق:👇
🔗 https://quera.ir/r/5Ka1bA

🔰 @gopher_academy
🎯OOM Killer: The Linux Assassin🎯

خب چند وقت پیش یه مقاله‌ای توسط آقای JOE CONWAY در بحث PostgreSQL Performance Tuning پابلیش شد که بررسیش خالی از لطف نیست.
این مقاله روی فیچری از کرنل لینوکس به نام OOM (Out-Of-Memory) Killer مخصوصا تو مبحث Kubernetes و تاثیراتش روی سرویس PostgreSQL هنگام دپلویش روی این پلتفرم تمرکز و بحث می‌کنه.
در درجه اول خوده این فیچر رو مورد بررسی قرار می گیره و سطوحی که این فیچر می‌تونه تاثیر بزاره روی سرویسهای مختلف و قضیه اینجوریه که PostgreSQL نباید توسط OOM Killer کیل بشه چرا که مشکلاتی به همراه داره (تو مقاله کامل بررسی شده) ...
در نهایت هم روی مبحث Kubernetes QoS صحبت می‌کنه و تاثیراتی که هر کدوم از این سطوح QoS می‌تونن روی OOM Killer و عملا PostgreSQL بزارن ...

Links:

https://info.crunchydata.com/blog/deep-postgresql-thoughts-the-linux-assassin

◾️https://www.postgresql.org/docs/current/kernel-resources.html#LINUX-MEMORY-OVERCOMMIT


🔰 @gopher_academy
This media is not supported in your browser
VIEW IN TELEGRAM
🔴Stack used in JavaScript, objects are stored in Heap 🔴

🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 proto? 🔴https://t.me/gopher_academy/627 Defining A Message Type 🔴 https://t.me/gopher_academy/628 Assigning Field Numbers 🔴https://t.me/gopher_academy/629 Adding Comments 🔴 https://t.me/gopher_academy/630 Reserved Fields…
👆فردا مابقی رو براتون منتشر میکنم ممنونم از حضور گرمتون در کانال
فقط یه معذرت خواهی کنم بابت تاخیر در انتشار مطالب در کانال👆

🎯در ضمن هرکس دوس داشت بهم پیام بده که ادمین کنمش بتونه مطالب بزاره
🙏💙💙🙏
‏کم کم ابزارها دارن بازنویسی میشن و یا به زبان های دیگه پورت می شن. الانم که Go 1.16 منتشر شد. به مناسبت این انتشار با ابزار FFUF آشنا بشید که با Go نوشته شده و خیلی سریع هست و میشه برای فازینگ Directory، Hosts و متدهای HTTP ازش استفاده کرد.
https://t.co/1L43GUjJsWhttps://t.co/D5qeShK8WG

🔰 @gopher_academy
🎯گروه‌بندی سریع کاربران با استفاده از Consistent Hashing
🎯

https://vrgl.ir/WiWdJ

🔰 @gopher_academy
🐧 دوازدهمین دوره‌ی جشنواره‌ی لینوکس امیرکبیر
#LinuxFestIR
🗓 ۶ تا ۸ اسفندماه ۹۹
📍 به صورت مجازی
🌐 اطلاعات بیشتر و ثبت‌ نام:
LinuxFest.aut.ac.ir

🔰 @gopher_academy
Gopher Academy
🔴آموزش proto3 از صفر تا صد🔴 proto? 🔴https://t.me/gopher_academy/627 Defining A Message Type 🔴 https://t.me/gopher_academy/628 Assigning Field Numbers 🔴https://t.me/gopher_academy/629 Adding Comments 🔴 https://t.me/gopher_academy/630 Reserved Fields…
🔴JSON Mapping🔴
در Proto3 از رمزگذاری متعارف در JSON پشتیبانی می کند ،که به اشتراک گذاری داده ها بین سیستم ها را آسان تر می کند.
رمزگذاری به صورت تایپ به تایپ توصیف شده است.
اگر مقداری در داده های کدگذاری شده با JSON وجود نداشته باشد یا اگر مقدار آن تهی باشد ، هنگام تجزیه در بافر پروتکل ، به عنوان مقدار پیش فرض مناسب تفسیر می شود.
اگر فیلدی مقدار پیش فرض را در بافر پروتکل داشته باشد ، به صورت پیش فرض در داده های رمزگذاری شده JSON حذف می شود تا فضای بیشتری را ذخیره کند.

🔰 @gopher_academy