嗨我已經創建了一個帶有輔助角色的新天藍色項目,並且已經注意到了一個類WorkerRole.cs。我試圖研究它的目的是什麼,但是我找不到直接的答案。WorkerRole.cs它的目的是什麼
回答
WorkerRole.cs的目標是爲您提供一個入口點,以便在Worker Role實例啓動時執行「something」。這可能是一個你開始的命令行應用程序,或者一個WCF服務,或MySQL,......任何你想要的。
請注意,您需要編寫代碼以保持實例處於活動狀態。如果你不這樣做,它將在Run方法完成時重新啓動。看看以下問題以瞭解更多信息:Using Thread.Sleep or Timer in Azure worker role in .NET?
這裏是東西,你可以用它來了解Windows Azure的Worker角色:
- 的Windows Azure是平臺即服務,你會得到運行應用程序在一個專用的虛擬機(除具有超小的情況下)
爲Windows Azure應用程序架構支持3種不同類型的所謂的Web角色,工作者角色和VM角色的應用,
2.1。 Web角色被視爲一個應用程序,其中IIS已預先配置好並可供您的應用程序使用。在大多數情況下,它是一個基於Web的應用程序,但它可能不會,如果你願意,但IIS將永遠在那裏。使用IIS,您可以運行ASP.NET應用程序或node.js應用程序,您可以選擇決定您想要的應用程序類型。
2.2。 Worker角色被認爲是一個不需要IIS的應用程序,無論您希望在Worker角色,C#,Java,PHP,Python還是其他任何應用程序上運行,都由您決定。它主要用於開源Web應用程序或執行後端操作的應用程序,不需要Web前端。
2.3 VM角色位於BETA中,用於在用戶部署的自定義VHD上運行。我們會認爲這是在下面的解釋。
所有這些角色實際上是一個庫,意味着它們被編譯爲DLL,當它們在Windows Azure上運行時,它們實際上需要主機進程才能運行。對於Web角色,主機進程是WaWebHost.exe或WaWebIIS.exe,對於WorkerRole,主機進程是WaWorkerHost.exe。
當這些主機進程在Windows Azure中啓動時,它們會查找文件調用E:__ entrypoint.txt,它提供角色DLL名稱和位置,以便主機進程以及查找並加載它。
這些Web和Worker角色類是從RoleEntryPoint基類,它擴展所需的所有功能的web和輔助角色當您使用一個Web或輔助角色中的Windows Azure環境
運行導出, Azure SDK模板,您將獲得這些基本代碼文件,Web和Worker角色類可以實現所需的功能。對於工作者角色,WorkerRole.cs中定義的調用WorkerRole以及Web角色中的WebRole.cs。
如果您決定添加特定於Windows Azure Runtime的代碼(即配置或您要在此處添加的某些設置,因爲當角色將通過主機進程啓動時,您在WebRole.cs或WorkerRole.cs中添加的代碼將會在Windows Azure運行時上下文中執行。
- 1. Javascript「窗口」:它的目的是什麼?它有什麼作用?
- 2. 什麼是access_token,什麼是使用目的或它用於什麼目的?
- 3. 什麼是MSBuild的,它的目的
- 4. 什麼是xcscheme文件?它的目的是什麼?
- 5. 這些IIS綁定是什麼?它們的目的是什麼?
- 6. 什麼是JAF?它的目的是什麼?
- 7. Drupal 8 - 什麼是PrivateTempStoreFactory,它的目的是什麼?
- 8. 內部類。它的目的是什麼?
- 9. ASP.NET Web API:它的目標是什麼?
- 10. 「::」的目的是什麼?它爲什麼有用?
- 11. Scala中的有序性[A]的含義是什麼?它的目的是什麼?
- 12. Xcode項目中的podfile.lock是什麼,它爲什麼被使用?
- 13. 什麼是* .dll.s文件,它們用於什麼目的?
- 14. CakePHP測試套件是做什麼的?它的目的是什麼?
- 15. 這個線程環境結構是做什麼的?它的目的是什麼?
- 16. 是什麼@Transaction註釋Spring MVC中,什麼是它的主要目的
- 17. 什麼是MySql工作臺以及我們使用它的目的是什麼?
- 18. Mandrill應用程序 - 它是什麼,它的API key是什麼
- 19. 如果它總是=(0,0),view.bound.origin的目的是什麼?
- 20. Python的__loader__,它是什麼?
- 21. in()...它是做什麼的?
- 22. 什麼是python中的類,它做什麼,它爲什麼需要它?
- 23. 什麼是IOR文件,它是做什麼的,它是如何工作的?
- 24. Promise.Resolve的目的是什麼?
- 25. Function.const的目的是什麼?
- 26. 包的目的是什麼
- 27. sun.jvm.hotspot.HelloWorld的目的是什麼?
- 28. ApplicationBuilder.Properties的目的是什麼?
- 29. NSNotification的目的是什麼
- 30. `Data.Proxy`的目的是什麼?
要擴大一點,我建議你花一點時間學習RoleEntryPoint類。這是從Defrag WorkerRole.cs文件中繼承的。我在一段時間後寫了一篇博客文章:http://brentdacodemonkey.wordpress.com/2011/09/24/leveraging-the-roleentrypoint-year-of-azure-week-12/ – BrentDaCodeMonkey