Topshelf 建立.net服務整理和安裝步驟
Topshelf 建立.net服務整理和安裝步驟
windowsService和topshelf服務區別請看 → windowsSevice程式和topshelf程式建立服務對比
Topshelf下載地址https://github.com/Topshelf/Topshelf/downloads
官網http://topshelf-project.com/
文件http://docs.topshelf-project.com/en/latest/
1、建立專案
2、新增Topshelf,使用nuget安裝最新的topshelf程式包
3、編寫測試程式碼,直接貼Program類程式碼
using System.Timers; using Topshelf; namespace TopShelfConsoleApplication { public class TownCrier { TopshelfClass topshelfClass = new TopshelfClass(); readonly Timer _timer; public TownCrier() { //設定了一個 1000 毫秒的服務執行間隔 _timer = new Timer(1000) { AutoReset = true }; _timer.Elapsed += new ElapsedEventHandler(topshelfClass.Test); } public void Start() { _timer.Start(); } public void Stop() { _timer.Stop(); } } public class Program { public static void Main() { HostFactory.Run(x => { x.Service<TownCrier>(s => { s.ConstructUsing(name => new TownCrier()); s.WhenStarted(tc => tc.Start()); s.WhenStopped(tc => tc.Stop()); }); x.RunAsLocalSystem(); x.SetDescription("Topshlef服務描述......"); x.SetDisplayName("TopshlefTest"); x.SetServiceName("TopshlefTest"); }); } } }
TopshelfClass處理類
using System; using System.IO; using System.Timers; namespace TopShelfConsoleApplication { public class TopshelfClass { public void Test(object source, ElapsedEventArgs e) { string path = "F:\\TopshelfTest\\TopshelfTest.txt"; FileStream fs = new FileStream(path, FileMode.Append); StreamWriter sw = new StreamWriter(fs); sw.WriteLine(DateTime.Now.ToString()); sw.Close(); fs.Close(); } } }
具體說明請參照官網給的技術解釋文件,我就不在這裡解釋程式碼咯:https://topshelf.readthedocs.org/en/latest/configuration/quickstart.html
我只說明一點:上面程式碼設定為1秒執行一次,在txt檔案追加下時間戳,為了防止本地開發測試的除錯問題,可以設定屬性:
4、釋出部署
a、釋出部署包,自行處理
b、進入cmd命令,進入部署包目錄,找到exe檔案執行install安裝命令,如下圖:
c、檢視本機服務,可見已經安裝成功:
d、安裝n個相同服務使用命令:-instance " test1" install
e、常用命令
install:ConsoleApplication1.exe install start:ConsoleApplication1.exe start ,執行後服務被啟動 stop:ConsoleApplication1.exe stop ,執行後服務被停止 uninstall:ConsoleApplication1.exe uninstall,執行後服務被解除安裝 -instance: ConsoleApplication1.exe -instance " test1" install5、測試服務執行,開啟兩個服務,結果如下:
至此,簡單的topshelf服務使用就完成咯~~~~~
由龐順龍最後編輯於:4年前
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- 使用.NET Core建立Windows服務詳細步驟Windows
- windowsSevice程式和topshelf程式建立服務對比Windows
- 關於使用Topshelf建立服務
- 如何使用Topshelf與.NET泛型主機建立Windows服務泛型Windows
- Linux(CentOS)下.NET,mono環境的安裝步驟整理LinuxCentOSMono
- MHA安裝和部署步驟
- vnc安裝步驟,vnc安裝步驟詳解VNC
- 使用C#建立windows服務續之使用Topshelf優化Windows服務C#Windows優化
- [ 安裝 ] Zeppelin安裝步驟!
- xftp安裝步驟,xftp安裝的2大步驟FTP
- anaconda安裝步驟
- Linux 安裝步驟Linux
- STF 安裝步驟
- Nagios安裝步驟iOS
- 安裝gulp步驟和使用方法
- Topshelf一個用於使用.NET構建Windows服務框架Windows框架
- mysql安裝教程8.0.26 安裝mysql的步驟和方法MySql
- win10怎麼安裝telnet服務_win10新增telnet服務具體步驟Win10
- vnc安裝步驟,如何在Linux(CentOS 7)下vnc安裝步驟VNCLinuxCentOS
- centos 8的特點和安裝步驟CentOS
- aws安裝jenkins步驟Jenkins
- Maya 2023安裝步驟
- Iris 框架安裝步驟框架
- zookeeper安裝部署步驟
- windows安裝cnpm步驟WindowsNPM
- charles的安裝步驟
- Linux安裝Nginx步驟LinuxNginx
- 安裝jdk的步驟JDK
- Sublime Text安裝步驟
- vnc安裝步驟,4個在Linux下vnc的個安裝步驟VNCLinux
- doris編譯和安裝部署詳細步驟編譯
- Scala的安裝以及建立Scala專案的詳細步驟
- 國內Kubernetes安裝步驟
- linux下安裝docker步驟LinuxDocker
- CDH6.2.0安裝步驟
- Android studio的安裝步驟Android
- Linux安裝JDK完整步驟LinuxJDK
- ubuntu 下安裝nginx步驟UbuntuNginx