Tôi đã làm việc với Spring một thời gian để nhận ra rằng không phải tất cả các yêu cầu gửi đến tôi nhận được trong ứng dụng của tôi đều dựa trên HTTP. Một số yêu cầu dựa trên email và cần phản hồi dựa trên email, một số yêu cầu khác dựa trên socket (nhận thông báo khi giá trị thay đổi trong cửa hàng NOSQL của tôi). Tất cả trong số họ, mặc dù sử dụng nhiều hay ít cơ sở hạ tầng MVC giống nhau.Bộ tách điều khiển MVC của Spring từ HTTPServlet
Vì vậy, tôi nghĩ rằng có thể nghiên cứu ứng dụng, để loại bỏ sự ghép nối giữa các bộ điều khiển và cơ sở hạ tầng HTTP sẽ giúp ích.
Bộ điều phối không còn gọi trực tiếp các phương thức điều khiển, mà phải trích xuất các tham số yêu cầu và sử dụng chúng để tạo một thông báo trừu tượng (hoặc sự kiện). Mặt khác, mọi bộ điều khiển sẽ đăng ký các hành động của nó (các cá thể của lớp Action - một sự triển khai thực hiện mẫu lệnh) cho các sự kiện khác nhau.
Vì tôi khá mới mẻ với Spring Integration, JMS, và những thứ khác như thế, tôi không có ý tưởng, mà công nghệ nhắn tin để lựa chọn. Ngoài ra, tôi khá chắc chắn rằng một kiến trúc như thế này đã được phát triển rồi. Có lẽ, tôi có thể thậm chí không đi đúng hướng.
Tôi chấp nhận tất cả các loại đề xuất về cách tiến hành.