از توییت یکی از بچه ها تو لینکدین یه مخزن رو دیدم که خیلی مفیده برای یادگیری علوم کامپیوتر، حتما چک کنید اگه علاقه دارید.
🎓 Path to a free self-taught education in Computer Science!
https://github.com/ossu/computer-science
@gocasts
🎓 Path to a free self-taught education in Computer Science!
https://github.com/ossu/computer-science
@gocasts
👍15❤2
سلام، پیشنهاد می کنم حتما پادکست «تفکر شفاف» بی پلاس رو گوش بدید. هم به مهارت های نرم شما کمک میکنه که ارتباط موثرتری با همکاراتون داشته باشید، هم بهتون کمک میکنه تحلیلگر و معمار و مهندس بهتری باشید، چون مهندسی همه ش فکر کردن و تصمیم گرفتنه، پس بهتر بستر مناسبی برای تفکر خودتون آماده کنید.
https://bpluspodcast.com/podcast/seventh-season/%D8%AA%D9%81%DA%A9%D8%B1-%D8%B4%D9%81%D8%A7%D9%81/
@gocasts
https://bpluspodcast.com/podcast/seventh-season/%D8%AA%D9%81%DA%A9%D8%B1-%D8%B4%D9%81%D8%A7%D9%81/
@gocasts
👍20❤7
نوشتن manifestهای کوبرنتیز میتونه چالش برانگیز باشه مخصوصا اگه تعداد microserviceها زیاد باشه
این مقاله یه سری best practice رو میگه که بهتر و منسجم تر بتونید manifestهارو بنویسید.
Best Practices for Writing Kubernetes YAML Manifests
https://mogenius.com/blog-posts/best-practices-for-writing-kubernetes-yaml-manifests
@gocasts
#devops
#kubernetes
این مقاله یه سری best practice رو میگه که بهتر و منسجم تر بتونید manifestهارو بنویسید.
Best Practices for Writing Kubernetes YAML Manifests
https://mogenius.com/blog-posts/best-practices-for-writing-kubernetes-yaml-manifests
@gocasts
#devops
#kubernetes
👍20
تخفیف ۵۰ درصدی پاییز 🍁
الحمدلله تیمسازی ۳ هم شروع شد 🎉
در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن.
از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه توسعه یک پروژه از مراحل اولیه ش رو کسب میکنن.
دوره + تیمسازی بکند و گولنگ Go Casts
لینک خرید دوره + تیمسازی با ۵۰ درصد تخفیف به مبلغ ۴ میلیون و ۵۰۰ هزار تومان
https://gocasts.ir
همه چیز در مورد دوره و تیمسازی در این پست توضیح داده شده
https://news.1rj.ru/str/gocasts/434
تو این پست هم میتونید فیدبک های دوره و تیمسازی و استخدام بچه هارو بخونید
https://news.1rj.ru/str/gocasts/441
دوستانی که در خرید دوره تردید دارند میتونن برای مشاوره کوتاه تلفنی، فرم زیر رو پر کنند که باهاشون تماس بگیرم
https://survey.porsline.ir/s/ATeQL4b4
@gocasts
الحمدلله تیمسازی ۳ هم شروع شد 🎉
در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن.
از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه توسعه یک پروژه از مراحل اولیه ش رو کسب میکنن.
دوره + تیمسازی بکند و گولنگ Go Casts
لینک خرید دوره + تیمسازی با ۵۰ درصد تخفیف به مبلغ ۴ میلیون و ۵۰۰ هزار تومان
https://gocasts.ir
همه چیز در مورد دوره و تیمسازی در این پست توضیح داده شده
https://news.1rj.ru/str/gocasts/434
تو این پست هم میتونید فیدبک های دوره و تیمسازی و استخدام بچه هارو بخونید
https://news.1rj.ru/str/gocasts/441
دوستانی که در خرید دوره تردید دارند میتونن برای مشاوره کوتاه تلفنی، فرم زیر رو پر کنند که باهاشون تماس بگیرم
https://survey.porsline.ir/s/ATeQL4b4
@gocasts
❤6😍2👍1
سلام، یه مطلب جدید دارم با کلی ارجاع به مقالات خفن دیگه
امیدوارم مطلبی که میخوام بگم هم براتون کاربردی باشه و هم لذتبخش.
شایدم به شیوه های مختلف در حال استفاده ش هستید ولی بد نیست ابعاد دیگه ش رو ببنید.
کاربردش وقتیه که میخواید یه کار مشابه رو چندبار انجام بدید، در حالیکه یکبار انجام دادنش کافیه. تو نگاه اول کش کردن به ذهنتون میاد که خب اوکیه، ولی باز برای خود کش کردن هم این موضوع کاربردیه.
ضمنا کش کردن هم اگه multi instance باشید مساله invalidate کردن و sync کردن بین podها رو خواهید داشت و یا اینکه third-party service مثل redis استفاده کنید که مساله latency رو خواهید داشت که خودش یه چالش جدید میشه، پس همیشه کش کردن راه حل نیست…
ضمنا برای کوئری های دیتابیسی که به هر دلیلی قابل کش کردن هم نیستن ولی hotpath هستن و در یه لحظات خاصی concurrent query میخورن هم خیلی کاربردیه.
من بار اول تو مقاله discord باهاش آشنا شدم
how discord stores trillions of messages
https://discord.com/blog/how-discord-stores-trillions-of-messages
که همون موقع خیلی بهم ایده داد که این الگو میتونه کاربردهای مختلفی داشته باشه ولی تو مقاله keyword خاصی رو ندیدم که بتونم بیشتر بررسیش کنم.
گذشت و گذشت تا اینکه چند روز پیش این مقاله ای که جدیدا منتشر شده رو دیدم و فهمیدم گولنگ هم یه پکیج داره به اسم singleflight
Go Singleflight Melts in Your Code, Not in Your DB
https://victoriametrics.com/blog/go-singleflight/
بهش میگن duplicate function call suppression mechanism که حتی در سطح سیستم عامل هم برای استفاده میشه و مشکل معروفیه به اسم Thundering herd problem که در این دو لینک پایین میتونید در موردش بخونید
https://en.wikipedia.org/wiki/Thundering_herd_problem
https://xania.org/200807/iocp
حتی بلاگ instagram engineering هم یه مقاله در همین مورد داره
Thundering Herds & Promises
https://instagram-engineering.com/thundering-herds-promises-82191c8af57d
و محمد حسینی راد عزیز هم یه مقاله در همین مورد نوشته قبلا
Avoid duplicate requests while filling cache!
https://medium.com/@mhrlife/avoid-duplicate-requests-while-filling-cache-98c687879f59
مقالاتی که فرستادم، مخصوصا مقاله victoriametrics مفصل در موردش توضیح داده.
اینم یه مقاله دیگه
Understanding Singleflight in Go: A Solution for Eliminating Redundant Work
https://www.codingexplorations.com/blog/understanding-singleflight-in-golang-a-solution-for-eliminating-redundant-work
اینم یه پکیج که context support رو اضافه کرده، هر چند من پکیج اصلی رو بیشتر ترجیح میدم
https://github.com/janos/singleflight
اینم لینک پکیج اصلی
https://pkg.go.dev/golang.org/x/sync/singleflight
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
#singleflight
امیدوارم مطلبی که میخوام بگم هم براتون کاربردی باشه و هم لذتبخش.
شایدم به شیوه های مختلف در حال استفاده ش هستید ولی بد نیست ابعاد دیگه ش رو ببنید.
کاربردش وقتیه که میخواید یه کار مشابه رو چندبار انجام بدید، در حالیکه یکبار انجام دادنش کافیه. تو نگاه اول کش کردن به ذهنتون میاد که خب اوکیه، ولی باز برای خود کش کردن هم این موضوع کاربردیه.
ضمنا کش کردن هم اگه multi instance باشید مساله invalidate کردن و sync کردن بین podها رو خواهید داشت و یا اینکه third-party service مثل redis استفاده کنید که مساله latency رو خواهید داشت که خودش یه چالش جدید میشه، پس همیشه کش کردن راه حل نیست…
ضمنا برای کوئری های دیتابیسی که به هر دلیلی قابل کش کردن هم نیستن ولی hotpath هستن و در یه لحظات خاصی concurrent query میخورن هم خیلی کاربردیه.
من بار اول تو مقاله discord باهاش آشنا شدم
how discord stores trillions of messages
https://discord.com/blog/how-discord-stores-trillions-of-messages
که همون موقع خیلی بهم ایده داد که این الگو میتونه کاربردهای مختلفی داشته باشه ولی تو مقاله keyword خاصی رو ندیدم که بتونم بیشتر بررسیش کنم.
گذشت و گذشت تا اینکه چند روز پیش این مقاله ای که جدیدا منتشر شده رو دیدم و فهمیدم گولنگ هم یه پکیج داره به اسم singleflight
Go Singleflight Melts in Your Code, Not in Your DB
https://victoriametrics.com/blog/go-singleflight/
بهش میگن duplicate function call suppression mechanism که حتی در سطح سیستم عامل هم برای استفاده میشه و مشکل معروفیه به اسم Thundering herd problem که در این دو لینک پایین میتونید در موردش بخونید
https://en.wikipedia.org/wiki/Thundering_herd_problem
https://xania.org/200807/iocp
حتی بلاگ instagram engineering هم یه مقاله در همین مورد داره
Thundering Herds & Promises
https://instagram-engineering.com/thundering-herds-promises-82191c8af57d
و محمد حسینی راد عزیز هم یه مقاله در همین مورد نوشته قبلا
Avoid duplicate requests while filling cache!
https://medium.com/@mhrlife/avoid-duplicate-requests-while-filling-cache-98c687879f59
مقالاتی که فرستادم، مخصوصا مقاله victoriametrics مفصل در موردش توضیح داده.
اینم یه مقاله دیگه
Understanding Singleflight in Go: A Solution for Eliminating Redundant Work
https://www.codingexplorations.com/blog/understanding-singleflight-in-golang-a-solution-for-eliminating-redundant-work
اینم یه پکیج که context support رو اضافه کرده، هر چند من پکیج اصلی رو بیشتر ترجیح میدم
https://github.com/janos/singleflight
اینم لینک پکیج اصلی
https://pkg.go.dev/golang.org/x/sync/singleflight
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
#singleflight
Discord
How Discord Stores Trillions of Messages
Engineer Bo Ingram shares insight into how Discord shoulders its traffic and provides a platform for our users to communicate.
🔥18❤5👍5
Go Casts 🚀
تخفیف ۵۰ درصدی پاییز 🍁 الحمدلله تیمسازی ۳ هم شروع شد 🎉 در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن. از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه…
یه سری مقاله بهتون معرفی میکنم که سعی کرده best practiceهای گولنگ رو بگه. به شخصه خودم سعی میکنم خیلی محتاطانه از کلمه best practice استفاده کنم، چون practiceها حتی اگه خوب باشن، برای صرفا یه سری مسائل و شرایط خاص خوب هستن، و شما نمیتونید به دنبال یه سری practice باشید که همه جا کورکورانه استفاده شون کنید.
اما خب، خوبه که practiceهای مختلف رو بدونید و بخونید و بعد بر اساس نوع مساله ای که دارید تشخیص بدید چه راه حلی رو استفاده کنید.
Introduction to Golang Best Practices
https://golang.withcodeexample.com/blog/introduction-to-golang-best-practices/
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
اما خب، خوبه که practiceهای مختلف رو بدونید و بخونید و بعد بر اساس نوع مساله ای که دارید تشخیص بدید چه راه حلی رو استفاده کنید.
Introduction to Golang Best Practices
https://golang.withcodeexample.com/blog/introduction-to-golang-best-practices/
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
👍16❤6
Go Casts 🚀
تخفیف ۵۰ درصدی پاییز 🍁 الحمدلله تیمسازی ۳ هم شروع شد 🎉 در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن. از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه…
همیشه برای خودم سوال بوده که دیتابیس ها بصورت سنتی روی vm یا بصورت cloud با استفاده از docker و kubernetes چه مزایا و معایبی دارن، هم از نظر هزینه های نگهداری و هم از نظر performance و عملکرد. اگه تجربه ای دارید خوشحال میشم بشنوم.
استقرار دیتابیس روی vm با حالت dockerize شده ش خصوصا برای استارت آپ های کوچیک چه تفاوت هایی میتونه داشته باشه؟
این مقاله هم در همین مورد نکاتی میگه
https://thenewstack.io/kubernetes-for-databases-weighing-the-pros-and-cons/
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
#database #kubernetes
استقرار دیتابیس روی vm با حالت dockerize شده ش خصوصا برای استارت آپ های کوچیک چه تفاوت هایی میتونه داشته باشه؟
این مقاله هم در همین مورد نکاتی میگه
https://thenewstack.io/kubernetes-for-databases-weighing-the-pros-and-cons/
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
#database #kubernetes
👍13❤3
وقتی عبارت network programming رو میبینیم ممکنه فکر کنیم این موضوع خیلی از ما دوره، اما اگه فقط یه ذره وارد جزییات کدی که زدیم بشیم میبینیم که اینطور نیست.
مثلا فقط کافیه شروع کنیم یه ذره کد net/http از گولنگ رو بخونیم که ببینیم این http.ListenAndServeی که استفاده میکنیم دقیقا داره چیکار میکنه
https://github.com/golang/go/blob/master/src/net/http/server.go#L3336
یه مقاله آموزشی خیلی خوب پیدا کردم که خوندنش دید خیلی خوبی میتونه بده که socket programming چه مراحل و جزییاتی داره.
در نهایت چه http server داشته باشید و یا چه http client داشته باشید و حتی اگه websocket استفاده کنید در نرم افزارتون و یا حتی live stream داشته باشید، دارید با socket کار میکنید، و خیلی خوب میشه اگه بدونیم که یه socket چیه، چطوری ایجاد میشه، و life cycleش چه functionalityهایی داره
Beej's Guide to Network Programming
https://beej.us/guide/bgnet/html
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
مثلا فقط کافیه شروع کنیم یه ذره کد net/http از گولنگ رو بخونیم که ببینیم این http.ListenAndServeی که استفاده میکنیم دقیقا داره چیکار میکنه
https://github.com/golang/go/blob/master/src/net/http/server.go#L3336
یه مقاله آموزشی خیلی خوب پیدا کردم که خوندنش دید خیلی خوبی میتونه بده که socket programming چه مراحل و جزییاتی داره.
در نهایت چه http server داشته باشید و یا چه http client داشته باشید و حتی اگه websocket استفاده کنید در نرم افزارتون و یا حتی live stream داشته باشید، دارید با socket کار میکنید، و خیلی خوب میشه اگه بدونیم که یه socket چیه، چطوری ایجاد میشه، و life cycleش چه functionalityهایی داره
Beej's Guide to Network Programming
https://beej.us/guide/bgnet/html
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
👍20❤3
Go Casts 🚀
تخفیف ۵۰ درصدی پاییز 🍁 الحمدلله تیمسازی ۳ هم شروع شد 🎉 در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن. از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه…
گاهی اوقات پیش میاد که شما لازم دارید یه حجم زیادی از اطلاعات رو دریافت و پردازش کنید.
این حجم زیاد اطلاعات ممکنه از یک جنس داده باشه و از یک منبع واحد خونده بشن، و یا نه، ممکنه از انواع مختلف باشه و احتیاج باشه که منابع مختلفی رو فراخوانی کنید.
در هر صورت اتفاقی که میفته اینه که زمان پردازش شما زیاد میشه و بهتره که به دنبال بهتر کردنش باشید. یکی از الگوهایی که کمک میکنه این قضیه رو مدیریت کنید الگوی scatter/gather هست، که خیلی وقت پیش در موردش در کانال صحبت شده بود، که میتونید از اینجا بخونید
https://news.1rj.ru/str/gocasts/64
این الگو به شما اجازه میده که پردازش موازی داشته باشید (parallelism)
Scatter-gather pattern
https://docs.aws.amazon.com/prenoscriptive-guidance/latest/cloud-design-patterns/scatter-gather.html
اگه پردازشی که دارید انجام میدید cpu bound هست، میتونید با تقسیم کردن کار بین چند core یا thread پردازنده موازی سازی انجام بدید که در زمان خیلی کمتری پردازش همه داده هارو انجام بدید.
الگوی io bound مخصوصا در معماری microservice میتونه مناسب باشه، ممکنه یک درخواستی برای پردازش چندین سرویس رو درگیر کنه، که اگه پردازش سرویس ها به همدیگه وابستگی نداشته باشن، میشه از این الگو بهره گرفت که بصورت موازی پردازش هر سرویس انجام بشه.
درسته که این الگو رو به شیوه synchronous هم میشه پیاده سازی کرد، اما معمولا به صورت asynchronous و با استفاده از message passing از این الگو استفاده میکنن.
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
این حجم زیاد اطلاعات ممکنه از یک جنس داده باشه و از یک منبع واحد خونده بشن، و یا نه، ممکنه از انواع مختلف باشه و احتیاج باشه که منابع مختلفی رو فراخوانی کنید.
در هر صورت اتفاقی که میفته اینه که زمان پردازش شما زیاد میشه و بهتره که به دنبال بهتر کردنش باشید. یکی از الگوهایی که کمک میکنه این قضیه رو مدیریت کنید الگوی scatter/gather هست، که خیلی وقت پیش در موردش در کانال صحبت شده بود، که میتونید از اینجا بخونید
https://news.1rj.ru/str/gocasts/64
این الگو به شما اجازه میده که پردازش موازی داشته باشید (parallelism)
Scatter-gather pattern
https://docs.aws.amazon.com/prenoscriptive-guidance/latest/cloud-design-patterns/scatter-gather.html
اگه پردازشی که دارید انجام میدید cpu bound هست، میتونید با تقسیم کردن کار بین چند core یا thread پردازنده موازی سازی انجام بدید که در زمان خیلی کمتری پردازش همه داده هارو انجام بدید.
الگوی io bound مخصوصا در معماری microservice میتونه مناسب باشه، ممکنه یک درخواستی برای پردازش چندین سرویس رو درگیر کنه، که اگه پردازش سرویس ها به همدیگه وابستگی نداشته باشن، میشه از این الگو بهره گرفت که بصورت موازی پردازش هر سرویس انجام بشه.
درسته که این الگو رو به شیوه synchronous هم میشه پیاده سازی کرد، اما معمولا به صورت asynchronous و با استفاده از message passing از این الگو استفاده میکنن.
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
Telegram
Go Casts 🚀
سلام دوستان، امیدوارم حالتون خوب باشه، من باز اومدم با یه الگوی دیگه از دنیای distributed systems!
Scatter/Gather
الگوی بعدی که در موردش صحبت میکنیم، الگوی scatter/gather هست.
الگوی replicated از منظر «تعداد درخواست پردازش شده در ثانیه» به scalability توجه…
Scatter/Gather
الگوی بعدی که در موردش صحبت میکنیم، الگوی scatter/gather هست.
الگوی replicated از منظر «تعداد درخواست پردازش شده در ثانیه» به scalability توجه…
👍10❤1🔥1
Go Casts 🚀
تخفیف ۵۰ درصدی پاییز 🍁 الحمدلله تیمسازی ۳ هم شروع شد 🎉 در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن. از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه…
سلام بچه ها، یه بازارچه جالب دیدم که سرویس های مختلف هوش مصنوعی رو در قالب api ارائه میده، ایرانی هم هست، اگه محصولی که توسعه میدید با هوش مصنوعی سر و کار داره احتمالا به کارتون بیاد و دردسرهای توسعه اولیه رو کاهش میده براتون، دوست داشتید سر بزنید به این لینک
https://isahab.ir/market?utm_source=linkedin&utm_medium=hosseinnazari&utm_campaign=shahrivar403&utm_id=firstcamp
@gocasts
https://isahab.ir/market?utm_source=linkedin&utm_medium=hosseinnazari&utm_campaign=shahrivar403&utm_id=firstcamp
@gocasts
👍11
خانه ای بی برای بازطراحی وبسایت خود از طراحان UI/UX باتجربه ای که به صورت داوطلبانه حاضر به همکاری هستند، دعوت به عمل می آورد.
لطفا اگر تمایل به همکاری دارید فرم زیر را پر کنید.
https://survey.porsline.ir/s/PTQeSRIi
وبسایت فعلی خانه ای بی
https://ebhome.ngo
اینستاگرام خانه ای بی
https://www.instagram.com/eb_home
@gocasts
لطفا اگر تمایل به همکاری دارید فرم زیر را پر کنید.
https://survey.porsline.ir/s/PTQeSRIi
وبسایت فعلی خانه ای بی
https://ebhome.ngo
اینستاگرام خانه ای بی
https://www.instagram.com/eb_home
@gocasts
Porsline
designer-resume-140307
با پُرسلاین به راحتی پرسشنامه خود را طراحی و ارسال کنید و با گزارشهای لحظهای آن به سرعت تصمیم بگیرید.
❤7
مقاله خوب و جذابی بود، پیشنهاد میکنم بخونید
یه جمله خیلی کلیدی داشت بنظرم که این جمله ست:
"As noted above, our major bottleneck is network IO, and Stephen mentioned this line from the SQLite documentation: "SQLite does not compete with client/server databases. SQLite competes with fopen()."
Rearchitecting: Redis to SQLite
https://wafris.org/blog/rearchitecting-for-sqlite
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
یه جمله خیلی کلیدی داشت بنظرم که این جمله ست:
"As noted above, our major bottleneck is network IO, and Stephen mentioned this line from the SQLite documentation: "SQLite does not compete with client/server databases. SQLite competes with fopen()."
Rearchitecting: Redis to SQLite
https://wafris.org/blog/rearchitecting-for-sqlite
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
wafris.org
Rearchitecting: Redis to SQLite | Wafris
Learn how we approached migrating our Wafris v1 client based on Redis to a new faster, easier to use SQLite architecture.
👍7❤1👏1
وقتی نوبت به نوشتن manifestهای کوبرنتیز میرسه، اسم دو تا ابزار وسط میاد، یکی helm و دیگری kustomize.
به شخصه از این نظر که kustomize همون رویه manifest اصلی کوبرنتیز رو حفظ میکنه و خوانایی خوبی داره، ترجیحش میدم.
اما خب برای اینکه شما در multi environment بخواید استفاده کنید و تفاوت های محیط ها پیچیده باشه شاید helm گزینه بهتری باشه.
در کل هم فکر میکنم کامیونیتی بیشتر helm رو پذیرفته و پیدا کردن helm chart راحت تره برای خیلی از سرویس ها.
خوشحال میشم اگه شما هم تجربه ای در این مورد دارید، به اشتراک بذارید در کامنت ها.
این مقاله توضیحاتی در مورد تفاوت هاشون داده.
https://blog.devops.dev/helm-vs-kustomize-when-to-use-which-tool-in-kubernetes-6500d72ca4b4
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
به شخصه از این نظر که kustomize همون رویه manifest اصلی کوبرنتیز رو حفظ میکنه و خوانایی خوبی داره، ترجیحش میدم.
اما خب برای اینکه شما در multi environment بخواید استفاده کنید و تفاوت های محیط ها پیچیده باشه شاید helm گزینه بهتری باشه.
در کل هم فکر میکنم کامیونیتی بیشتر helm رو پذیرفته و پیدا کردن helm chart راحت تره برای خیلی از سرویس ها.
خوشحال میشم اگه شما هم تجربه ای در این مورد دارید، به اشتراک بذارید در کامنت ها.
این مقاله توضیحاتی در مورد تفاوت هاشون داده.
https://blog.devops.dev/helm-vs-kustomize-when-to-use-which-tool-in-kubernetes-6500d72ca4b4
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
👍11👏1
Go Casts 🚀
تخفیف ۵۰ درصدی پاییز 🍁 الحمدلله تیمسازی ۳ هم شروع شد 🎉 در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن. از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه…
داشتم یه نگاهی به کتاب foundations of scalable systems مینداختم که یه بخشی ش در مورد مقیاس پذیر کردن دیتابیس به کمک کش صحبت میکنه.
A well-designed caching scheme can be invaluable in scaling a system. Caching
works great for data that rarely changes and is accessed frequently, such as inventory
catalogs, event information, and contact data. If you can handle a large percentage,
say, 80% or more, of read requests from your cache, then you effectively buy extra
capacity at your databases as they never see a large proportion of requests.
داشتن سرویس scalable و مقیاس پذیر بخش زیادی ش وابسته به رعایت کردن یه سری اصول ساده ست که خیلی هامون در موردش شنیدیم و خوندیم و میدونیم.
استراتژی های caching یکی از همون اصول ساده و مهمه که به مقیاس پذیری سیستم خیلی کمک میکنه.
کش کردن استراتژی های مختلفی داره و نباید کورکورانه استفاده بشه، چالش و دغدغه هایی هم ایجاد میکنه مثل مساله invalidate کردن کش یا thundering herd که در موردش چند روز پیش صحبت کردم.
کش کردن تو لایه های مختلف استفاده میشه و شما میتونید از مزایای این استراتژی در همه لایه ها استفاده کنید.
خود کلاینتی که مثلا اپلیکیشن وب یا موبایل هست میتونه یه سری داده رو کش کنه.
برای کمتر شدن لود سرور میتونید از cdn استفاده کنید که assetهای شمارو کش کنه.
سرویس gateway شما میتونه یه سری api رو کش کنه که لود روی اپلیکیشن شما نیفته.
اپلیکیشن شما میتونه هم روی http server یه سروی api رو کش کنه و هم میتونه تو لایه کوئری زدن به دیتابیس یه سری کوئری ها رو کش کنه.
سرویس دیتابیس هم معمولا خودشون استراتژی های مختلفی دارن برای کش کردن کوئری ها.
سیستم فایل و دیسک هایی که دیتابیس ها استفاده میکنن هم خودشون pageهای دیسکی که بیشتر استفاده میشه رو کش میکنن.
سیستم عامل هم خودش چندین لایه کش داره.
بصورت آشکار و نهان کش یکی از راه های ساده و قوی هست، اما باید با فکر و تحلیل ازش استفاده کنید.
@gocasts
A well-designed caching scheme can be invaluable in scaling a system. Caching
works great for data that rarely changes and is accessed frequently, such as inventory
catalogs, event information, and contact data. If you can handle a large percentage,
say, 80% or more, of read requests from your cache, then you effectively buy extra
capacity at your databases as they never see a large proportion of requests.
داشتن سرویس scalable و مقیاس پذیر بخش زیادی ش وابسته به رعایت کردن یه سری اصول ساده ست که خیلی هامون در موردش شنیدیم و خوندیم و میدونیم.
استراتژی های caching یکی از همون اصول ساده و مهمه که به مقیاس پذیری سیستم خیلی کمک میکنه.
کش کردن استراتژی های مختلفی داره و نباید کورکورانه استفاده بشه، چالش و دغدغه هایی هم ایجاد میکنه مثل مساله invalidate کردن کش یا thundering herd که در موردش چند روز پیش صحبت کردم.
کش کردن تو لایه های مختلف استفاده میشه و شما میتونید از مزایای این استراتژی در همه لایه ها استفاده کنید.
خود کلاینتی که مثلا اپلیکیشن وب یا موبایل هست میتونه یه سری داده رو کش کنه.
برای کمتر شدن لود سرور میتونید از cdn استفاده کنید که assetهای شمارو کش کنه.
سرویس gateway شما میتونه یه سری api رو کش کنه که لود روی اپلیکیشن شما نیفته.
اپلیکیشن شما میتونه هم روی http server یه سروی api رو کش کنه و هم میتونه تو لایه کوئری زدن به دیتابیس یه سری کوئری ها رو کش کنه.
سرویس دیتابیس هم معمولا خودشون استراتژی های مختلفی دارن برای کش کردن کوئری ها.
سیستم فایل و دیسک هایی که دیتابیس ها استفاده میکنن هم خودشون pageهای دیسکی که بیشتر استفاده میشه رو کش میکنن.
سیستم عامل هم خودش چندین لایه کش داره.
بصورت آشکار و نهان کش یکی از راه های ساده و قوی هست، اما باید با فکر و تحلیل ازش استفاده کنید.
@gocasts
❤14👍6
Go Casts 🚀
بسم الله الرحمن الرحیم معرفی کتاب دوستان من سعی می کنم کتاب های خوبی که مطالعه شون میتونه به شما کمک کنه که دید بهتری نسبت به دنیای cloud-native و microservice ها داشته باشید بهتون معرفی کنم و در حد توان نکاتی رو به صورت خلاصه وار در مورد اون ها به شما ارائه…
سه سال پیش در یک مجموعه پست، به صورت خلاصه کتاب designing distributed systems رو در تلگرام منتشر کردم.
تو این کتاب الگوهای خوبی برای طراحی سیستم توضیح داده شده.
نویسنده کتاب هم co-founder ابزار kubernetes هست.
با این هشتگ میتونید به خلاصه ها دسترسی داشته باشید.
#designing_distributed_systems_brendan_burns
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
تو این کتاب الگوهای خوبی برای طراحی سیستم توضیح داده شده.
نویسنده کتاب هم co-founder ابزار kubernetes هست.
با این هشتگ میتونید به خلاصه ها دسترسی داشته باشید.
#designing_distributed_systems_brendan_burns
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
❤17👍5
Go Casts 🚀
سه سال پیش در یک مجموعه پست، به صورت خلاصه کتاب designing distributed systems رو در تلگرام منتشر کردم. تو این کتاب الگوهای خوبی برای طراحی سیستم توضیح داده شده. نویسنده کتاب هم co-founder ابزار kubernetes هست. با این هشتگ میتونید به خلاصه ها دسترسی داشته…
با ما بپّر، یه جایی قُلابت گیر میکنه!
کلیک خوردن مفاهیم مهندسی نرم افزار تو ذهن راه روشن و مشخصی نداره، ولی اگه خودتو درگیرش کنی آخرش یه جایی قلابت گیر میکنه.
تیمسازی ۳ تازه شروع شده، هدفمون از دوره و تیمسازی اینه که اونقدری برات بستر فراهم کنیم که آخرش قلابت گیر کنه و یه سری از مفاهیم مهندسی نرم افزار رو بهتر درک کنی.
با تسک دادن و به چالش کشیدن ذهنت برای طراحی سیستم، درگیرت میکنیم که یه جایی مفاهیم تو ذهنت کلیک بخوره.
سعی میکنیم چالش هایی که طراحی میکنیم به چالش های واقعی مهندسی نزدیک باشه که شرایط برای کلیک خوردن مفاهیم فراهم بشه.
برنامه نویسی و درک مفاهیم مرتبط باهاش کار یکی دو روز نیست، واسه همین بر خلاف بوتکمپ و ورکشاپ های کوتاه مدت، سعی میکنیم اونقدری بهت زمان بدیم که آروم آروم بتونی هضم کنی مفاهیم رو (الحمدلله تیمسازی بیش از ده ماهه که شروع شده و اگه خدا امان بده و سلامتی سعی میکنیم ادامه ش بدیم)
تصویر حاضر، فیدبک یکی از بچه های شرکت کننده در دوره + تیمسازی ۳ هست
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
کلیک خوردن مفاهیم مهندسی نرم افزار تو ذهن راه روشن و مشخصی نداره، ولی اگه خودتو درگیرش کنی آخرش یه جایی قلابت گیر میکنه.
تیمسازی ۳ تازه شروع شده، هدفمون از دوره و تیمسازی اینه که اونقدری برات بستر فراهم کنیم که آخرش قلابت گیر کنه و یه سری از مفاهیم مهندسی نرم افزار رو بهتر درک کنی.
با تسک دادن و به چالش کشیدن ذهنت برای طراحی سیستم، درگیرت میکنیم که یه جایی مفاهیم تو ذهنت کلیک بخوره.
سعی میکنیم چالش هایی که طراحی میکنیم به چالش های واقعی مهندسی نزدیک باشه که شرایط برای کلیک خوردن مفاهیم فراهم بشه.
برنامه نویسی و درک مفاهیم مرتبط باهاش کار یکی دو روز نیست، واسه همین بر خلاف بوتکمپ و ورکشاپ های کوتاه مدت، سعی میکنیم اونقدری بهت زمان بدیم که آروم آروم بتونی هضم کنی مفاهیم رو (الحمدلله تیمسازی بیش از ده ماهه که شروع شده و اگه خدا امان بده و سلامتی سعی میکنیم ادامه ش بدیم)
تصویر حاضر، فیدبک یکی از بچه های شرکت کننده در دوره + تیمسازی ۳ هست
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
👍12❤2
Go Casts 🚀
تخفیف ۵۰ درصدی پاییز 🍁 الحمدلله تیمسازی ۳ هم شروع شد 🎉 در ۱۰ ماهی که از فعالیت تیمسازی گذشته دو تا پروژه تیمسازی ۱ و ۲ رو شروع کرده بودیم که در حال حاضر هم ادامه دارن. از هفته پیش تیمسازی ۳ رو شروع کردیم که مطمئن بشیم بچه های تازه وارد هم تا حد خوبی تجربه…
خلاصه ش اینکه تو شرکت خودروسازی Volvo دارن rust رو برای ECU ماشین ها استفاده می کنن و حالش رو میبرن
https://tweedegolf.nl/en/blog/137/rust-is-rolling-off-the-volvo-assembly-line
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
https://tweedegolf.nl/en/blog/137/rust-is-rolling-off-the-volvo-assembly-line
توضیحات «دوره + تیمسازی بکند و گولنگ Go Casts» و تخفیف ۵۰ درصدی رو در این پست میتونید بخونید 👇
https://news.1rj.ru/str/gocasts/515
@gocasts
🔥8
آقای Martin Fowler رو احتمالا بشناسید، کتاب های زیادی در مورد مهندسی و معماری نرم افزار نوشته.
ایشون تو این مقاله سعی کرده یه راهنمایی کلی در مورد ابعاد مختلف مهندسی نرم افزار داشته باشه که خوندنش خالی از لطف نیست.
Software Architecture Guide
https://martinfowler.com/architecture/
@gocasts
ایشون تو این مقاله سعی کرده یه راهنمایی کلی در مورد ابعاد مختلف مهندسی نرم افزار داشته باشه که خوندنش خالی از لطف نیست.
Software Architecture Guide
https://martinfowler.com/architecture/
@gocasts
❤6👍4
این پست موسس تلگرام رو بخونید، تجربه جالبی رو به اشتراک گذاشته، نکات مهمی رو هم گفته.
نکته ش شاید تکراری و یه جورایی کلیشه ای باشه، اما واقعیته. اکثر مسائل پیچیده و مبهم رو اگه به قدم های کوچیک و ساده بشکنی حل میشه. معماری و نرم افزار و کدهای خوب و مقیاس پذیر عموما یه سری طراحی و کد ساده هستن که به صورت ماژول های کوچیک و هدفمند توسعه داده شدن.
خیلی وقت ها وقتی یه مساله ای برای ما مبهم و جعبه سیاه هست فکر میکنیم راهکار و راه حل باید چیز عجیب غریبی باشه، در حالیکه معمولا اینطور نیست. ممکنه جزییات خاص و مهمی وجود داشته باشه، اما اگه اصل قضیه رو درست پیش بری، اون نکات ریز و مهم رو هم کم کم متوجه میشی که چی هستن و کجا کاربرد دارن.
https://news.1rj.ru/str/durov/355
@gocasts
نکته ش شاید تکراری و یه جورایی کلیشه ای باشه، اما واقعیته. اکثر مسائل پیچیده و مبهم رو اگه به قدم های کوچیک و ساده بشکنی حل میشه. معماری و نرم افزار و کدهای خوب و مقیاس پذیر عموما یه سری طراحی و کد ساده هستن که به صورت ماژول های کوچیک و هدفمند توسعه داده شدن.
خیلی وقت ها وقتی یه مساله ای برای ما مبهم و جعبه سیاه هست فکر میکنیم راهکار و راه حل باید چیز عجیب غریبی باشه، در حالیکه معمولا اینطور نیست. ممکنه جزییات خاص و مهمی وجود داشته باشه، اما اگه اصل قضیه رو درست پیش بری، اون نکات ریز و مهم رو هم کم کم متوجه میشی که چی هستن و کجا کاربرد دارن.
https://news.1rj.ru/str/durov/355
@gocasts
Telegram
Pavel Durov
#lifestories 🐶
Exactly 18 years ago today, I launched VK—my first large company. Below is the story of how it happened.
I graduated from Saint-Petersburg University in the summer of 2006. I wanted to keep in touch with my former classmates, but I knew…
Exactly 18 years ago today, I launched VK—my first large company. Below is the story of how it happened.
I graduated from Saint-Petersburg University in the summer of 2006. I wanted to keep in touch with my former classmates, but I knew…
👍22❤7😍1
با گولنگ معمولا فریمورک خاصی رو استفاده نمیکنم، خود گولنگ خیلی ساده ست و لازم نیست چیزی باهاش استفاده بشه
اما این ابزار بنظرم جالب بود، خودم تا حالا امتحانش نکردم، شاید اگه دنبال توسعه خیلی سریع یه سری crud api ساده باشید این ابزار خیلی تسریع کنه روند توسعه رو براتون.
Sponge is a powerful Go development framework, it's easy to develop web and microservice projects.
go-sponge.com
https://github.com/zhufuyi/sponge
@gocasts
اما این ابزار بنظرم جالب بود، خودم تا حالا امتحانش نکردم، شاید اگه دنبال توسعه خیلی سریع یه سری crud api ساده باشید این ابزار خیلی تسریع کنه روند توسعه رو براتون.
Sponge is a powerful Go development framework, it's easy to develop web and microservice projects.
go-sponge.com
https://github.com/zhufuyi/sponge
@gocasts
👍17