Chuyển sang chế độ ngoại tuyến với ứng dụng Player FM !
Fixing a Thread-Safety Bug with Nate Berkopec
Manage episode 359828805 series 2552731
Can you tell if a Ruby gem is really thread-safe or not? And how do you fix a seemingly thread-safety issue that can be something else entirely?
We had no idea. So we asked Nate Berkopec to help us. Nate is an expert in Ruby performance.
The verdict: nuking all shared global mutable state in your Ruby code is a bad idea if you don't know what you're doing!
Listen to this episode to learn:
- How and why faker-ruby became thread-unsafe, especially for Puma users
- Questions to ask yourself when trying to debug thread-safety issues
- Shared global mutable state is not always the villain, and is not the source of all thread-safety issues
- Nate's "watch-out" list of things that can cause undesired behavior when running multi-threaded Ruby applications: Constants, Class Variables, and Rack Middleware.
Episode Notes
🔗 Full transcript and links
-----
A special thanks to Valentino Stoll, nfstern02, and Gregg P for sponsoring hexdevs!
Enjoy!
37 tập
Manage episode 359828805 series 2552731
Can you tell if a Ruby gem is really thread-safe or not? And how do you fix a seemingly thread-safety issue that can be something else entirely?
We had no idea. So we asked Nate Berkopec to help us. Nate is an expert in Ruby performance.
The verdict: nuking all shared global mutable state in your Ruby code is a bad idea if you don't know what you're doing!
Listen to this episode to learn:
- How and why faker-ruby became thread-unsafe, especially for Puma users
- Questions to ask yourself when trying to debug thread-safety issues
- Shared global mutable state is not always the villain, and is not the source of all thread-safety issues
- Nate's "watch-out" list of things that can cause undesired behavior when running multi-threaded Ruby applications: Constants, Class Variables, and Rack Middleware.
Episode Notes
🔗 Full transcript and links
-----
A special thanks to Valentino Stoll, nfstern02, and Gregg P for sponsoring hexdevs!
Enjoy!
37 tập
Todos los episodios
×
1 Fixing a Thread-Safety Bug with Nate Berkopec 45:38

1 Building Technical Wealth and Improving Legacy Code with M. Scott Ford 54:06

1 How to Open Source with Richard Schneeman (schneems) 57:47

1 How to Beat Impostor Syndrome and Be a Happy Developer with Amor Muto 1:13:00

1 The Surprising Way to Become a Senior Software Developer with Caroline Salib 45:45

1 How to Find Your Ruby Software Career Path with Mina Slater 42:03

1 Unhappy as a Developer? How Not To Be Miserable with Dr. Randy Paterson 1:11:34

1 Ruby Code Quality with Ernesto Tagwerker 56:10


1 #24 Why no one reads your tech blog and how to fix that 25:57

1 #23 Taking the Leap into Entrepreneurship with Monica Lent 51:17

1 #22 Unusual Tech Jobs with Brian David Hall 39:14

1 #21 Why Michael Lynch Quit Google to Work for Himself as a Solo Founder 43:17

1 #20 Growing a micro-SaaS to $30k MRR with Preetam Nath and Sankalp Jonna from DelightChat 1:08:29
Chào mừng bạn đến với Player FM!
Player FM đang quét trang web để tìm các podcast chất lượng cao cho bạn thưởng thức ngay bây giờ. Đây là ứng dụng podcast tốt nhất và hoạt động trên Android, iPhone và web. Đăng ký để đồng bộ các theo dõi trên tất cả thiết bị.