Mockowanie danych w środowisku deweloperskim - dobre praktyki

0

Hej,
chciałem się dowiedzieć jak realizujecie mockowanie danych w środowisku deweloperskim. Posiadam aplikację Springową, która używa bazy danych, w której znajduje się mnóstwo danych. Często są to zrzuty z bazy produkcyjnej, gdyż schemat jest skomplikowany i potrzebujemy sensownych danych, żeby w ogóle uruchomić aplikację. Danych jest bardzo dużo, uruchamianie aplikacji i korzystanie z niej trwa bardzo długo, gdyż serwery bazodanowe są zlokalizowane w USA, połączenie jest dość wolne.

Wydaje mi się, że dobrym pomysłem byłoby zamockować kilka zapytań, gdyż tylko kilka tabel jest problematycznych. Pytanie tylko jak zrobić to dobrze, bez jakichś głupich ifów w kodzie. Jak realizujecie takie problemy u siebie w firmach?

Pozdrawiam

1
  1. Kopia bazy po waszej stronie
  2. Cache L2 na z fallback'iem na dysk (ehcache) aby przeżył restart. I wtedy cacheować te zapytania
  3. Aspect lub Spring cache
0
  1. Na razie nie jest to możliwe niestety.
    Co do cache to chyba lepiej się sprawdzi, gdy takie zapytanie wykonywane jest często, natomiast przy jednorazowych zapytaniach, które wykonują się jedynie podczas startu aplikacji to chyba nic nie da. A takich też mam kilka.
1

Skoro przy starcie aplikacji jednorazowo wykonujesz zapytania o konfigurację jak mniemam to zapisz sobie te dane lokalnie i wczytuj je z dysku zamiast rzezać bazę danych. Jak? Chociażby przez wspomniany tu ehcache, który będzie pełnił rolę lokalnej kopii. Wczytanie gotowych rezultatów będzie zapewne szybsze niż odpytywanie bazy i związane z tym operacje.

Inna opcja, to podmiana implementacji serwisu, który wykonuje pracę związaną z konfiguracją na taki, który ma zaszytą konfigurację.

1 użytkowników online, w tym zalogowanych: 0, gości: 1