🪲 مشارکت برای حل مشکل در کتابخانه amqp
دوستان بعد از مدت ها سروکله زدن با این کتابخانه که دیروز منتشر کردم یک مشکلی در reconnection Publisher وجود دارد که هنوز نتونستم درک کنم.
https://github.com/Ja7ad/amqp/issues/1
اگر مایل هستید با مشارکتتان در حل این مشکل کمک کنید تا به پایداری کامل برسونم.
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
دوستان بعد از مدت ها سروکله زدن با این کتابخانه که دیروز منتشر کردم یک مشکلی در reconnection Publisher وجود دارد که هنوز نتونستم درک کنم.
https://github.com/Ja7ad/amqp/issues/1
اگر مایل هستید با مشارکتتان در حل این مشکل کمک کنید تا به پایداری کامل برسونم.
نکته ای که هست Consumer کاملا پایدار هست و بدونی هیچ مشکلی reconnection را انجام می دهد ولی سمت Publisher دلیلی نیافتم که چرا کانکشن بسته میشه روی reconnection.
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
GitHub
close on channel manager on re connection in publisher · Issue #1 · Ja7ad/amqp
I am experiencing an unknown issue with the close channel during the reconnection of the publisher. message 0 publised message 1 publised message 2 publised message 3 publised [2023/11/28 09:51:14]...
👍3💊3
در زیر بنچمارکی داریم درخصوص تعداد شرط های زیاد استفاده از switch یا else if به نظرتان کدام انتخاب مناسبی هست؟
نتیجه بنچمارک:
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
package switch_if
import (
"github.com/brianvoe/gofakeit/v6"
"testing"
)
var providers = []string{"Google", "Microsoft", "Apple", "GitHub", "Twitter", "Twitch", "Facebook"}
type ProviderEmail struct {
Google string
Microsoft string
Apple string
GitHub string
Twitter string
Twitch string
Facebook string
}
func BenchmarkSwitch(b *testing.B) {
b.ReportAllocs()
b.ResetTimer()
for i := 0; i < b.N; i++ {
provider := generateRandomProviderEmail()
switch {
case len(provider.GitHub) != 0:
_ = "GitHub"
case len(provider.Google) != 0:
_ = "Google"
case len(provider.Microsoft) != 0:
_ = "Microsoft"
case len(provider.Apple) != 0:
_ = "Apple"
case len(provider.Twitter) != 0:
_ = "Twitter"
case len(provider.Twitch) != 0:
_ = "Twitch"
case len(provider.Facebook) != 0:
_ = "Facebook"
}
}
}
func BenchmarkIfElse(b *testing.B) {
b.ReportAllocs()
b.ResetTimer()
for i := 0; i < b.N; i++ {
provider := generateRandomProviderEmail()
if len(provider.GitHub) != 0 {
_ = "GitHub"
} else if len(provider.Google) != 0 {
_ = "Google"
} else if len(provider.Microsoft) != 0 {
_ = "Microsoft"
} else if len(provider.Apple) != 0 {
_ = "Apple"
} else if len(provider.Twitter) != 0 {
_ = "Twitter"
} else if len(provider.Twitch) != 0 {
_ = "Twitch"
} else if len(provider.Facebook) != 0 {
_ = "Facebook"
}
}
}
func generateRandomProviderEmail() *ProviderEmail {
randomProvider := &ProviderEmail{}
randomProvider.setRandomField()
return randomProvider
}
func (p *ProviderEmail) setRandomField() {
randomField := gofakeit.RandomString(providers)
randomEmail := gofakeit.Email()
switch randomField {
case "Google":
p.Google = randomEmail
case "Microsoft":
p.Microsoft = randomEmail
case "Apple":
p.Apple = randomEmail
case "GitHub":
p.GitHub = randomEmail
case "Twitter":
p.Twitter = randomEmail
case "Twitch":
p.Twitch = randomEmail
case "Facebook":
p.Facebook = randomEmail
}
}
نتیجه بنچمارک:
goos: linux
goarch: amd64
pkg: switch-if
cpu: AMD Ryzen 7 5700U with Radeon Graphics
BenchmarkSwitch
BenchmarkSwitch-16 2169474 559.9 ns/op 88 B/op 4 allocs/op
BenchmarkIfElse
BenchmarkIfElse-16 2134839 556.0 ns/op 88 B/op 4 allocs/op
PASS
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍6🔥1🎉1🐳1🍾1
♻️How to Observe Your CI/CD Pipelines with OpenTelemetry
https://thenewstack.io/how-to-observe-your-ci-cd-pipelines-with-opentelemetry/
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://thenewstack.io/how-to-observe-your-ci-cd-pipelines-with-opentelemetry/
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍3🔥1
🌷Go Fact: Zero-sized Field at the Rear of a Struct Has Non-zero Size
https://i.hsfzxjy.site/zst-at-the-rear-of-go-struct/
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://i.hsfzxjy.site/zst-at-the-rear-of-go-struct/
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍4
♻️Postgres Weekly Issue 532:
♻️November 29, 2023
https://postgresweekly.com/issues/532
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
♻️November 29, 2023
https://postgresweekly.com/issues/532
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍4
Forwarded from Gopher Academy (Javad)
✅ دورهمی هفته دوازدهم (یادآوری - اطلاعات ورود میتینگ)
این هفته بصورت مقدماتی به موضوع کریپتوگرافی کلید عمومی می پردازیم که یکی از اساسی ترین موضوع دنیای رمزنگاری و بلاکچین هست.
- موضوع: An introduction to the public-key cryptography
- تاریخ و ساعت: ۹ آذر ساعت ۷ شب
- اسپانسر: GoBridge
- ارائه دهنده: مهندس مصطفی صداقت جو (توسعه دهنده و Maintainer پروژه بلاکچین Pactus )
- محل برگزاری: پلت فرم zoom و گوگل میت
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
این هفته بصورت مقدماتی به موضوع کریپتوگرافی کلید عمومی می پردازیم که یکی از اساسی ترین موضوع دنیای رمزنگاری و بلاکچین هست.
- موضوع: An introduction to the public-key cryptography
- تاریخ و ساعت: ۹ آذر ساعت ۷ شب
- اسپانسر: GoBridge
- ارائه دهنده: مهندس مصطفی صداقت جو (توسعه دهنده و Maintainer پروژه بلاکچین Pactus )
- محل برگزاری: پلت فرم zoom و گوگل میت
اطلاعات ورود به میتینگ
۱. از طریق گوگل میتینگ: https://meet.google.com/axn-cwds-xqn
۲. از طریق zoom :
- لینک ورود: https://us02web.zoom.us/j/86712676395?pwd=NXNxRlZ4dnNETXF3RXBTWXM4UXYrZz09
- شناسه و رمز: 86712676395 - 944574
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
❤3🔥1🍾1
Gopher Academy
✅ دورهمی هفته دوازدهم (یادآوری - اطلاعات ورود میتینگ) این هفته بصورت مقدماتی به موضوع کریپتوگرافی کلید عمومی می پردازیم که یکی از اساسی ترین موضوع دنیای رمزنگاری و بلاکچین هست. - موضوع: An introduction to the public-key cryptography - تاریخ و ساعت: ۹ آذر…
دوستان دورهمی ۲۰ دقیقه دیگر شروع می شود و از طریق لینک ها و اطلاعات زیر می توانید وارد شوید:
اطلاعات ورود به میتینگ
۱. از طریق گوگل میتینگ: https://meet.google.com/axn-cwds-xqn
۲. از طریق zoom :
- لینک ورود: https://us02web.zoom.us/j/86712676395?pwd=NXNxRlZ4dnNETXF3RXBTWXM4UXYrZz09
- شناسه و رمز: 86712676395 - 944574
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
اطلاعات ورود به میتینگ
۱. از طریق گوگل میتینگ: https://meet.google.com/axn-cwds-xqn
۲. از طریق zoom :
- لینک ورود: https://us02web.zoom.us/j/86712676395?pwd=NXNxRlZ4dnNETXF3RXBTWXM4UXYrZz09
- شناسه و رمز: 86712676395 - 944574
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍4🍾3
TDD is Kanban for Code
https://tidyfirst.substack.com/p/tdd-is-kanban-for-code
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://tidyfirst.substack.com/p/tdd-is-kanban-for-code
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
❤4
خیلی ها به سیستم عامل های کاستوم دید منفی دارن که خب درست هم هست؛ ویدویی تو يوتيوب دیدم که روال کار ساخت سیستم عامل کاستوم رو بهتون آموزش میده و برای خیلی ها میتونه مفید واقع بشه.
https://youtu.be/tSs-jkVRcXM?si=-zo-NQxhR2aBMqc7
#DevTwitter | <Nima Nikjoo/>
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://youtu.be/tSs-jkVRcXM?si=-zo-NQxhR2aBMqc7
#DevTwitter | <Nima Nikjoo/>
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍2🕊2❤1🍾1
Understanding_Cryptography.pdf
4.7 MB
✅ دورهمی هفته دوازدهم مهندسین گولنگ (ویدئو)
موضوع: An introduction to the public-key cryptography
مهندس مصطفی صداقت جو بصورت مقدماتی به موضوع کریپتوگرافی کلید عمومی پرداخت که یکی از اساسی ترین موضوع دنیای رمزنگاری و بلاکچین هست.
🔗 لینک ویدئو در یوتیوب: https://www.youtube.com/watch?v=2qKS0eyuNiQ
☑️ پروژه پکتوس: https://pactus.org
مقاله: https://andrea.corbellini.name/2015/05/17/elliptic-curve-cryptography-a-gentle-introduction/#algebraic-addition
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
موضوع: An introduction to the public-key cryptography
مهندس مصطفی صداقت جو بصورت مقدماتی به موضوع کریپتوگرافی کلید عمومی پرداخت که یکی از اساسی ترین موضوع دنیای رمزنگاری و بلاکچین هست.
🔗 لینک ویدئو در یوتیوب: https://www.youtube.com/watch?v=2qKS0eyuNiQ
☑️ پروژه پکتوس: https://pactus.org
مقاله: https://andrea.corbellini.name/2015/05/17/elliptic-curve-cryptography-a-gentle-introduction/#algebraic-addition
➖➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
🔥9👍1
اگه میخواید بدونید شرکت های بزرگ چه مشکلاتیو با Go حل کردن و داستان استفادشون از گولنگ چی بوده این لینک رو ببینید، خیلی جذابه بنظرم
https://go.dev/solutions/case-studies
#DevTwitter | <Reza/>
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://go.dev/solutions/case-studies
#DevTwitter | <Reza/>
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍10🍾5🕊2❤1🔥1
اوه مای زیشل نه فقط ترمینال شما رو قشنگتر میکنه که فرصتی هم هست برای کلی یادگیری جدید. بیاین با هم ببینیم چیکار می کنه و این وسط ترمینالمون رو هم قشنگتر کنیم.
https://youtu.be/5lK4ihsXAX8
#جادی
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://youtu.be/5lK4ihsXAX8
#جادی
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
👍8❤1
Nginx playground
https://nginx-playground.wizardzines.com/
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
https://nginx-playground.wizardzines.com/
➖➖➖➖➖➖➖➖
🕊 @gopher_academy | @GolangEngineers
🔥7❤2👍2🍾2