Refaktorieren Sie auf modern. NETund wechseln Sie zu Linux - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Refaktorieren Sie auf modern. NETund wechseln Sie zu Linux

Übersicht

Modernisierung des Vermächtnisses. NETFramework-Apps können Ihnen helfen, Sicherheit, Leistung und Skalierbarkeit zu verbessern. Ein effektiver Weg zur Modernisierung. NETFramework-Apps bestehen darin, sie auf eine moderne Version zu migrieren. NETVersion (6+). Hier sind einige der wichtigsten Vorteile der Umstellung dieser Anwendungen auf Open Source. NET:

  • Um die Windows-Lizenzkosten zu senken, indem Sie sie auf einem Linux-Betriebssystem ausführen

  • Nutzen Sie die Verfügbarkeit moderner Sprachen

  • Holen Sie sich eine Leistung, die für die Ausführung unter Linux optimiert ist

Viele Unternehmen verwenden immer noch ältere Versionen von. NETRahmen. Dies kann Sicherheitsrisiken darstellen, da die Sicherheitslücken in den älteren Versionen nicht mehr von Microsoft behoben werden. Microsoft hat den Support für aktuelle Versionen von eingestellt. NETFramework 4.5.2, 4.6 und 4.6.1. Es ist sehr wichtig, die Risiken und Vorteile einer weiteren Nutzung der älteren Versionen des Frameworks abzuwägen. Um das Risiko zu reduzieren und die Kosten zu senken, kann es sich lohnen, Zeit und Mühe in die Umstellung auf eine moderne Version von zu investieren. NET.

Auswirkung auf die Kosten

Stellen Sie sich einen EC2 Allzweck-Instance-Typ (m5) vor, der ein ausgewogenes Verhältnis von Rechen-, Arbeitsspeicher- und Netzwerkressourcen bietet. Diese Instances eignen sich für eine Vielzahl von Anwendungen wie Webserver, mittelgroße Datenbanken und Quellcode-Repositorys.

Beispielsweise kostet eine On-Demand-Instance vom Typ m5.xlarge mit 4 vCPUs und 16 GB Arbeitsspeicher auf Windows Server (inklusive Lizenz) in der Region USA Ost (Nord-Virginia) 274,48$ pro Monat. Dieselben Ressourcen auf einem Linux-Server kosten 140,16$ pro Monat. In diesem Beispiel sinken die Kosten um 49 Prozent, wenn Sie Ihre Anwendung von migrieren. NETFramework zu einer modernen Version von. NETund führen Sie Ihre Anwendung auf einem Linux-Server aus. Ihre Kosten können je nach den Optionen (z. B. Instance-Typ, Betriebssystem, Speicher), die Sie bei der Auswahl einer EC2Instanz wählen, variieren. Sie können die Kosten weiter optimieren, indem Sie Savings Plans oder Reserved Instances verwenden. Weitere Informationen finden Sie unter, AWS Pricing Calculatorum Kostenvoranschläge zu erstellen. Für Instances, die Windows enthalten, betragen die Lizenzkosten unabhängig vom Preismodell 0,046$ CPU pro V und Stunde.

Diese werden portiert. NETFramework-Anwendungen auf moderne Anwendungen. NETerfordert Entwickleraufwand. Sie müssen Ihre Anwendungen und ihre Abhängigkeiten bewerten, um festzustellen, ob sie mit der Version der Zielplattform kompatibel sind. AWS Portierungsassistent für. NETist ein Hilfstool, das scannt. NETFramework-Anwendungen und generiert eine. NETKompatibilitätsbewertung, die Ihnen hilft, Ihre Anwendungen so zu portieren, dass sie schneller mit Linux kompatibel sind. Der Portierungsassistent für. NETidentifiziert Inkompatibilitäten mit. NET, findet bekannte Ersatzprodukte und erstellt eine detaillierte Kompatibilitätsbewertung. Nach der Portierung Ihrer Lösung müssen Sie manuelle Codeänderungen vornehmen, damit Ihr Projekt erfolgreich mit Abhängigkeiten kompiliert werden kann. Dies reduziert den manuellen Aufwand, der mit der Modernisierung Ihrer Anwendungen auf Linux verbunden ist. Wenn Ihre Anwendung ARM Prozessoren unterstützt, wird durch die Umstellung auf Linux die Möglichkeit zur Verwendung von Graviton-Instances freigeschaltet. Dies kann Ihnen helfen, weitere 20 Prozent an weiteren Kostensenkungen zu erzielen. Weitere Informationen finden Sie unter Stromversorgung. NET5 mit AWS Graviton2: Benchmarks im Compute-Blog. AWS

