Wie stelle ich eine Java-Webanwendung in AWS bereit?



In diesem Blog wird die Bereitstellung einer Java-Webanwendung in AWS mithilfe von AWS Elastic Beanstalk beschrieben. Außerdem werden die Vorteile der Verwendung von AWS für diesen Zweck beschrieben.

Haben Sie Schwierigkeiten, Ihre Server für die Bereitstellung Ihrer Java-Webanwendungen zu konfigurieren und zu verwalten? Wenn ja, dann sind Sie bei uns genau richtig. In diesem Artikel werde ich Ihnen zeigen, wie Sie eine Java-Webanwendung bereitstellen . Die Bereitstellung Ihrer Java-Webanwendung unter AWS ist völlig problemlos und weniger zeitaufwändig. Hier werde ich die folgenden Hinweise behandeln:

Beginnen wir also mit unserem ersten Thema.





Was ist AWS?

Amazon Web Services (AWS) ist ein Cloud-Dienst von Amazon, der Dienste in Form von Bausteinen bereitstellt. Mit diesen Bausteinen können alle Arten von Anwendungen in der Cloud erstellt und bereitgestellt werden.

Diese Dienste oder Bausteine ​​sind so konzipiert, dass sie miteinander arbeiten und zu Anwendungen führen, die hochentwickelt und hoch skalierbar sind.



Jede Art von Dienst ist einer Domäne zugeordnet. Die wenigen Domänen, die häufig verwendet werden, sind:

Sitzungsverwaltung in der Java-Webanwendung
    • Berechnen

    • Lager



    • Datenbank

    • Migration

    • Bereitstellung von Netzwerken und Inhalten

    • Management-Tools

    • Sicherheits- und Identitätskonformität

    • Messaging

Nachdem Sie nun wissen, was AWS ist, möchte ich die Vorteile der Bereitstellung von Java-Webanwendungen in AWS auflisten.

Warum Java-Webanwendungen unter AWS?

Einfach zu verwenden

Mit AWS können Anwendungsanbieter, ISVs und Anbieter Ihre Anwendungen schnell und sicher hosten - unabhängig davon, ob es sich um eine vorhandene Anwendung oder eine neue SaaS-basierte Anwendung handelt. Sie können die AWS Management Console oder gut dokumentierte Webdienst-APIs verwenden, um auf die Anwendungshosting-Plattform von AWS zuzugreifen.

Flexibel

Mit AWS können Sie das Betriebssystem, die Programmiersprache, die Webanwendungsplattform, die Datenbank und andere Dienste auswählen, die Sie benötigen. Mit AWS erhalten Sie eine virtuelle Umgebung, in der Sie die für Ihre Anwendung erforderliche Software und Dienste laden können. Dies vereinfacht den Migrationsprozess für vorhandene Anwendungen und behält gleichzeitig die Optionen zum Erstellen neuer Lösungen bei.

Kosteneffizient

Sie zahlen nur für die Rechenleistung, den Speicher und andere Ressourcen, die Sie verwenden, ohne langfristige Verträge oder Vorabverpflichtungen. Weitere Informationen zum Vergleich der Kosten anderer Hosting-Alternativen mit AWS finden Sie in der AWS Economics Center

Zuverlässig

Mit AWS nutzen Sie eine skalierbare, zuverlässige und sichere globale Computerinfrastruktur, das virtuelle Rückgrat des milliardenschweren Online-Geschäfts von Amazon.com, das seit über einem Jahrzehnt weiterentwickelt wird.

Skalierbar und leistungsstark

wie man Atom Python laufen lässt

Verwenden von AWS-Tools, Auto Scaling und kann Ihre Anwendung je nach Bedarf vergrößert oder verkleinert werden. Dank der umfangreichen Infrastruktur von Amazon haben Sie bei Bedarf Zugriff auf Rechen- und Speicherressourcen.

Sichern

AWS verwendet einen End-to-End-Ansatz, um unsere Infrastruktur zu sichern und zu härten, einschließlich physischer, betrieblicher und Softwaremaßnahmen. Weitere Informationen finden Sie in der AWS Security Center .

Wie kann ich eine Java-Webanwendung in AWS bereitstellen?

Bevor wir sehen, wie Java-Webanwendungen bereitgestellt werden Lassen Sie mich einige bewährte Methoden erläutern, die Sie befolgen müssen.

Allgemeine Best Practices

