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