Czy rozdzielenie warstw internetowych i baz danych za pomocą MSMQ jest konieczne lub przesadne?

Łączę prosty formant sieci web asp.net, który w wyniku postu w formularzu ajax wstawia rekord do bazy danych MSQL.

Możliwe, że strona zawierająca tę kontrolkę otrzyma wiele tysięcy trafień w krótkim czasie i martwię się o problem z wydajnością otwierania połączenia z bazą danych, wstawiania rekordu, a następnie zamykania połączenia dla każdego żądania.

Rozwiązanie, które pojawiło się dla mnie, polega na tym, aby kontrolka sieci Web umieściła wiadomość w kolejce MSMQ i aby usługa Windows na serwerze okresowo czytała kolejkę i wstawiała wsad.

Czy to brzmi jak rozsądna architektura, biorąc pod uwagę, że serwery WWW i bazy danych działają na tej samej maszynie. Czy to konieczne?

Z tego, co przeczytałem w bazie danych, większość korzyści wynikających z używania MSMQ wiąże się raczej z odpornością niż wydajnością, więc mogę szczekać na niewłaściwe drzewo.

Każda rada byłaby bardzo wdzięczna

Wielkie dzięki

Pete

questionAnswers(2)

yourAnswerToTheQuestion