Es gibt andere Tools, wie AWS das Toolkit für. NETRefactoring und das. NETUpgrade-Assistent, der Ihnen bei der Portierung älterer Versionen helfen kann. NETFramework-Anwendungen auf moderne Anwendungen. NET.

Empfehlungen zur Kostenoptimierung

Um zu migrieren. NETGehen Sie wie folgt vor:

  1. Voraussetzungen — Um den Porting Assistant zu verwenden. NET, müssen Sie installieren. NET5+ auf dem Computer, auf dem Sie den Quellcode der Anwendung analysieren möchten. Die Ressourcen auf dem Computer müssen eine GHz Verarbeitungsgeschwindigkeit von mindestens 1,8, 4 GB Arbeitsspeicher und 5 GB Speicherplatz haben. Weitere Informationen finden Sie unter Voraussetzungen im Portierungsassistenten für. NETDokumentation.

  2. Bewertung — Laden Sie den Portierungsassistenten für herunter. NETals ausführbare Datei (Download). Sie können das Tool herunterladen und auf Ihrem Computer installieren, um mit der Bewertung Ihrer Anwendungen zu beginnen. Die Bewertungsseite enthält portierte Projekte und Pakete, APIs die nicht mit Modern kompatibel sind. NET. Aus diesem Grund treten nach der Bewertung Build-Fehler in der Lösung auf. Sie können die Ergebnisse der Bewertung anzeigen oder in eine CSV Datei herunterladen. Weitere Informationen finden Sie unter Portieren einer Lösung im Portierungsassistenten für. NETDokumentation.

  3. Refactoring — Nach der Bewertung der Anwendung können Sie Ihre Projekte auf die Zielversion des Frameworks portieren. Wenn Sie eine Lösung portieren, werden Ihre Projektdateien und ein Teil des Codes vom Portierungsassistenten geändert. Sie können die Protokolle überprüfen, um die Änderungen an Ihrem Quellcode zu überprüfen. In den meisten Fällen erfordert der Code zusätzlichen Aufwand, um die Migration abzuschließen und zu testen, bis er produktionsbereit ist. Je nach Anwendung können einige der Änderungen das Entitätsframework, die Identität und die Authentifizierung umfassen. Weitere Informationen finden Sie unter Portieren einer Lösung im Portierungsassistenten für. NETDokumentation.

Dies ist ein erster Schritt zur Modernisierung Ihrer Anwendungen auf Container. Es könnte eine Reihe von geschäftlichen und technischen Faktoren für die Modernisierung Ihres Systems geben. NETFramework-Apps für Linux-Container. Einer der wichtigsten Treiber ist die Senkung der Gesamtbetriebskosten durch die Umstellung von einem Windows-Betriebssystem auf Linux. Dies reduziert die Lizenzkosten bei der Migration Ihrer Anwendung auf eine plattformübergreifende Version von. NETund zu Containern, um die Ressourcennutzung zu optimieren.

Nachdem Ihre Anwendung auf Linux portiert wurde, können Sie sie verwenden, AWS App2Containerum Ihre Anwendung zu containerisieren. App2Container verwendet Amazon ECS oder Amazon EKS als Endpunktdienste, die Sie direkt bereitstellen können. App2Container stellt die gesamte erforderliche Infrastruktur als Code (IaC) bereit, um Ihre Anwendungen wiederholt zu containerisieren.

Zusätzliche Überlegungen und Ressourcen