Die Größe und Komplexität der Installation von Webanwendungen kann sehr unterschiedlich sein. Daher gibt es selten eine einheitliche Lösung für die Bereitstellung und das Hosten von Java-Anwendungen. Bei der Bereitstellung einer Webanwendung sind jedoch einige allgemeine Best Practices zu beachten:

  • Verstehen Sie die Bereitstellungs-, Installations- und Konfigurationsmerkmale der Anwendung.

  • Verstehen Sie die Anwendungserwartungen von der ersten Bereitstellung bis hin zu zukünftigen Anforderungen an Skalierbarkeit, Verfügbarkeit sowie Sicherung und Wiederherstellung.

  • Verwenden Sie nach Möglichkeit die Automatisierung für die Bereitstellung und andere Aufgaben, bei denen Konsistenz wichtig ist.

  • Nutzen Sie Quellcode- oder Anwendungsrepositorys, um Ihre Anwendung zu schützen.

Lassen Sie uns nun verschiedene Arten von Java-Anwendungen und ihre Mechanismen sehen.

Anwendung auf AWS

AWS bietet verschiedene Tools und Services, um sowohl die Bereitstellung von AWS-verwalteten als auch von Kunden verwalteten Java-Anwendungen zu ermöglichen. Die folgende Tabelle ist eine allgemeine Referenz, um die am besten geeignete Option für ein bestimmtes Szenario zu ermitteln. In den folgenden Abschnitten werden diese verschiedenen Ansätze und ihre anwendbaren Anwendungsfälle ausführlicher beschrieben.

Anwendungsmerkmale Verpackung Werkzeuge Bereitstellungsmechanismus Bereitstellungsmethode / -umgebung
In Eclipse entwickelte benutzerdefinierte Java-AnwendungenFinsternisBereitstellung mit einem Klick in EclipseAWS Toolkit für Eclipse
Java-Webanwendungen, die als JAR-, WAR- oder ZIP-Datei bereitgestellt werden und nur minimale Betriebssystemänderungen erfordernJAR, WAR oder ZIPAutomatisierte Bereitstellung von Paketanwendungen mit AWS Elastic Beanstalk AWS Elastic Beanstalk
Alle Java-Anwendungs- oder Serverkonfigurationen, insbesondere solche, die angepasste Betriebssysteme oder Installationsprogramme von Drittanbietern benötigenBestehende benutzerdefinierte Installationsprogramme, Anwendungsarchiv (JAR, WAR, ZIP), manuelle Dateikopie usw.Bestehende Softwarebereitstellungstools und -prozesse oder automatisierte Bereitstellungsdienste wie AWS CodeDeploy oder AWS OpsWorks. EC2-Instanzen

AWS Elastic Beanstalk

Elastic Beanstalk ist ein benutzerfreundlicher Dienst zum Bereitstellen und Skalieren von Java-Webanwendungen. Elastic Beanstalk unterstützt mehrere Plattformkonfigurationen für Java-Anwendungen, einschließlich mehrerer Java-Versionen mit dem Apache Tomcat-Anwendungsserver und Nur-Java-Konfigurationen für Anwendungen, die Tomcat nicht verwenden.

Mit der Option 'Nur Java' können Kunden alle erforderlichen JAR-Bibliotheksdateien in das Quellpaket für aufnehmen Java-Webanwendungen die keinen oder einen anderen Webcontainer wie Jetty oder GlassFish verwenden. Nach der Bereitstellung verwaltet Elastic Beanstalk automatisch die Kapazitätsbereitstellung, den Lastausgleich und die automatische Skalierung. Dieser Ansatz eignet sich für Unternehmen, die Java-Anwendungen bereitstellen, die die folgenden Kriterien enthalten:

  • Minimale Betriebssystemänderungen erforderlich. (Beachten Sie, dass Elastic Beanstalk-Konfigurationsdateien erweiterte Plattform- und Betriebssystemkonfigurationsoptionen unterstützen. Dies erfordert jedoch zusätzlichen Aufwand und Fachwissen in Bezug auf Elastic Beanstalk-Verpackung.)
  • Entweder in Apache Tomcat 7 oder 8 ausführen oder mit einem eigenen Webcontainer gepackt werden

Elastic Beanstalk unterstützt die folgenden Verpackungs- und Bereitstellungsmechanismen:

  • Benutzerdefinierte Anwendungen, die mithilfe von Eclipse und the direkt für Elastic Beanstalk entwickelt und bereitgestellt wurden AWS Toolkit für Eclipse

    ist Kotlin besser als Java
  • Anwendungen, die in eine JAR-, WAR- oder ZIP-Datei gepackt und dann mit den Elastic Beanstalk-Konsolen-, EB CLI- oder Elastic Beanstalk-API-Aufrufen bereitgestellt werden. Um mehrere Anwendungen in einer Elastic Beanstalk-Umgebung bereitzustellen, können Kunden mehrere WAR-Dateien in einer einzigen ZIP-Datei bündeln.

