0

IPC に WCF を使用しています。

私は非常に厳密なパフォーマンス ニーズを持っているので、操作全体は数ミリ秒しかかかりません。(私が言うには3〜4ミリ秒でブロックされます...)ただし、WCFのオープンには約10ミリ秒かかります。実行されたいくつかのパフォーマンス テストを調べたところ、はるかに優れた結果が得られることがわかりましたが、そうすることができませんでした。開いている接続を保存することはできますが、本当に避けたいです。

私はすでにリリースでコンパイルし、セキュリティなどを削除しようとしました(それはほんの少しだけそれを下げただけです...)

これは私の構成です(コードで定義されています):

NetTcpBinding tcpBinding = new NetTcpBinding(SecurityMode.Message, false)
        {
            SendTimeout = TimeSpan.FromSeconds(1),
            ReceiveTimeout = TimeSpan.FromSeconds(1),
            OpenTimeout = TimeSpan.FromMilliseconds(500),// FromMinutes(1),
            TransactionFlow = false,
            TransferMode = TransferMode.Buffered,
            TransactionProtocol = TransactionProtocol.OleTransactions,
            HostNameComparisonMode = HostNameComparisonMode.StrongWildcard,
            ListenBacklog = ushort.MaxValue,
            MaxBufferPoolSize = 20 * 1024 * 1024,
            MaxBufferSize = 20 * 1024 * 1024,
            MaxConnections = ushort.MaxValue,
            MaxReceivedMessageSize = 20 * 1024 * 1024,
        };

        // Windows authentication
        tcpBinding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows;
        tcpBinding.Security.Transport.ProtectionLevel = System.Net.Security.ProtectionLevel.EncryptAndSign;

        return tcpBinding;

とにかく、この構成を改善することを提案できますか? ありがとう。

4

0 に答える 0