Mam aplikację internetową, która korzysta z wtyczki autocomplete jquery, która zasadniczo wysyła przez ajax żądanie zawierające tekst, który został wpisany w polu tekstowym do naszego serwera WWW, raz serwer sieciowy otrzymuje to żądanie, a następnie jest przekazywany do rabbitmq.Czy należy używać kolejek komunikatów do synchronicznych wywołań rpc przez ajax
Wiem, że możemy czerpać korzyści z używania wiadomości, ale wydaje się, że używanie go do blokowania wywołań rpc jest nadużyciem i że coś takiego jak WCF jest o wiele bardziej odpowiednie w tym przypadku, czy jest to przypadek, czy jest to akceptowalne architektura?
Oczywiście to zależy od aplikacji, można użyć kolejkę dla wywołań RPC, ale myślę, że to nie jest jego naturalna używa. Aby ci pomóc, mam dwa pytania: 1. Dlaczego korzystasz z połączeń synchronicznych? 2. Czy masz jakiś problem z bieżącą aplikacją? W każdym razie, nie wiem, w jakim języku rozwijasz aplikację, ale myślę, że możesz użyć async-połączeń z RabbitMQ i użyć niektórych technologii, takich jak Spring DeferredResult, aby uzyskać wyniki z twojej kolejki. Nie lubię połączeń synchronicznych, ponieważ blokujesz wątek (na przykład podczas wyszukiwania w bazie danych) bezużytecznie. – Gabriele
1. mamy wywołania synchroniczne do wtyczki autouzupełniania, musisz mieć odpowiedź na żądanie 2. nie ma problemu innego niż myślę, że to niewłaściwe użycie wiadomości w tym przypadku i chcę to zmienić, i szukam dla dowodów na poparcie tej zmiany. – nickbw