Schritte zum Bereitstellen einer Java-Anwendung in der AWS Cloud

Bevor Sie fortfahren, gibt es hierfür einige Voraussetzungen.

  1. JDK 8 oder höher
  2. Tomcat 8 oder höher
  3. Eclipse IDE für Java EE
  4. Kostenloses AWS-Konto

Sobald Sie all dies haben, können wir loslegen.

  1. Lassen Sie uns zunächst eine Beispiel-Java-Webanwendung in Eclipse erstellen. Klicken Sie dazu auf Datei -> Neu -> Dynamisches Webprojekt. Benennen Sie nun das Projekt mit einem beliebigen Namen. Hier nenne ich es DemoWebApp. Klicken Sie auf Weiter und dann auf Fertig stellen. Danach sehen Sie, dass Ihr Projekt in Ihrem Arbeitsbereich erstellt wurde.

  2. Jetzt können Sie jede Webanwendung wie Servlets, JSP usw. erstellen. Hier werde ich JSP auswählen. Klicken Sie dazu mit der rechten Maustaste auf DemoWebApp -> Neu -> JSP Datei. Benennen Sie die Datei als sample.jsp. Wenn Sie dies getan haben, schreiben Sie im Hauptteil dieser Datei einen einfachen Text wie 'Dies ist eine Beispiel-JSP' oder was auch immer Sie wollen.

  3. Jetzt werde ich diese Anwendung lokal testen, bevor ich zu AWS gehe. Dazu müssen Sie über die Eingabeaufforderung (da ich Windows 10 verwende) zu Ihrem Tomcat-Verzeichnis navigieren und den Befehl startup.bat verwenden. Dies startet Tomcat.

  4. Wechseln Sie nach dem Start von Tomcat zu Ihrem Projekt in Eclipse. Klicken Sie mit der rechten Maustaste auf Projekt und klicken Sie auf Eigenschaften. Klicken Sie dann auf Server und wählen Sie Tomcat Server. Klicken Sie auf Übernehmen und schließen.

  5. Klicken Sie nun mit der rechten Maustaste auf Ihr Projekt-> Ausführen als-> Auf Server ausführen. Wenn alles funktioniert, können Sie die Ausgabe sehen, die den Text 'Dies ist eine Beispiel-JSP' enthält. Damit haben wir unsere Anwendung lokal getestet. Klicken Sie nun mit der rechten Maustaste auf Ihr Projekt -> Exportieren -> WAR-Datei. Hier geben Sie das Ziel ein, an dem Sie die Kriegsdatei speichern möchten.

  6. Jetzt werden wir diese Anwendung auf AWS bereitstellen. Gehen Sie dazu auf die AWS-Homepage. Klicken Sie auf Services -> Compute -> Elastic Beanstalk. Klicken Sie nun auf Neue Anwendung erstellen. Geben Sie den Namen der Anwendung ein und erstellen Sie eine neue Umgebung dafür. Wählen Sie nun Webserverumgebung. Wählen Sie nun in der Basiskonfiguration Tomcat in der vorkonfigurierten Plattform aus. Wählen Sie im Anwendungscode die WAR-Datei aus, die wir im vorherigen Schritt erstellt haben. Klicken Sie nun auf Hochladen.

  7. Das Hochladen der WAR-Datei dauert einige Minuten. Sobald dies erledigt ist, sehen Sie die folgende Seite. Hier sehen Sie die URL. Klicken Sie auf die URL und Sie sehen eine JSP mit Ihrer Textnachricht.

So stellen Sie die Java-Webanwendung in AWS bereit. Damit sind wir am Ende dieses Artikels über die Bereitstellung von Java Web App in AWS angelangt. Ich hoffe, Sie haben alles verstanden, was ich hier erklärt habe.

Wenn Sie diese Anleitung zum Bereitstellen von Java-Webanwendungen in AWS als relevant erachtet haben, können Sie den Live- und Kursleiter-Kurs von Edureka lesen , von Industriepraktikern mitgeschaffen.

Hast du eine Frage an uns? Bitte erwähnen Sie es im Kommentarbereich dieser Anleitung zum Bereitstellen einer Java-Webanwendung in AWS. Wir werden uns dann bei Ihnen melden.