myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Gemeinschaft » Smalltalk » Azure: Bestehende Webseite hosten bzw. migrieren - Erfahrungen und Kosten
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Azure: Bestehende Webseite hosten bzw. migrieren - Erfahrungen und Kosten

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
teebeast teebeast ist männlich
myCSharp.de-Mitglied

Dabei seit: 29.12.2010
Beiträge: 35
Entwicklungsumgebung: Visual Studio 2019
Herkunft: Bayern


teebeast ist offline

Azure: Bestehende Webseite hosten bzw. migrieren - Erfahrungen und Kosten

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo zusammen,

ich habe immer wieder mal - mit wenig Erfolg - mir überlegt, wie ich eine bestehende Webseite nach Azure bekommen könnte bzw. ob Azure für mich überhaupt eine geeignete Wahl ist. Vor allem aus dem finanziellen Aspekt heraus. Gerade hier habe ich das Gefühl, dass man ganz schnell in finanzielle Dimensionen vorstößt, die für ein Freizeitprojekt nicht akzeptabel ist.

Nun kurz mal zur Bestandsaufnahme:

- Es kommt aktuell ASP.NET MVC 5, EF6 sowie MySQL als auch SqlCE zum Einsatz
- Für Daten werden ca. 1 GB benötigt - hauptsächlich Galeriebilder
- Die Datenbanken haben jeweils eine Größe von ca. 20 MB. Hier werden hauptsächlich Informationen zu Mannschaften, Spielpläne als auch News und Termine vorgehalten
- Die Zugriffzahlen auf die Webseite sind vernachlässigbar (< 100 pro Tag)

Sofern aus Eurer Sicht Azure in Frage kommen würde, was wäre dann die bei Azure zu wählenden Komponenten, um möglichst preisgünstig zu sein? Im Zuge der Umstellung wird auch eine Migration des Projektes nach .NET Core 2.2+ erfolgen. Bei der Wahl der Datenhaltung bin ich flexibel.

Über persönliche Erfahrungen sowie Vorschläge als auch Links zum Thema Azure oder auch Migration würde ich mich freuen. Gerne auch, ob Euch die Komplexität des Angebotes ebenfalls erschlägt.

teebeast
15.05.2019 13:35 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.065
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von teebeast:
Vor allem aus dem finanziellen Aspekt heraus. Gerade hier habe ich das Gefühl, dass man ganz schnell in finanzielle Dimensionen vorstößt, die für ein Freizeitprojekt nicht akzeptabel ist.

Das kann nicht passieren, wenn man richtig plant.

Zitat von teebeast:
Sofern aus Eurer Sicht Azure in Frage kommen würde, was wäre dann die bei Azure zu wählenden Komponenten, um möglichst preisgünstig zu sein?

Die Technologieauswahl bei Dir erfordert natürlich eine Runtime, da ASP.NET.
Runtimes sind generell Ressourcen-Gebunden in jeder Cloud und damit zahlst Du auch Ressourcen, die Du gar nicht benötigst - vor allem bei dem wenigen Traffic.
Du wirst also vor allem Idletime bezahlen.

Sehr ungünstig ist, dass offensichtlich Galeriebilder in Deiner WebApp liegen - das macht es prinzipiell teurer.
Statische Dateien wie Bilder sollten auf einem Storage liegen. Dort ist der Speicher günstiger, Du kannst informationen länger Cachen, weniger Ressourcen des Webservers und auch weniger Traffic -> Kostenersparnis.

Ein einfaches "Lift and Shift" ohne Anpassungen an die Cloud Technologien wird immer teurer ablaufen.
Immer.

Auch kann man eben OnPrem Hosting mit Cloud nicht 1:1 vergleichen, weil die Cloud aufgrund der Natur schon viel mehr Features und Management mitbringt, um die man sich sonst selbst kümmern muss.

Beispiel:
Dieses Forum läuft auf PHP in einer Web App; wir haben eben viel dynamischen Content aus Datenbanken.

Mein Blog oder azuresaturday.de haben wir jedoch mit statischen Generatoren gemacht.
Mein Blog mit einer eigenen Engine und azuresaturday.de mit Hugo.

