Skip to content

Latest commit

 

History

History
257 lines (190 loc) · 24.1 KB

File metadata and controls

257 lines (190 loc) · 24.1 KB

drawing

Let's learn about Concurrency via these 62 free blog posts. They are ordered by HackerNoon reader engagement data. Visit the /Learn or LearnRepo.com to find the most read blog posts about any technology.

The ability of different parts of a program or multiple programs to execute out-of-order or in partial order without affecting the final outcome, crucial for maximizing resource utilization and responsiveness in modern systems.

Golang is a concurrent programming language. It has powerful features like Goroutines and Channels that can handle asynchronous tasks very well. Also, goroutines are not OS threads, and that's why you can spin up as many goroutines as you want without much overhead, it's stack size starts at 2KB only. So why async/await? Async/Await is a nice language feature that provides a simpler interface to asynchronous programming.

The article explains optimistic and pessimistic locking. We consider a Spring Data JPA application with concurrent transactional code as an example.

Originally published on melvinkoh.me

Golang's Goroutines make it easy to run code concurrently. We can simply add the keyword “go” in front of a function call to make it run in a separate routine, or asynchronously.

Solve concurrency issues with typeorm query to fix race-condition and deadlock bug.

A brief introduction to concurrent collections in c sharp.

The other day I was interviewing at one of the companies, and I was asked the following question, how can you count occurrences of a word in a 50gb file with 4gb of RAM. The trick is to not load the whole file into memory and keep processing each word as we keep on moving the pointer of the file. With this, we can easily process the whole file with a minimal amount of memory resources.

Comparison between Optimistic and Pessimistic locking with Golang and PostgreSQL

Try out concurrency in Go on a simple example. What are greenthreads and asynchronous preemtpion? Understanding channels by using worker-pool pattern.

Project Link: https://github.com/Joker666/goworkerpool

Ever wondered how Node.js handles multiple requests despite being single threaded? Find out the secret to concurrency in Node.js and how the event loop works

In this article, I show how to use the ForkJoinPool, which hasn’t received significant dissemination among Java developers.

We all want to test our servers and the latency induced by scale. There are different ways to do that one way would be to use postman to send multiple requests. But how do I send concurrent requests? Say I want to a million requests with different levels of concurrency. This can be easily achieved by leveraging the power of Goroutines.

The React JS dev team announced some exciting changes several months ago - React would be getting a "Concurrent Mode". Essentially this would allow React to perform multiple UI renders concurrently. Of course, JavaScript is single threaded and true concurrency is an illusion, but the new features will allow web apps (and Native Apps once these features hit React Native) to be much more responsive and snappy than they are now with less effort and custom code from the developer to make this happen.

Learn 5 ways to accelerate point queries and 4 methods to further improve concurrency: row storage format, short circuit, prepared statement, and row storage ca

An introduction to concurrency and multithreading in iOS development

If you are looking for some kind of metal panel business idea, allow me to be clear: the Rust I am referring to is a programming language.

(Some background: I’ve interviewed hundreds of candidates for software engineering jobs at Facebook and Microsoft. I’ve also failed several coding interviews myself when I wasn’t prepared.)

Introduction

Introduction

Explore Go’s concurrency patterns, including worker pools, fan-out/fan-in, and pipelines, to build efficient, robust, and scalable applications.

Explore the origins and guiding principles behind Erlang and Elixir to understand their full potential and innovation.

This guide aims to summarize popular methods for boosting the execution speed of your Python code.

AxonerAI: Rust framework for building AI agents. Alternative to LangChain with memory safety, true concurrency and blazing fast executions.

Learn about Java's synchronized collections that helps you achieve thread-safety in the most easiest way!

JavaScript has a concurrency model based on an event loop, which is responsible for executing the code, collecting and processing events, and executing queued sub-tasks.

Crypto exchange has been in great demand with the adaptability of cryptocurrencies surging and multiple new tokens/coins been put there attracting users by showcasing their great potential.

Building a distributed message processing queue using Apache Kafka requires some thought. We walk through how we process thousands of large messages per second.

