Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Microservices mit Spring Boot

Mehrere Spring-Boot-Applikationen konfigurieren

Testen Sie unsere 2018 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Legen Sie eine zweite Spring-Boot-Applikation an und lernen Sie, diese zu konfigurieren. Anschließend lassen Sie beide Applikationen parallel laufen und sorgen dafür, dass beliebig viele Instanzen einer Applikation gleichzeitig ausgeführt werden können.

Transkript

In der Natur von Microservices liegt es, dass wir üblicherweise keinen Service ganz alleinstehend betreiben, sondern eher mehrere von solchen Services an den Start bringen möchten. Wir werden uns in diesem Video deshalb einmal anschauen, wie wir eine zweite Spring-Boot-Applikation bereitstellen können und wie wir es schaffen können, dass diese parallel zur ersten Spring-Boot-Applikation betrieben werden kann. Lassen Sie uns starten, indem wir per "File" "New" "Spring Starter Project" eine weitere Spring-Boot-Applikation anlegen. Wir nennen Sie "second-boot". Auch die Artifact-ID benennen wir entsprechend um und gerne können wir auch die Beschreibung entsprechend anpassen. Den Rest der Einstellungen können wir so belassen und wählen hier als Dependency erneut die Web-Dependency aus. Ein Klick auf "Finish" legt uns die Applikation an. Das wird einige wenige Sekunden dauern und sobald wir dies erledigt haben und uns vergewissert haben, dass alle notwendigen Komponenten vorhanden sind, können wir beide Applikationen einmal starten. Zu diesem Zweck führen wir ein Rechtsklick auf die erste Applikation aus und wählen aus dem Kontextmenü "Run as" " Spring Boot App" aus. Nach einem kurzen warten, ist diese Applikation gestartet und nun starten wir die zweite Applikation analog. Beim Start dieser Applikation stellen wir allerdings fest, dass es eine Fehlermeldung gibt, nämlich Fehlermeldung: "Address already in use". Und diese Fehlermeldung bedeutet nichts anderes, als dass der Tomcat standardmäßig auf Port 8080 lauschen wollte, dort aber nicht darauf lauschen konnte, weil es ja bereits eine andere Applikation gab, die vorher gestartet worden ist, die ebenfalls auf diesen Port lauscht. Wir müssen jetzt also einen Weg finden, wie wir den Port entweder richtig festlegen können oder dafür sorgen können, dass der Tomcat sich beim Start selbstständig einen neuen Port aussucht. Die Einstellungen einer Spring-Boot-Applikation befinden sich in der Datei "application.properties", die sich im Ordner "src/main/resource" befindet. Hier können wir den Schlüssel "server.port" verwenden, um der Applikation mitzuteilen, dass sie auf Port 80 81 lauschen soll. Ich habe das hier einmal getan, habe die Datei gespeichert und kann nun die Applikation erneut starten und werde dann feststellen, dass die so gestartete Applikation tatsächlich nicht mehr mit der bereits laufenden Applikationen kollidiert, es gibt keine Fehlermeldung, der Tomcat meldet sich damit, dass er sich auf Port 8081 initialisiert und dort dann eben entsprechend auch läuft. Wenn Sie jetzt an eine Applikation denken, die in der Cloud laufen soll, dann ist ja ein Bestandteil des Cloud-Versprechens, dass so eine Applikation beliebig skalieren soll. "Beliebig skalieren" bedeutet, ich möchte noch mehr Instanzen als diese eine Instanz von diesem Service jeweils starten können. wenn ich jetzt hier den Port fest verdrahtet in dieser Applikation hinterlegt habe, dann habe ich ein Problem, weil jeder Port nur einmal auf einem System benutzt werden kann und gelegt werden kann. Aus diesem Grund gibt es die Möglichkeit, dass ich statt eines fest verdrahteten Ports den Wert 0 hinterlege. Wenn ich jetzt diesen Wert 0 zuweise und die Applikation neu starte, dann kann ich feststellen, dass die Applikation auf einen beliebigen Port hört, in diesem Fall ist der Tomcat auf Port 63086 gestartet worden. Und wenn ich das jetzt ein paar Mal wiederhole oder eine zusätzliche Instanz starte, dann wird die sich nicht mit meiner bisherigen Applikation in die Quere kommen, sondern einfach parallel laufen und auf einen weiteren Port hören, in diesem Fall 63098. Auf die Art und Weise können wir Applikationen schreiben, die beliebig häufig auf einem System laufen können, wo wir Ports und andere Standardwerte nicht fest verbraten müssen und somit höchst flexibel bleiben. Und Flexibilität ist ja das Kerngeschäft von Cloud-basierenden Applikationen.

Microservices mit Spring Boot

Sehen Sie, wie moderne Applikationen für Cloud-Umgebungen entstehen.

2 Std. 14 min (12 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!