簡體   English   中英

WCF初始化對.NET Remoting的影響很慢

[英]WCF initialization slow vs .NET Remoting

我正在嘗試將.NEt Remoting應用程序遷移到WCF,現在兩個服務(Remoting和WCF)都在一起生活。 我有一個客戶端同時使用這兩個服務,我注意到在第一次調用WCF服務時,它比第一次調用.NET Remoting服務需要更長的時間。

使用.NET Remoting服務,第一次調用幾乎立即得到響應。

.Nt Remoting第一次呼叫響應時間:不到一秒鍾。

WCF首次呼叫響應時間:約2秒。

我知道要打開WCF連接有一些初始化成本,但是如何加速這個WCF通道喚醒時間?

任何提示?

WCF做的不僅僅是遠程處理。 這項工作需要付出代價。 完全停止。

嘗試在需要之前調用WCF服務。 考慮向服務添加Heartbeat()Init()方法以觸發啟動過程。 如果通過第一次呼叫完成啟動,則后續呼叫不應該有延遲。

如果您可以選擇在AppFabric中托管,那么您可以使用自動啟動功能 ,該功能專門用於在第一次客戶端調用之前初始化應用程序。

自動啟動功能的好處

為服務啟用自動啟動功能時,只要服務所屬的應用程序啟動並且服務從客戶端收到第一個WCF消息,服務就會啟動並運行。 因此,服務會快速處理第一條消息,因為它已經初始化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM