我已经阅读了一些关于创建无状态网站的书籍,我已经阅读了一些关于有状态客户端应用程序的内容,但是当你必须将两者结合起来时,会出现很多复杂性。我们有一个Flex应用程序需要通过.NET服务将数据保存到数据库。需要注意的是: - 并发(乐观/悲观) - 性能:Flex需要加载大量数据,因此经常需要延迟加载。 - 您是否使用Dto在服务器和客户端之间传输数据?如何解决客户端 - 服务器应用程序中的状态无状态?
我会告诉你我们产品的历史。我们从一开始就使用SubSonic作为o/r映射器。 SubSonic对象转换为我们写的dto,这些dto被转移到客户端。客户端的dto被转换为域模型。如果客户端需要保存域模型对象,则将其转换回dto并发送到服务器。服务器端将dto转换为亚音速对象并保存到数据库。
现在,前段时间,我们需要.NET服务器端的域模型......所以现在我们有三个模型在服务器端,亚音速模型,dto模型和领域模型。 dto模型更简单,更像数据库,领域模型有更多的逻辑。它变得复杂......我们现在必须将AS3域模型代码与C#域模型代码同步。如果我们可以再做一次(花时间重构),我认为我们不会再使用dto,而是在客户端和服务器之间传输域模型。问题是如果这是现实的。 Dto是简单的物体,非常容易转移。领域模型对象可能非常复杂。
是否有关于如何为这些类型的应用程序创建架构的书籍?有很多经验的人写的书吗?你有这方面的经验吗?
伟大的信息,thx。我们使用延迟加载。对象合并似乎是一个有趣的想法,但要实现它... MarshalByrefObject也很有趣,但这确实是一个性能噩梦。我们经常使用客户端的保存按钮。它有优点和缺点......奇怪的是,我无法在这个复杂的问题上找到很多信息。谢谢! – 2009-11-02 22:17:08