Class SyncBinding
Provides synchronous communication pattern based on TCP blocking sockets and Slim serializer
for maximum serialization performance and lowest latency.
This binding is usable for interconnection between Azos-native components on LANs (i.e. server clusters)
in scenarios when low latency is more important than total call invocation throughput
Inheritance
System.Object
SyncBinding
Implements
System.IDisposable
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Assembly: Azos.dll
Syntax
public class SyncBinding : Binding, IDisposable, IDaemon, IDaemonView, IApplicationComponent, INamed, IConfigurable, ILocalizedTimeProvider, IInstrumentable, IExternallyParameterized
Constructors
SyncBinding(IGlueImplementation, String, Provider)
Declaration
public SyncBinding(IGlueImplementation glue, string name = null, Provider provider = null)
Parameters
Fields
DEFAULT_PORT
Declaration
public const int DEFAULT_PORT = 8000
Field Value
Type |
Description |
System.Int32 |
|
DEFAULT_RCV_TIMEOUT
Declaration
public const int DEFAULT_RCV_TIMEOUT = 0
Field Value
Type |
Description |
System.Int32 |
|
DEFAULT_SND_TIMEOUT
Declaration
public const int DEFAULT_SND_TIMEOUT = 0
Field Value
Type |
Description |
System.Int32 |
|
KNOWN_SERIALIZER_TYPES
Declaration
public static readonly TypeRegistry KNOWN_SERIALIZER_TYPES
Field Value
Properties
ClientReceiveBufferSize
Declaration
[Config("client-transport/$rcv-buf-size", 16384)]
public int ClientReceiveBufferSize { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
ClientReceiveTimeout
Declaration
[Config("client-transport/$rcv-timeout", 0)]
public int ClientReceiveTimeout { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
ClientSendBufferSize
Declaration
[Config("client-transport/$snd-buf-size", 16384)]
public int ClientSendBufferSize { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
ClientSendTimeout
Declaration
[Config("client-transport/$snd-timeout", 0)]
public int ClientSendTimeout { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
Declaration
public override string EncodingFormat { get; }
Property Value
Type |
Description |
System.String |
|
Overrides
Override in conjunction with DoEncodeRequest/DoDecodeRsponse
Declaration
public virtual int FrameFormat { get; }
Property Value
Type |
Description |
System.Int32 |
|
MaxMsgSize
Imposes a limit on maximum message size in bytes
Declaration
[Config("$max-msg-size", 524288)]
public int MaxMsgSize { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
OperationFlow
Sync binding is synchronous by definition
Declaration
public override OperationFlow OperationFlow { get; }
Property Value
Overrides
ServerReceiveBufferSize
Declaration
[Config("server-transport/$rcv-buf-size", 16384)]
public int ServerReceiveBufferSize { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
ServerReceiveTimeout
Declaration
[Config("server-transport/$rcv-timeout", 0)]
public int ServerReceiveTimeout { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
ServerSendBufferSize
Declaration
[Config("server-transport/$snd-buf-size", 16384)]
public int ServerSendBufferSize { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
ServerSendTimeout
Declaration
[Config("server-transport/$snd-timeout", 0)]
public int ServerSendTimeout { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
Methods
AreNodesIdentical(Node, Node)
Declaration
public override bool AreNodesIdentical(Node left, Node right)
Parameters
Type |
Name |
Description |
Node |
left |
|
Node |
right |
|
Returns
Type |
Description |
System.Boolean |
|
Overrides
CloseServerEndpoint(ServerEndPoint)
Declaration
protected override void CloseServerEndpoint(ServerEndPoint epoint)
Parameters
Overrides
DoStart()
Declaration
protected override void DoStart()
Overrides
DoWaitForCompleteStop()
Declaration
protected override void DoWaitForCompleteStop()
Overrides
MakeNewClientTransport(ClientEndPoint)
Declaration
protected override ClientTransport MakeNewClientTransport(ClientEndPoint client)
Parameters
Returns
Overrides
OpenServerEndpoint(ServerEndPoint)
Declaration
protected override ServerTransport OpenServerEndpoint(ServerEndPoint epoint)
Parameters
Returns
Overrides
ToIPEndPoint(Node)
Declaration
protected static IPEndPoint ToIPEndPoint(Node node)
Parameters
Type |
Name |
Description |
Node |
node |
|
Returns
Type |
Description |
System.Net.IPEndPoint |
|
Implements
System.IDisposable
Extension Methods