2016-03-30 7 views
0

Ich fange an, Azure Storage (Blob spezifisch) in meiner Anwendung zu verwenden, wollte aber wissen, was die Norm im Fall von Tests im Gegensatz zu Produktionsspeicher war.Azure Storage (Blobs) mit Konten und Containern verstehen. Testbehälter?

Also ist es Routine zu erstellen ein Speicherkonto? dh:

http:// <storage-account-name>.blob.core.windows.net/ 

und dann haben unterschiedliche Behälter für jede Umgebung? dh:

http://<storage-account-name>.blob.core.windows.net/testContainer 
http://<storage-account-name>.blob.core.windows.net/productionContainer 

so ist, dann wäre es am Ende aussehen wie mit bevölkerten Daten:

http://<storage-account-name>.blob.core.windows.net/testContainer/<whateverkey> 
http://<storage-account-name>.blob.core.windows.net/productionContainer/<whateverkey> 

oder sollte ich zwei verschiedene Speicherkonten erschaffen? Ich hatte angenommen, dass der connectionString nur für den Namen des Speicherkontos generiert wurde und später in meiner Logik würde ich die Container und Schlüssel beim Hinzufügen von Daten angeben.

Dank

Antwort

1

Es gibt keine Standard Art und Weise, aber ... im Kopf behalten: Azure Storage ist nicht Multi-Level-Unterordner in Bezug auf (obwohl die Pfade simuliert werden können). Wenn Sie also Container verwenden, um Test und Produktion zu organisieren, wird Ihre Fähigkeit beeinträchtigt, Continers in Ihrer App richtig zu nutzen (z. B. wenn Sie /images/foo.png wollen ... jetzt müssen Sie /productioncontainer/images/foo.png haben).

Denken Sie daran, dass Speicherkonten frei sind: Sie zahlen nur für den verwendeten Speicher. Es kostet also nichts extra, sowohl ein Test- als auch ein Produktionsspeicherkonto zu haben. Und dann ändert sich nur die Basisadresse (Name des Speicherkontos).

Sie sind in Bezug auf Verbindungszeichenfolge korrekt: Sie haben nur accountname.blob.core.windows.net/container/object.

1

Sie sollten verschiedene Speicherkonten verwenden. Auf diese Weise können Sie neben der Speicherisolierung auch sicherstellen, dass Sie einen anderen Sicherheitsschutz für den Zugriff auf Ihre Entwicklungsumgebung als auf Ihre Produktionsumgebung haben.