2016-09-20 16 views
6

Mam funkcję Azure Functions, która uruchamia spust blob, (więc kiedy obiekt typu blob zostanie dodany do kontenera, powinien wystrzelić). Funkcja nie działa, dopóki nie otworzę aplikacji funkcji w portalu. następnie pobierze wszystkie obiekty BLOB, które zostały dodane i przetwarza je jak zwykle. Dlaczego muszę otworzyć aplikację funkcji w portalu, aby zwolnić moje prace? To prawie tak, jak aplikacja z funkcjami przełącza się w tryb uśpienia, a następnie budzi się, gdy przeglądam. Jak mogę temu zapobiec?Funkcje Azure Wyzwanie kropelkowe nie odpalają, chyba że otworzę aplikację funkcji

tutaj jest mój CRON

{ 
    "bindings": [ 
{ 
    "name": "myBlob", 
    "type": "blobTrigger", 
    "direction": "in", 
    "path": "automated-sql-export", 
    "connection": "Conn" 
} 
], 
"disabled": false 
} 
+0

Prawdopodobny duplikat http://stackoverflow.com/questions/39430932/how-do-i-turn-on-always-on-for-an-azure-function/39431332 –

Odpowiedz

4

Gdy funkcja App jest uruchomiony host dba automatycznie otrzymującego/odpytywania nowych wydarzeń we wszystkich naszych różnych typów wyzwalania (kolejki, koncentratory zdarzeń, bąble, etc.). Jednak niektóre różnice wynikają z warstwy, na której się znajdujesz.

W naszej Dynamic SKU s mamy usługę zewnętrzną do aplikacji Function, która jest odpowiedzialna za monitorowanie pracy i zapewnienie działania aplikacji Function, gdy jest musi być. Gdy nie ma pracy do wykonania (na przykład brak komunikatów w kolejce, brak nowych obiektów blob itp.) Aplikacja funkcjonalna przechodzi w tryb uśpienia. Obowiązkiem służby zewnętrznej jest zapewnienie, że jest ona budzona po przybyciu pracy.

I nasz Klasyczny SKU s (Basic/Standard) tego zewnętrznego monitora nie ma na zdjęciu. Aplikacja Function musi być uruchomiona w trybie Always On, aby utrzymać ją przy życiu. To ustawienie powinno być automatycznie skonfigurowane jako Włączone podczas tworzenia aplikacji Function w klasycznej warstwie.

Po wyjaśnieniu tego wszystkiego, jeśli używasz dynamicznej jednostki SKU, rzeczy powinny działać "po prostu". Jeśli nie, zaloguj się błąd here. Jeśli używasz klasycznego kodu SKU, upewnij się, że masz włączoną funkcję Zawsze włączone. Jest to częsty problem, z którym mają do czynienia ludzie.

+1

Używam dynamicznego planu, ale wyjaśnienie miło jest wiedzieć, jak to wszystko ma działać. Poszedłem do podanego linku i zobaczyłem, że został już utworzony błąd dla tego właśnie problemu. Więc pójdę za tym wątkiem. Dzięki! – Bullsfan127

+1

https://github.com/Azure/azure-webjobs-sdk-script/issues/691 – Bullsfan127

+0

Po prostu do tego doszedłem, no cóż, to bardzo dziwne. Chyba będziemy musieli poczekać na poprawkę. – 4c74356b41