I need to create a service that will allow a client to send a message containing a large amount of data and I'm not sure how to structure the API.
Let's say a client wants to save a new object which contains a variable number of related objects. For instance, an Order, which contains several line items contained in OrderDetail objects. An Order may have over a 1000 OrderDetail objects related to it, each of which may contain 20-40KB of data. The client needs to know that the service has received the entire order.
I would like to explore using ServiceStack to create this. Creating a high traffic service is not something I'm very familiar with. We would typically use WCF, and it seems like people just recommend increasing the message size limit to accommodate a large message. I'm not sure if that's the best strategy with WCF, let alone ServiceStack.
Would it be better to send each OrderDetail as it's own message? I would be concerned about keeping the integrity of the entire Order going this route. Or should I just keep this as a single large message 20-40MB of data? Or should I try to stream it as a file?