-
-
Notifications
You must be signed in to change notification settings - Fork 362
ISerializer
This one is responsible for serializing and deserializing messages.
It should be capable of transforming a Message
instance, containing a headers dictionary and a message in the form of a .NET object, into a TransportMessage
, which is just a headers dictionary and a byte[]
.
The reverse process consists of transforming a received TransportMessage
back into the same Message
instance as before.
Even though message serialization in some ways can be seen as a trivial process, it has a pretty big impact on how your system can be operated and which features are available. Take for instance the following stuff:
- big object graphs - how much data can you send/receive, given the serialized format and the transport you're using?
- inheritance hierarchies - can you serialize subclasses and deserialize them again?
- versioning - how does your serializer handle missing fields in destination class or missing fields in serialized format?
and there's probably more...
Basic stuff
- Home
- Introduction
- Getting started
- Different bus modes
- How does rebus compare to other .net service buses?
- 3rd party extensions
- Rebus versions
Configuration
Scenarios
Areas
- Logging
- Routing
- Serialization
- Pub sub messaging
- Process managers
- Message context
- Data bus
- Correlation ids
- Container adapters
- Automatic retries and error handling
- Message dispatch
- Thread safety and instance policies
- Timeouts
- Timeout manager
- Transactions
- Delivery guarantees
- Idempotence
- Unit of work
- Workers and parallelism
- Wire level format of messages
- Handler pipeline
- Polymorphic message dispatch
- Persistence ignorance
- Saga parallelism
- Transport message forwarding
- Testing
- Outbox
- Startup/shutdown
Transports (not a full list)
Customization
- Extensibility
- Auto flowing user context extensibility example
- Back off strategy
- Message compression and encryption
- Fail fast on certain exception types
Pipelines
- Log message pipelines
- Incoming messages pipeline
- Incoming step context
- Outgoing messages pipeline
- Outgoing step context
Prominent application services