Ich habe eine Azure WorkerRole, die ohne ersichtlichen Grund stoppt (keine Ausnahmen werden ausgelöst). Es stoppt jedes Mal an der gleichen Stelle, aber der Code führt einfach einen Prozess aus, der ungefähr 20 Sekunden dauert. Kann jemand postulieren, warum dies geschieht? Gibt es ein Zeitlimit für die OnStart() -Methode, die mir nicht bekannt ist?Azure WorkerRole Stoppen sofort nach dem Start
Hier ist eine Aufschlüsselung dessen, was in meiner Arbeiter Rolle geschieht:
OnStart() -> Diagnose
Run konfiguriert() ->
- Ein Timer eingestellt ist (60) bis auslösen, das Fleisch der Anwendung
- Ein neuer Thread einige Standardeinstellungen gestartet laden (dauert ca. 30 Sekunden)
Der Code kommt nie zum Fleisch von # 1.
Für # 1 oben habe ich es mit und ohne Timer (kein Unterschied) versucht. Für # 2 oben habe ich es mit und ohne einen neuen Thread versucht (kein Unterschied).
Hier ist die Debug-Ausgabe für meine Arbeiter Rolle:
WaWorkerHost.exe Information: 0 : deployment(108).ApiAzure.Workers.0 - Workers.OnStart()
Microsoft.WindowsAzure.ServiceRuntime Information: 202 : Role entrypoint . COMPLETED OnStart()
The thread 'Role Initialization Thread' (0x29fc) has exited with code 0 (0x0).
Microsoft.WindowsAzure.ServiceRuntime Information: 203 : Role entrypoint . CALLING Run()
'WaWorkerHost.exe' (Managed (v4.0.30319)): Loaded 'C:\Users\Jason A. Kiesel\Projects\FS_CITYSOURCED\WorkersAzure\bin\Stage\WorkersAzure.csx\roles\Workers\approot\FreedomSpeaks.Logging.dll', Symbols loaded.
Microsoft.WindowsAzure.ServiceRuntime Warning: 204 : Role entrypoint . COMPLETED Run() ==> ROLE RECYCLING INITIATED
Microsoft.WindowsAzure.ServiceRuntime Information: 503 : Role instance recycling is starting
The thread 'Role Start Thread' (0x1fa0) has exited with code 0 (0x0).
The thread '<No Name>' (0x1624) has exited with code 0 (0x0).
'WaWorkerHost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll'
'WaWorkerHost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.Transactions\v4.0_4.0.0.0__b77a5c561934e089\System.Transactions.dll'
'WaWorkerHost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll'
'WaWorkerHost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Numerics\v4.0_4.0.0.0__b77a5c561934e089\System.Numerics.dll', Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
Microsoft.WindowsAzure.ServiceRuntime Information: 205 : Role entrypoint . CALLING OnStop()
WaWorkerHost.exe Information: 0 : deployment(108).ApiAzure.Workers.0 - Workers.OnStop()
Microsoft.WindowsAzure.ServiceRuntime Information: 206 : Role entrypoint . COMPLETED OnStop()
The thread 'Role Stop Thread' (0x2dac) has exited with code 0 (0x0).
The program '[12228] WaWorkerHost.exe: Managed (v4.0.30319)' has exited with code -66053 (0xfffefdfb).
Können Sie den Code veröffentlichen? – Igorek
Ich fand heraus, warum die Anwendung abstürzte und eine Reparatur einleitete, aber es ergibt für mich immer noch keinen Sinn, warum die Arbeiterrolle in erster Linie abstürzen würde. Der "config" -Abschnitt der App, der beim Start ausgelöst wurde, hatte eine Methode, die viel Zeit in Anspruch nahm. Ich habe diesen Abschnitt des "config" -Codes verschoben, um bei Bedarf ausgeführt zu werden (lazy loaded). Das schien das Problem zu lösen. – Jason
Wie hast du herausgefunden, warum es zusammenbrach? Ich habe das selbe Problem, aber ohne Ausnahme ist es ziemlich schwer zu debuggen:/ –