SOA服务状态

时间:2013-06-12 21:51:51

标签: service soa stateless

我对SOA中的服务状态(应该是无状态的)有疑问:

我有一个服务,在客户请求后生成结果。此结果非常大,因此客户端延迟加载它以提供快速可视化。 结果数据必须缓存到某个地方才能用于延迟加载过程。

那么,这个结果是否可以被视为延迟加载支持服务的“状态”?

如果SOA服务必须是无状态的,我应该使用哪种SOA模式来实现这种情况?

非常感谢!

1 个答案:

答案 0 :(得分:0)

假设场景包含一个从数据库读取数据并允许用户通过这些数据导航(前进和后退)的过程,解决方案是在持久层中实现分页查询机制。

分页查询可以用不同的方式实现,最可扩展的是可重复的查询数据库,因为用户页面通过结果。

此解决方案的一个缺点是,由于数据库可以在查询执行之间进行更改,因此用户可以看到数据的不一致视图。

您可以直接使用JDBC实现(如果您使用的是Java),但是Hibernate等几个ORM框架可以帮助实现这种机制。