日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【EasyNetQ】- 使用Future Publish调度事件

發(fā)布時(shí)間:2023/11/30 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【EasyNetQ】- 使用Future Publish调度事件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

許多業(yè)務(wù)流程要求在將來某個(gè)日期安排事件。例如,在與客戶進(jìn)行初次銷售聯(lián)系后,我們可能希望在將來的某個(gè)時(shí)間安排跟進(jìn)電話。EasyNetQ可以通過其Future Publish功能幫助您實(shí)現(xiàn)此功能。例如,這里我們使用FuturePublish擴(kuò)展方法來安排未來一個(gè)月的后續(xù)銷售電話。請注意,FuturePublish使用UTC時(shí)間。

var followUpCallMessage = new FollowUpCallMessage( .. ); bus.FuturePublish(DateTime.UtcNow.AddMonths(3), followUpCallMessage);

?

三個(gè)月后,EasyNetQ將發(fā)布消息,FollowUpCallMessage的任何訂閱者都將收到原始消息的副本。

FuturePublish要求EasyNetQ.Scheduler服務(wù)正在運(yùn)行。

它是如何工作的?

當(dāng)您調(diào)用bus.FuturePublish(publishDate,message)時(shí),EasyNetQ將您的消息包裝在系統(tǒng)消息“ScheduleMe”中并將其發(fā)布到RabbitMQ。調(diào)度程序服務(wù)訂閱此消息。收到ScheduleMe消息時(shí),它會將其存儲在本地?cái)?shù)據(jù)庫中。調(diào)度程序服務(wù)輪詢其數(shù)據(jù)庫以查找計(jì)劃日期到期的消息,當(dāng)它找到任何到期消息時(shí),它會從ScheduleMe消息中解包原始消息并將其發(fā)布到總線。

安裝調(diào)度程序服務(wù)

  • 在SQL Server中,創(chuàng)建一個(gè)新的數(shù)據(jù)庫EasyNetQ.Scheduler

  • 獲取EasyNetQ的源代碼

    git clone?git@github.com?:mikehadlow/EasyNetQ.git

  • 在Visual Studio中打開EasyNetQ.2012解決方案。在DatabaseScripts - > EasyNetQ.Scheduler文件夾中,您將找到許多SQL腳本。在EasyNetQ.Scheduler數(shù)據(jù)庫中打開并運(yùn)行它們。您將需要首先運(yùn)行CreateWorkTables.sql,其他是存儲過程腳本,并且可以按任何順序運(yùn)行。

  • 構(gòu)建解決方案。

  • 找到\ Source \ EasyNetQ.Scheduler \ bin \ Debug并將內(nèi)容復(fù)制到您選擇的部署文件夾中。

  • 在文本編輯器中打開EasyNetQ.Scheduler.exe.config并將'rabbit'和'scheduleDb'連接字符串分別更改為指向RabbitMQ代理和SQL Server實(shí)例。

  • 打開控制臺窗口并更改部署EasyNetQ.Scheduler的文件夾的路徑。

  • 運(yùn)行以下命令將EasyNetQ.Scheduler安裝為Windows服務(wù):

    EasyNetQ.Scheduler.exe install

    ?

    Configuration Result: [Success] Name EasyNetQ.Scheduler [Success] ServiceName EasyNetQ.Scheduler Topshelf v3.1.106.0, .NET Framework v4.0.30319.18051Running a transacted installation.Beginning the Install phase of the installation. Installing EasyNetQ.Scheduler service Installing service EasyNetQ.Scheduler... Service EasyNetQ.Scheduler has been successfully installed. Creating EventLog source EasyNetQ.Scheduler in log Application...The Install phase completed successfully, and the Commit phase is beginning.The Commit phase completed successfully.The transacted install has completed.

    ?

  • 您現(xiàn)在應(yīng)該可以調(diào)用FuturePublish并查看在指定時(shí)間顯示的消息。

    要卸載EasyNetQ.Scheduler,請運(yùn)行:

    EasyNetQ.Scheduler.exe uninstall

    ?

    ?

    轉(zhuǎn)載于:https://www.cnblogs.com/wangwust/p/9437486.html

    總結(jié)

    以上是生活随笔為你收集整理的【EasyNetQ】- 使用Future Publish调度事件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。