Messaging
Index
- Part I: Messaging architecture
- 1 Overview
- 2 Messaging done right
- 3 Transient message queues
- 4 Producer/consumer with a persistent queue
- 5 Not materialising the persistent queue
- 6 Queued Transactions
- 7 Multiple producer and consumer generalisation of a persistent queue
- 8 Bank transfers without distributed transactions
- 9 Making an on-line purchase
- 10 Preventing double spending without consensus
- 11 ATMs
- 12 Long running transactions (sagas)
- 13 SQL Server Service Broker
- Part II: The original cxMessage transport
- 14 cxMessage library
- 15 MessageWriterSettings
- 16 MessageReaderSettings
- 17 MsgWriter
- 18 MsgReader
- 19 Iocp
- 20 ITcpEndpoint
- 21 ISocketConnectionAcceptor
- 22 TcpClient
- 23 TcpServer
- 24 ITcpMsgHandler
- 25 TcpMsgConnection
- 26 IMessageWriter
- 27 IMessageReader
- 28 IMultiplexedMsgHandler
- 29 MultiplexedMsgConnection
- 30 BufferedMessageWriter
- Part III: The cxMessage2 transport
- 31 cxMessage2 library
- 32 IoContextPool
- 33 TcpSettings
- 34 MessageReaderSettings
- 35 MessageWriterSettings
- 36 TcpMsgSessionSettings
- 37 EProtocol
- 38 EEndPointFailureType
- 39 ESessionFailureType
- 40 ITcpMsgEndPoint
- 41 ITcpMsgSession
- 42 ITcpMsgSessionHandler
- 43 TcpMsgClient
- 44 TcpMsgServer
- 45 TcpMsgSession
- 46 MsgWriteBuffer
- 47 MsgReadBuffer
- 48 WriteMessageResult
- Part IV: Remote method invocation with cxRmi
- 49 cxRmi library
- 50 Interface to define a message protocol
- 51 Issuing calls through the stub
- 52 CreateRmiCaller()
- 53 RmiCaller
- 54 IRmiCallerHandler
- 55 CreateRmiCallee()
- 56 Use of MultiplexedMsgConnection
- 57 Throttling the producer
- 58 cxRmi Performance
- 59 cxRmi Performance Test Code
- 60 Code for performance testing with ZeroC Ice
- Part V: Recording and replaying calls with cxRpc
- 61 cxRpc
- 62 Rpc
- 63 RpcCaller
- 64 RpcCallee
- 65 Stub
- 66 Skeleton
- 67 RPC performance
- Part VI: Implementation notes and supporting material
- 68 cxMessage