Frank Müller, Solution Engineer at Loodse, is one of the co-organizers of the GoDays conference in Berlin, which took place in January of 2020. It has been an exciting moment when Google announced its Language Go in 2009. After some hype and early years of establishing the language, it was settled as a robust and scalable fundament for networked systems. We invite you to enjoy a travel through a decade of our beloved Go within the interview of Grigory Petrov, Dev Rel at Evrone.com with Frank Müller.

In "Concurrent Programming in Python is not what you think it is", I wrote about the notorious GIL in Python and did a simple experiment on existing concurrency mechanism in Python. Today, I'll describe another common scenario in concurrent programming, the Producer/Consumer problem, with Python.

Synchronized was revolutionary and still has great uses. But it's time to move to newer thread primitives and potentially, rethink our core logic.

JavaScript can’t truly cancel async/await work—most “cancellation” just stops waiting.

Comprehensive guide to Go concurrency: goroutines, mutexes, WaitGroups, and condition variables with examples, best practices, and gotchas.

In my Previous Blog I covered the basics of Multithreading in Java. Click here to read that blog.

Learn how to build a RESTful API in Go from scratch using only the net/http package, in-memory data, and mutex for concurrency.

Explore the power of Goroutines in Golang for concurrency management, including new enhancements in Golang 1.23 that optimize performance and memory usage.

In this story I explain how concurrency works in Kotlin coroutines with an example to prove how it works. Concurrency in coroutines is cooperative.

Let's talk about concurrency, async/await, promise.all, and lightning web components

Goroutines can supercharge Go apps—or slow them down. Learn when they help, when they hurt, and how to benchmark your workloads.

Learn how Go's memory model defines visibility between goroutines using happens-before rules and synchronization primitives like channels and mutexes.

Explore the concurrency model of modern JavaScript, including the event loop, async/await, and more.

A program that maintain its correctness in a multi-threaded environment is said to be a Thread-Safe program.

Learn about thread explosion, how to manage it, and how modern Swift Concurrency addresses the issue.

Understand Rust's unique memory management system by comparing it to C/C++ pointers. Discover ownership, borrowing, references, and smart pointers.

Your standard object sharing practices might totally fail in a multi-threaded environment. Learn about the ways to properly share objects across threads!

Sharing variables across threads isn't as easy as it sounds. There are a number of interesting cases that might blow your mind when it comes to variable sharing

This article is useful for those interested in the concept of Event Sourcing and who want to decide if it's a good fit for their projects while avoiding common

Demystify when to use channels and when to use mutexes, and why blindly following "Go concurrency patterns" can backfire.

Explore Structured Concurrency in Swift: Actors, @MainActor, @GlobalActor, understanding the Swift Concurrency runtime, and actor reentrancy.

Guide to concurrency, CPU- and IO-bound components, and other interesting stuff. Finally, learn wtf deferred value is.

This is the sixth part of a series on Parallel Programming for Beginners. In this article, we’ll explore real-world scenarios and their solutions.

Before you start spawning thousands of goroutines, let's take a step back and understand how to do this efficiently.

An in-depth exploration of concurrency and parallelism in Go, covering key concepts.

Explore classic concurrency problems in Go. Including producer-consumer, dining philosophers, and rate limiting with simple code examples and clear explanation.

Goroutines let you run multiple operations in parallel within one request.

Explore Structured Concurrency in Swift: parent/child relationship, automatic cancellation, task groups, and more.

A practical deep-dive into Project Loom, explaining how virtual threads and structured concurrency simplify Java’s concurrency model and enable high-throughput.

Learn essential tips for using async await in C# to write concurrent code more effectively.

Go channels look simple, but under the hood they use buffers, queues, and scheduler tricks. Explore hchan, sudog, and Go’s concurrency model.

Every heard of a nice race condition?

A Spring bean. Sounds relatively harmless, doesn't it? What if I told you that this could be the source of many headaches in web servers, especially if you are

Build a scalable, concurrent leaderboard in Go using sharding, heaps, and RWMutex to handle live updates and efficient Top-N queries.