Statische Generatoren erzeugen durch ein Template HTML Code, das dann sehr Kostengünstig auf einem Blob Storage liegen kann.
Wir haben bei azuresaturday 1000+ Zugriffe derzeit am Tag und uns kostet die Webseite 2$ im Monat ( https://melcher.dev/2019/03/running-hugo...-for-2-a-month/).

Die Frage: brauchst Du wirklich eine Datenbank und ASP.NET Core, oder ist das nicht etwas oversized?
Kannst Du nicht einfach die "Daten" in einer YAML halten und durch einen statischen Generator wie WYAM oder Hugo jagen und Du hast am Ende nur eine statische Seite?

Denn Du zahlst natürlich auch die Runtime auf Azure einer Web App - ob Du sie nutzt oder nicht.
16.05.2019 11:01 Beiträge des Benutzers | zu Buddylist hinzufügen
witte
myCSharp.de-Mitglied

Dabei seit: 03.09.2010
Beiträge: 824


witte ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Man könnte sich mal überlegen ob serverless computing (azure functions) hier sinnvoll ist. Ich weiß jedoch nicht welche Nachteile sich ergeben wenn man einen kompletten Server damit abbildet.
16.05.2019 11:31 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.065
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ganz wichtig bevor hier ein falsches Verständnis versteht: Serverless ist nicht gleich Azure Functions!
Serverless bedeutet einfach nur, dass Server wegabstrahiert werden! Azure Functions erfüllt dieses Kriterium wie viele andere Dienste in Azure/AWS/GCP auch.

Es gibt derzeit kein wirklich isoliertes Framework für dynamische Web Apps für Functions.
In AWS gibt es aber die Möglichkeit die Startpipeline so zu ändern, dass ASP.NET Core in AWS Lambda läuft und als Function ausgeführt wird.
Das erfolgt über den Application EntryPoint

C#-Code:
public class LambdaEntryPoint : Amazon.Lambda.AspNetCoreServer.APIGatewayProxyFunction
{
    protected override void Init(IWebHostBuilder builder)
    {
        builder
            .UseStartup<Startup>();
    }
}

Weiter vebreitet ist da eher, dass eine Function bei einer Write-Operation gestartet wird, um dann neuen statischen Content zu generieren, der dann auf einem Blob Storage abgelegt wird und dann statisch zum User geht.
So funktionieren übrigens auch die meisten Content Systeme von Nachrichten-Websites.
16.05.2019 16:14 Beiträge des Benutzers | zu Buddylist hinzufügen
teebeast teebeast ist männlich
myCSharp.de-Mitglied

Dabei seit: 29.12.2010
Beiträge: 35
Entwicklungsumgebung: Visual Studio 2019
Herkunft: Bayern

Themenstarter Thema begonnen von teebeast

teebeast ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Vielen Dank für Eure Antworten. Ich muss mir mal Gedanken machen, ob Azure für das Projekt überhaupt die geeignete Plattform ist. Ich finde Azure eine sehr interessante Plattform und wollte mal etwas Erfahrungen sammeln.

Mein Focus liegt dann aber doch mehr auf dem Sammeln praktischen Erfahrungen mit .NET Core. Wenn das in einem finanziell vernünftigen Rahmen nicht vereinbar ist, dann werde ich wohl zu klassischen Hosting-Lösungen greifen. Hier gibt es passende Angebote bereits ab 4 Euro. Wobei ich für das Sammeln von Erfahrungen mit der Plattform durchaus bereit wäre, den einen oder anderen Euro mehr zu investieren. Auch um mal mit anderen Lösungsansätzen in Berührung zu kommen.

Zitat:
Ein einfaches "Lift and Shift" ohne Anpassungen an die Cloud Technologien wird immer teurer ablaufen.
Immer.

Das ist mir schon klar. Grundsätzlich bin ich hier schon offen für alternative Ansätze. Nur welche die geeigneten sind, ist mir nicht so ganz klar. Ich werde mich hier bei Gelegenheit noch einmal etwas intensiver befassen.

Zitat:
Mein Blog oder azuresaturday.de haben wir jedoch mit statischen Generatoren gemacht.
Mein Blog mit einer eigenen Engine und azuresaturday.de mit Hugo.

Statische Generatoren erzeugen durch ein Template HTML Code, das dann sehr Kostengünstig auf einem Blob Storage liegen kann.

Was in meinem Fall eher gegen eine statische Webseite spricht, ist der Einsatz einer kleinen Benutzerverwaltung zur Inhaltspflege. Als Ersteller der Webseite möchte ich mich nicht um die Contentpflege kümmern.

Derzeit hoste ich noch auf einem virtuellen Windows 2008 R2 Server. Etwas ändern muss sich über kurz oder lang definitiv. Perspektivisch ist die Umgebung jedenfalls nicht.

teebeast
17.05.2019 13:06 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.065
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von teebeast:
Hier gibt es passende Angebote bereits ab 4 Euro.

4€? Mit Windows (weil Du von Server 2008 sprich, dessen Support im Januar 2020 eingestellt wird).
Rein interessehalber: wo?
Allein die Windows Lizenz dürfte eigentlich schon teurer sein.

Zitat von teebeast:
Nur welche die geeigneten sind, ist mir nicht so ganz klar.

Das kommt eben auf die Anfordungen an.

Zitat von teebeast:
Was in meinem Fall eher gegen eine statische Webseite spricht, ist der Einsatz einer kleinen Benutzerverwaltung zur Inhaltspflege.

No. Du musst nur evtl. einfach die Inhalte (wo)anders pflegen; und dann daraus beim Speichern statischen Inhalt erzeugen.
Im Prinzip, wie genannt, funktionieren so die meisten Nachrichten-Webseites.
Kommt aber eben auf die Anfordungen der Content-Schreiber an.
19.05.2019 16:23 Beiträge des Benutzers | zu Buddylist hinzufügen
teebeast teebeast ist männlich
myCSharp.de-Mitglied

Dabei seit: 29.12.2010
Beiträge: 35
Entwicklungsumgebung: Visual Studio 2019
Herkunft: Bayern

Themenstarter Thema begonnen von teebeast

teebeast ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Ich glaube ich habe mich mit dem Hosting-Angebot etwas unglücklich ausgedrückt. Es würde sich dann in dem Fall nicht mehr um einen Server handeln, sondern nur um ein Webhosting-Paket. Aber es würde überraschenderweise .NET-Core mit anbieten.

 https://www.ionos.de/hosting/webhosting

Ob es dann letztendlich meinen Anforderungen entsprechen würde, bleibt noch zu prüfen. Irgend eine Kröte muss man bei solchen Angeboten immer schlucken.

Zitat:
Du musst nur evtl. einfach die Inhalte (wo)anders pflegen; und dann daraus beim Speichern statischen Inhalt erzeugen.

Hm, aber am Ende des Tages brauche ich dann doch eine dynamische Umgebung, wo die Inhalte geflegt werden können. Das verschiebt doch nur die Problematik und am Ende habe ich zwei Ökosysteme zu pflegen. Den einzigen Vorteil hier sehe ich in der Entkopplung zwischen Contentpflege und Contentdarstellung.
21.05.2019 08:24 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.065
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von teebeast:
Aber es würde überraschenderweise .NET-Core mit anbieten.

Aufgrund der Art und Weise, wie .NET Core funktioniert, ist das für die Hoster quasi äquivalent zu PHP und daher bieten immer mehr Hosting Anbieter dafür auch äquivalente Angebote an.

In Azure gibts eben Features per default, die man bei solchen Angeboten nicht hat.
Ich würde mir aber auch eine noch abgespecktere Web App wünschen, sodass sich Azure auch für Mini-Mini-Mini Dinge lohnen.

Zitat von teebeast:
Hm, aber am Ende des Tages brauche ich dann doch eine dynamische Umgebung, wo die Inhalte geflegt werden können.

Für das Erstellen. Aber nicht für das Ausliefern; hier ist ja nichts mehr dynamisch.

Wir haben zB. Content Writern einen Markdown-Editor zur Verfügung gestellt, der die Dateien direkt in Git eincheckt.
Beim Commit wird dann ein Build gerstartet, der aus den Markdown-Dateien eben statische Files generiert (im Prinzip WYAM).

Für den Content Writer ist nicht ersichtlich, dass beim "Save" ein Git Push erfolgt.
Das Einzige, das für ihn anders ist, dass er nicht sofort beim Save die Sachen online hat, sondern 5 Min warten muss.

Aber ja: kommt immer auf den Benutzerkreis und die totalen Anforderungen hin, was man letzten Endes braucht.
21.05.2019 11:56 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 5 Monate.
Der letzte Beitrag ist älter als 4 Monate.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 18.10.2019 13:11