Learning Golang: Concurrency Pattern Pipeline



Learning Golang: Concurrency Pattern Pipeline

Learning Golang: Concurrency Pattern Pipeline

Welcome! Let’s learn about Go/Golang Concurrency Patterns, this time I’m sharing with you the implementation of the “Pipeline” pattern.

A “Pipeline” consists of a group of processing elements arranged so the output of each element is the input of the next one, in Go/Golang this would be equivalent to implementing functions that receive a channel and return another channel.

Feel free to take the example I included below and add support to important things like:
* Error handling
* Cancellation
* Multiple support for reading files concurrently

Share your playground links! Using https://play.golang.org/

=== Relevant Links

* Example code: https://github.com/MarioCarrion/videos/tree/1c2e96467243a187e2c222a6c81a7ad0787a1e7b/2021/09/10/01-pipeline

* Learning Golang: Introduction to Concurrency Patterns, goroutines and channels: https://youtu.be/-xEycsoGoA8
* Learning Golang: Context package: Cancellations, Deadlines and Request-scoped values: https://youtu.be/mgJMIZsWfB4

* Playlist “Learning Go/Golang Concurrency Patterns” https://www.youtube.com/playlist?list=PL7yAAGMOat_Fhj_px_DzNzTsXs-mRwv1t
* Playlist “Software Architecture in Go”: https://www.youtube.com/playlist?list=PL7yAAGMOat_GCd12Lrv_evJ3Zhv1dl8B-
* Playlist “Learning Go”: https://www.youtube.com/playlist?list=PL7yAAGMOat_F7bOImcjx4ZnCtfyNEqzCy
* Playlist “Building Microservices in Go”: https://www.youtube.com/playlist?list=PL7yAAGMOat_Fn8sAXIk0WyBfK_sT1pohu
* Playlist “GoTools and Packages”: https://www.youtube.com/playlist?list=PL7yAAGMOat_HEEOvH99agDs_5g51A0Ls3
* Playlist “Testing in Go”: https://www.youtube.com/playlist?list=PL7yAAGMOat_HSeW4zF0uRL9EaHadE4ZZq

00:00 Start
00:10 Introduction to the Pipeline Concurrency Pattern in Golang
01:01 Considerations when building Pipelines in Golang
02:10 Example of Pipeline Concurrency Pattern in Golang
08:47 Conclusion

Who am I:

HelloπŸ‘‹πŸΌ! I’m Mario, a Hands-on Software Architect and Lead Backend Engineer with more than 16 years of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices.

Every week I will share with you different topics I’ve learned while working for small startups and large companies including the processes I’ve followed over the years for successfully delivering complex enterprise systems from start to end.

Subscribe if you like Software Development, Software Architecture and Systems Design!

Keep it up. Don’t give up!

#golang #microservices #tutorial

— Our affiliate links below

Shop our Amazon favorites β†’ https://www.amazon.com/shop/rubycarrion
Shop my IG feed on my LIKEtoKNOWit (LTK) page β†’ https://www.liketoknow.it/RubyCarrion
Shop Top Deals and Featured Offers at Best Buy β†’ https://bestbuy.7tiv.net/c/2558226/687081/10014
Get a 30 day FREE Trial of Epidemic Sound β†’ https://www.epidemicsound.com/referral/szx441/
Try Amazon Prime 30-day FREE Trial β†’ https://amzn.to/3yf9a0f
I love getting Cash Back and think you will too! Join for FREE and get $30 when you spend $30. https://www.rakuten.com/r/RUBYRA132?eeid=28187

— Our Vlog Channel

https://www.youtube.com/c/RubyCarrion/videos

Comments are closed.