Cześć wam,
Trochę się dzisiaj zirytowałem, bo czuję niemoc w zrozumieniu tej technologii.
**Zatem:
Endpointy w moim API zaczęły dość wolno chodzić po tym jak je rozbudowałem. Na odpowiedź na localhoscie trzeba czekać 3 sekundy, a ze zdalnego serwera się ten czas zwiększa. Domyślam się że tak nie może być.
Myślałem, że asynchroniczna wymiana danych mi w tym pomoże. No i znalazłem AMQP i jego imlementację RabbitMQ.
Myślałem także, że będzie się to odbywało na takiej zasadzie:
- Endpoint odpowie błyskawicznie
- Inne zadania z tego endpointu jak: wyrenderowanie JSowych wykresów i maili oraz wysłanie je do klienta. W między czasie taki raport ma być zapisany jako PDF i schowany na lokalnym dysku.
I nie wiem czy dobrze myślę, czy pokręciłem wszystko? Chciałbym, żeby endpoint najpierw odpowiedział z szybkimi danymi na już, a później w tle aplikacja by sobie generowała raporty i je rozsyłała. Najpierw chciałem to zrobić za pomocą aspektów, po wykonaniu endpointu, ale podejrzewam, że apka zwolni, albo padnie kompletnie jak przyjdzie sporo takich samych requestów.
Ktoś mi rozjaśni ?
Dzięki!