Dealing with Concurrency

Understand and prevent race conditions: locking strategies, mutex variants, and better ways to avoid data chaos.

  • Mutex locking in MySQL and external services
  • Pessimistic vs. Optimistic Locking
  • Control parallelism with partitioning
Dealing with Concurrency

Dealing with Concurrency: Avoiding the Chaos

Parallel requests have been a reality on the web since day one — and are often ignored until, under high load, the first race conditions appear. When also using event-driven architectures, you should proactively think about asynchrony and parallelism.

This training teaches the key approaches to address competing access: locking strategies, mutex variants, and deliberately controlling parallelism when accessing data.

What you'll learn

  • Concurrency is everywhere — why this topic is often underestimated
  • Implementing pessimistic locking with databases
  • Using custom locks in MySQL
  • External mutex locks and their pitfalls
  • Optimistic locking
  • Controlling parallelism with partitioning

Who should attend?

This training is aimed at backend developers and software architects who deal with competing accesses, race conditions, and performance/consistency trade-offs — especially in the context of event-driven systems.

Ideal for teams who want to make their applications robust against concurrent write access.

Prerequisites

Basic knowledge of relational databases and PHP is recommended.

Experience with queues is helpful but not required.

What you'll gain from this training

  • You'll be able to identify and reproduce race conditions
  • You'll know common locking approaches and where to apply them
  • You'll understand typical challenges with external coordination mechanisms
  • You'll learn methods to deliberately control parallelism

Secure your seat

Register now or book a consultation to tailor the training.

Dealing with Concurrency 🇬🇧

Duration: 4 hours

Sep 3, 2026 10:00am-11:00am and 11:30am-12:30pm (CEST)02:00pm-03:00pm (CEST)03:30pm-04:30pm (CEST)

399 €
Book for 399 €

Dealing with Concurrency 🇬🇧 🇩🇪

Duration: 4-8 hours

Your preferred date, any number of participants. Either in Zoom or using your preferred video conferencing software.

from 1800 €
Your desired date online (Zoom) Arne Blankerts
Start free consultation on online training →

Dealing with Concurrency 🇬🇧 🇩🇪

Duration: 1 day (with additional topics)

Your preferred date, any number of participants. At your company or at your desired location.

from 3000 €
Your desired date Any location Arne Blankerts
Start free consultation on inhouse training →
Credits allow discounted access to our training courses. Learn More
Easy access to all our training courses for a monthly fixed fee. Learn More

Frequently Asked Questions

Why are there no full-day online courses?
Our content is designed for optimal online learning: Short, focused sessions promote concentration and provide time to process what has been learned between units.
Are the training sessions live or recorded?
All our training courses take place live as a video conference and are led by an experienced trainer. Participants can ask questions at any time.
What makes your training courses unique?
Our training courses combine hands-on tasks with live coding and solving real-life problems. Our experienced trainers guarantee a particularly good learning experience.
Are your training courses remote or in-person?
We offer our training courses both remotely and in person in order to meet the different requirements of our customers.
Can you tailor training courses specifically to our needs?
Naturally. We can customise our training courses to the individual needs of teams and their technology stacks at any time.
What advantages do individualised training courses offer?
In-house training courses allow you to arrange individual topics, flexible dates and guarantee targeted learning in a familiar environment. This is usually financially viable for four or more participants.
Is there a certification?
Yes, participants will receive a certificate on request after successful participation.