ГоловнаВсі публікаціїКатегоріїПро проєкт

Що таке jemalloc і як він стосується Ruby / Ruby on Rails

Обкладинка нотатки: Що таке jemalloc і як він стосується Ruby / Ruby on Rails
Зміст дописунатисність на посилання, щоб перейти до потрібного місця
Що таке jemalloc?. jemalloc (скорочено від Jason Evans malloc) — це високопродуктивний аллокатор пам’яті, який замінює стандартний malloc, реалізований у стандартній бібліотеці glibc. Його використовують такі великі проєкти як Redis, Firefox, Facebook та навіть Android.
Його основні переваги:
  • Менше фрагментації пам’яті
  • Краща мультипотокова продуктивність
  • Прозоре логування використання пам’яті (через jemalloc профілювання)

Чому jemalloc важливий для Ruby / Rails?

Ruby використовує malloc для керування пам’яттю, особливо при роботі з об’єктами. В умовах великого навантаження (наприклад, багатопотоковий Puma або Sidekiq) стандартний аллокатор може викликати фрагментацію пам’яті та повільне очищення.
Замінивши malloc на jemalloc, ви можете отримати:
  • Менше споживання пам’яті на довготривалих процесах
  • Стабільніший RSS (Resident Set Size)
  • Потенційно швидший GC (Garbage Collector), бо jemalloc краще керує розміщенням об'єктів

Коли має сенс ввімкнути jemalloc (якщо досі не зробили цього)?

Якщо ви бачите, що ваші Ruby / Rails процеси "роздуваються" у пам’яті після декількох годин чи днів роботи — jemalloc може значно допомогти.
Особливо це помітно на:
  • Sidekiq / Resque
  • Puma / Unicorn під навантаженням
  • Сервісах з довготривалими процесами
Де знайти старішу версію Google Chrome та скачати її? На прикладі старого Mac
25.04.2025 23:02

Де знайти старішу версію Google Chrome та скачати її? На прикладі старого Mac

meme code
meme code@memecode
09.05.2025 19:27

[FIXED] cannot load such file -- html/pipeline (LoadError) виникає під час rails generate thredded:install

meme code
meme code@memecode
Задача: Перетворення римського числа на десяткове (Ruby)
20.05.2025 12:05

Задача: Перетворення римського числа на десяткове (Ruby)

meme code
meme code@memecode
Задача на перевірку правильності розстановки дужок (Ruby)
21.05.2025 10:27

Задача на перевірку правильності розстановки дужок (Ruby)

meme code
meme code@memecode
Як знайти підмасив з максимальною сумою (Maximum Subarray Sum) в Ruby
22.05.2025 11:01

Як знайти підмасив з максимальною сумою (Maximum Subarray Sum) в Ruby

meme code
meme code@memecode
Реклама в Google для чайників: Покроковий гід для успішного старту
28.05.2025 10:21

Реклама в Google для чайників: Покроковий гід для успішного старту

meme code
meme code@memecode