Почитай про ActiveJob в руководстве Rails. Из простых бэкендов к ActiveJob неоднократно использую DelayedJob, который не требует установки дополнительных СУБД для хранения данных очередей.
Можно "повесить в after_create" добавление задачи в очередь. Эта задача будет асинхронно обработана другим процессом и клиенту не придётся ждать её ожидания.
Хотел бы уточнить: уведомления должны происходить внутри приложения, между объектами? Или же по сети?
Если первое, то тогда попробуй
https://github.com/krisleech/wisper
https://github.com/kevinrutherford/event_bus
Если второе, то при помощи технологий message queue (ZMQ, AMQP), Redis pub/sub, WebSocket и соответствующих gems.