Spis treści
Pokazywałam już, jak wdrożyć aplikację webową w chmurze PaaS Pivotal Web Services:
Pisałam też co nieco o nierelacyjnej bazie danych MongoDB:
- Jak zacząć z MongoDB?
- MongoDB + Spring Data
- Zapisuję dane użytkowników w bazie i robię głupie błędy podczas walidacji formularza
Jak zapewnić sobie dostęp do serwera bazodanowego działającego w chmurze?
Do tej pory uruchamiałam aplikację tylko lokalnie. Przed odpaleniem pliku .jar z wbudowanym serwerem Tomcat musiałam najpierw uruchomić lokalny serwer bazy danych.
W serwisie Pivotal istnieje tzw. Marketplace, w którym można kupować dodatkowe usługi. Wygląda to tak:

Odnalazłam na liście interesujący mnie element:

Moim celem jest teraz włączenie serwisu i powiązanie go z moją aplikacją Szafbook.
Mogę zrobić to z wiersza poleceń przy użyciu narzędzia cf (muszę wówczas użyć poleceń cf create-service
, cf bind-service
i ewentualnie cf-restage
), mogę też wyklikać swoje wymagania w przeglądarce, na stronie Pivotal:

W przypadku wielu dodatkowych serwisów muszę wybrać pomiędzy kilkoma “planami” – najczęściej jeden z nich jest darmowy i dość ograniczony (np. 5 jednoczesnych połączeń, 20MB pojemności), a kolejne są coraz mocniejsze i coraz droższe. MLab na razie ma tylko darmową wersję.
Po kilkunastu sekundach mam już działające połączenie pomiędzy bazą a aplikacją:

Wszystko działa!

Chmura jest w stanie samodzielnie podmienić źródło danych aplikacji w taki sposób, by odwoływało się do nowoutworzonego serwisu. Programista nie musi nawet znać adresu tej usługi! Choć, oczywiście, może go sobie podejrzeć:

W rzeczywistości, jak zwykle, nie obyło się bez błędów:
- Opierając się o tutorial, wyklikałam dostęp do serwisu ElephantSQL, czyli bazy relacyjnej bazy PostgreSQL zamiast do MLab czyli MongoDB.
- Rozdzieliłam właściwości projektu pomiędzy kilka plików dla różnych profili (np. application-development.properties), po czym zapomniałam zmienić profil (z
development
nacloud
) przy budowaniu na potrzeby wdrożenia.
1spring.profiles.active=cloud
Jedna myśl nt. „Baza danych w chmurze Pivotal (photo story)”