顯示具有 WCF 標籤的文章。 顯示所有文章
顯示具有 WCF 標籤的文章。 顯示所有文章

2012年3月13日 星期二

Java call WCF service over SSL with UserName Credentials using NetBeans

過程中,主要有幾個問題:
一、WCF bindings設定的影響
二、SSL資料傳輸在Java環境中的設定
三、JDK版本的影響
四、Java FQDN造成的問題
五、NetBeans使用Web Service的方法和修改部份程式碼

一、WCF Binding設定
WCF服務繫結(binding)
  • BasicHttpBinding:一種 HTTP 通訊協定繫結,可用於連線至 Web 服務,並符合 WS-I Basic Profile 規格 (例如,以 ASP.NET Web 服務為基礎的服務)。
  • WSHttpBinding:一種互通的繫結,可用於連線至符合 WS-* 通訊協定的端點。
  • NetNamedPipeBinding:使用 .NET Framework 以連線至同一部電腦上的其他 WCF 端點。
  • NetMsmqBinding:使用 .NET Framework 以建立與其他 WCF 端點的佇列訊息連線。
所以要在Java環境下使用Web service時,WCF要在設定時要加入BasicHttpBinding, security mode 則是選擇TransportWithMessageCredential
注意:SecurityMode 設定為"TransportWithMessageCredential"時,會忽略transport項目的ClientCredentialType。

2011年10月28日 星期五

改善WCF效能

最近用到WCF Host in IIS,出現了效能瓶頸,原本以為是IIS所導致的,後來看了相關的文章後,才發現,其實透過WCF設定,就可以解決

在WCF中,可以設定連線數的部分,
在WCF的Behavior裡設定,主要有三個參數:
(1)MaxConcurrentSessions (WCF 3.0中,預設值10)
(2)MaxConcurrentCalls (WCF 3.0中,預設值16)
(3)MaxConcurrentInstances (WCF 3.0中,預設值26)

在WCF 3.0中,預設值並沒有針對這三個值做最佳化的計算,
而在WCF 4.0的設計中,改善了這個部份,預設值分別為:
(1)MaxConcurrentSessions: 100 * ProcessorCount
(2)MaxConcurrentCalls: 16 * ProcessorCount
(3)MaxConcurrentInstances: 前兩項的總和 (100*ProcessorCount + 16*ProcessorCount)