Provedení funkce Azure při vytvoření objektu blob
Představte si, že jste fotograf a máte web, který zobrazuje vaše fotky dne. Protože máte spoustu práce, nemáte konzistentní plán nahrávání, ale chcete mít možnost upozornit vaše fanoušky, když nahrajete nový obrázek. Rozhodnete se vytvořit funkci Azure, která při každém nahrání obrázku do kontejneru objektů blob služby Azure Storage automaticky odešle tweet.
Tady se dozvíte, jak vytvořit trigger objektu blob a dát mu pokyn, aby monitoroval konkrétní umístění v kontejneru objektů blob služby Azure Storage.
Co je Azure Storage?
Azure Storage je řešení cloudového úložiště od Microsoftu, které podporuje všechny typy dat, včetně objektů blob, front a NoSQL. Cílem služby Azure Storage je poskytovat úložiště dat, které je:
- Vysoce dostupné
- Zabezpečení
- Škálovatelné
- Spravované
Službou Azure Storage se ale nebudeme moc zabývat. Použijeme ji jenom k vytvoření objektů blob, které budou aktivovat spuštění naší funkce.
Co je úložiště objektů blob v Azure?
Azure Blob Storage je řešení úložiště objektů, které je navržené k ukládání velkých objemů nestrukturovaných dat.
Úložiště objektů blob v Azure je například skvělé pro následující úlohy:
- Ukládání souborů
- Poskytování souborů
- Streamování videa a zvuku
- Protokolování dat
Existují tři typy objektů blob: objekty blob bloku, doplňovací objekty blob a objekty blob stránky. Nejběžnějším typem jsou objekty blob bloku. Umožňují efektivní ukládání textu a binárních dat. Doplňovací objekty blob jsou podobné jako objekty blob bloku, ale jsou navržené spíš pro operace přidávání, jako je vytvoření souboru protokolu, který se neustále aktualizuje. Konečně objekty blob stránky jsou tvořené stránkami a jsou navržené pro časté operace náhodného čtení nebo zápisu.
Co je trigger objektu blob?
Trigger objektu blob je trigger, který spustí funkci při nahrávání nebo aktualizaci souboru v Úložišti objektů blob v Azure. Funkce pravidelně kontroluje změny v kontejneru úložiště, což může vést k určité latenci. Existují způsoby, jak tuto latenci snížit při aktivaci kontejnerů objektů blob.
Pokud chcete vytvořit trigger objektu blob, vytvoříte účet služby Azure Storage a zadáte umístění, které tento trigger monitoruje.
Jak vytvořit trigger objektu blob
Stejně jako u ostatních triggerů, které jsme zatím viděli, můžete na webu Azure Portal vytvořit trigger objektu blob. Uvnitř vaší funkce Azure v seznamu předdefinovaných typů triggerů vyberte Trigger objektu blob. Potom zadejte logiku, kterou chcete spustit při vytvoření nebo aktualizaci objektu blob.
Jedním z nastavení, které je důležité pochopit, je cesta. Cesta říká triggeru objektu blob, který kontejner objektů blob má monitorovat, aby zjistil, jestli se objekt blob nahraje nebo aktualizuje. Ve výchozím nastavení má Cesta tuto hodnotu:
samples-workitems/{name}
Rozdělme si teď tuto hodnotu na dvě části: samples-workitems a {name}. První část, samples-workitems, představuje kontejner objektů blob, který tento trigger monitoruje. Druhá část, {name}, určuje, že vyvolání příslušné funkce aktivační událostí způsobí libovolný typ souboru. Tato funkce se vyvolá, protože neexistuje žádný filtr. Tento trigger bychom například mohli nastavit tak, aby vyvolal příslušnou funkci jenom při přidání souboru PNG, a to pomocí syntaxe jako:
samples-workitems/{name}.png
Poslední významnou částí informací pro tento koncept je název textu. Text name reprezentuje parametr ve vaší funkci Azure, který přijímá název přidaného souboru. Pokud například nahrajeme soubor s názvem resume.txt, funkce Azure přijme tuto hodnotu jako řetězec, a to prostřednictvím parametru nazvaného name.
Trigger objektu blob vyvolá funkci Azure, jakmile zjistí aktivitu v konkrétním umístění vašeho účtu služby Azure Storage. Umístění, které se má monitorovat, zadáte úpravou hodnoty Cesta na webu Azure Portal.