2016-08-14 4 views
1

Ich habe eine Website, für die der Inhalt als eine Sammlung von Fotos in JPEG-Dateien gespeichert wird, zusammen mit einigen manuell bearbeiteten XML-Dateien mit Metadaten. Derzeit wird es von einer Webhosting-Firma aus der alten Schule gehostet, und ich werde in naher Zukunft zu Microsoft Azure wechseln.Kann Azure Blob Storage mit einem Quellcode-Repo synchronisiert werden?

Derzeit aktualisiere ich Dateien manuell über FTP, und ich möchte versuchen, den Workflow zu verbessern, so dass es weniger mühsam und fehleranfällig ist. Im Idealfall möchte ich ein Azure Blob Storage-Konto so konfigurieren, dass es ein Versionskontroll-Repository spiegelt (vorzugsweise Mercurial, obwohl ich mit der Migration nach Git leben könnte, wenn ich wirklich müsste). Ich hätte gerne eine Konfiguration, bei der ich beim Drücken auf den Repo erkennt, welche Dateien geändert wurden, und diese Dateien im Speicherkonto aktualisiert. Unterstützt Azure dies, oder müsste ich meine eigenen Skripts schreiben, wenn ich das wollte?

Antwort

1

Azure Storage verfügt über keinen Mechanismus, um Vergleiche mit einem externen Satz von Ressourcen durchzuführen. Du musst das alleine machen. Um Sie zu unterstützen, hat jeder Blob einen Zeitstempel und einen ETag (der aktualisiert wird, wenn der Blob aktualisiert wird).

1

Wenn Sie nicht zu viele Dateien haben, können Sie versuchen, die Custom Deployment Script nutzen, um Ihr eigenes Skript in PHP, Node.js, Python oder C# zu erstellen und mit Azure Storage SDKs für Ihre Anforderung zu implementieren.

Andernfalls können Sie Microsoft Azure Storage Explorer ausnutzen, um Ihre Dateien bequem von lokal auf Azure Storage hochzuladen.

Darüber hinaus empfehlen wir Ihnen, einige Änderungen an der Architektur Ihrer Anwendung vorzunehmen. Verwenden Sie Azure Storage zum Speichern Ihrer Bilddateien. Speichern Sie Ihre Bilddateien nicht in Azure Web Apps mit Ihrer Anwendung. Wenn Sie mehrere Instanzen Ihrer Azure Web Apps haben und die Dateien, die von Benutzeroperationen betroffen sind, möglicherweise nicht mehr synchronisiert werden.

Verwandte Themen