JavaRush /Java-Blog /Random-DE /Stellen Sie eine Java-Anwendung auf der Cloud-Plattform A...
Евгений
Level 41

Stellen Sie eine Java-Anwendung auf der Cloud-Plattform Amazon Web Services (AWS) bereit

Veröffentlicht in der Gruppe Random-DE
Hallo zusammen! Jeder Entwickler muss seine Anwendungen früher oder später in der Cloud bereitstellen. In meinem Fall war es nach der Entwicklung des Telegram-Bots @rabotaUkraineBot einfach notwendig, ein anständiges Hosting dafür zu finden. Die eigentliche Idee der Entwicklung eines Bots und die zur Umsetzung verwendeten Tools werden in einem separaten Artikel beschrieben . Die Kandidaten für die Wahl einer Cloud-Plattform waren die Dienste von vier bekannten Giganten – Amazon Web Services (AWS), Google, Azure und Heroku. Bei der Auswahl des Hostings lege ich folgende Prioritäten fest: Mindestpreis, einfache Bereitstellung, Verfügbarkeit zusätzlicher Dienste, Flexibilität. Ich werde Sie nicht in Analysen und Vergleiche vertiefen; ich verrate Ihnen gleich den Gewinner – AWS. Stellen Sie eine Java-Anwendung auf der Cloud-Plattform Amazon Web Services (AWS) bereit – 1Warum AWS, fragen Sie? Weil:
  • ein Jahr kostenlose Nutzung des kostenlosen Kontingents von AWS , die kostenlosen Ressourcen in diesem Angebot sind für meine Aufgabe mehr als ausreichend;
  • In AWS ist alles elastisch, d. h. alles ist flexibel und elastisch. Dadurch sind DevOps-Kenntnisse bei der Bereitstellung Ihrer Anwendung absolut nicht erforderlich;
  • AWS hat in den letzten zwei Jahren stark in die Entwicklung investiert und jeden Monat kommen neue Dienste hinzu.
Kommen wir nun zur Vorbereitung der Anwendung und der eigentlichen Bereitstellung in der AWS-Cloud. Aus Gründen der Benutzerfreundlichkeit wurde der Dienst Elastic Beanstalk für die Bereitstellung der Anwendung ausgewählt . Damit laden Sie Ihre Anwendung über Ihren Browser herunter und fertig! Ja, ja, AWS richtet die Infrastruktur selbst ein und stellt den erforderlichen Ressourcenpool bereit. Da mein Bot in SpringBoot geschrieben ist, muss lediglich ein War mit dem Spring-Boot-Maven-Plugin erstellt und überprüft werden, ob die Anwendung auf einem lokal bereitgestellten Tomcat ordnungsgemäß funktioniert . Ein sehr wichtiger Hinweis: Vor dem Erstellen müssen Sie in application.properties die Portnummer 5000 festlegen:

server.port=5000
Wenn Sie dies nicht tun, müssen Sie die Porteinstellungen in der AWS-Konsole konfigurieren, wodurch möglicherweise zusätzliche Gebühren von AWS anfallen Dies geht über die Bereitstellung des AWS Free Tier-Service hinaus. Der Bereitstellungsprozess selbst ist absolut unkompliziert und erfolgt gemäß dem offiziellen Leitfaden „Erste Schritte mit Elastic Beanstalk“ . Merkmale, auf die Sie achten sollten:
  • Vergessen Sie beim Erstellen der Anwendung nicht, den Port wie oben beschrieben zu konfigurieren;
  • Bei der Registrierung bei AWS benötigen Sie eine Zahlungskarte mit mindestens 1 US-Dollar auf Ihrem Konto (bei der Validierung der Karte sperrt Amazon 1 US-Dollar);
  • Informieren Sie sich sorgfältig über die Einschränkungen des AWS Free Tier-Dienstes, um kein Geld zu verlieren.
  • Wenn die Anwendung nach der Bereitstellung nicht wie erwartet funktioniert, finden Sie Tomcat-Protokolle im Menü „Protokolle“ in der Umgebung Ihrer Anwendung.
Sie fragen sich, was ein Jahr nach Inanspruchnahme des kostenlosen Zeitraums zu tun ist? Es gibt mehrere Möglichkeiten, das Problem zu beheben:
  1. Beginnen Sie mit der Zahlung von Geld entsprechend den verwendeten Ressourcen;
  2. zum Amazon Lightsail-Dienst wechseln (dort ist es günstiger);
  3. Schreiben Sie die Anwendung mit AWS Lambda neu und erhalten Sie kostenloses Hosting;
  4. Eröffnen Sie ein neues Konto bei AWS Free Tier Services und stellen Sie Ihre Anwendung dort bereit, d. h. die Lösung des Problems um ein weiteres Jahr verzögern.
Derzeit prüft AWS nur bei der Registrierung eines neuen Kontos die Eindeutigkeit der E-Mail. Zusammenfassend lässt sich sagen: Sie können Ihre Anwendung ganz einfach in der AWS-Cloud bereitstellen – sehr schnell und im ersten Jahr absolut kostenlos. Dank AWS-Services können wir uns auf die Entwicklung konzentrieren, AWS erledigt den Rest für uns, denn dort ist alles Elastic.
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION