以下の処理を行いたい場合、よいミドルウェア(ライブラリ)、方法等あればご教授ください。

クライアントからのリクエストを受け付けるAPIサーバがあり、
このサーバでDBに対し、送信順を考慮してDBにレコードを書き込んでいます。

例えばデータ種別がA、B、Cで通番で1から順番にふられているとして、
データ種別が異なるものは同時送信可能で、通番は同じデータ種別の中では順番に送信しなければならないとします。
(例 A-1とB-2 は同時送信可能。 A-2 はA-1の送信完了後に送信したい場合)
また、送信NG時に再送なども行う想定です。

こういった処理を行いたい場合、オンラインリクエストを受け付ける仕組みとは切り離してシステムを構築したほうがよいのではと考えています。
(常駐化させて、DBが書き込まれるor新システムに通知して処理を実行。任意のタイミングで再送)

現在のAPIサーバの環境
(バージョンは不明ですが、2013年くらいに構築されたものです。)

OS  : RHEL
アプリ : Java Servlet (Tomcat上で実行)
DB  : postgresql

現在のシステム構成からできるだけJavaで構築したいと考えていますが、他に便利なものがあれば検討します。フリーウェアのみの想定です。

ご回答いただけますと幸いです。