newcomer:Eric Newcomer谈RESTFul事务和Web Service事务的区别

        OSGi联盟企业专家组主席IONA Technologies前CTOEric Newcomer在文章中回答了这个问题:“RESTFul事务和Web Service事务区别是什么?”

        Eric将事务分为本地事务和全局事务而 2者处理本地事务方式并无 2致所以文中不予讨论

        所以这个问题实际上和全局事务有关——涉及多个数据库(往往是在区别机器上)——在这种情况下处理方式便有了巨大差异

        他提醒说Web Service是门技术而REST是种架构方案所以这种比较可能不会很精确不过他还是列举出了 2者许多差异从事务实现方式到底层架构区别设想尤其是在对共享数据或是共享状态分布式访问方面

        Web Service事务([……]WS-Transactions[……])是跟既有TP [Transaction Processing] 基础架构兼容而REST方式则是从Web中演变而来

        他归纳出了这两种事务的间关键差异来源:

        1. 在多个参和系统中如何协调事务

        为了和现有共享状态机制相兼容Web Service事务会把整个事务上下文传播到全局事务所有参和者中所以每个参和者对共享状态访问都可以跟其他参和者进行协调而基于REST事 务是假定在任个给定时刻某个全局事务中只有方可以访问共享状态类似于令牌传递机制……他们只需要知道当轮到自己时候——收到共享状态以后 ——必须做哪些事情就够了

        2. 系统如何处理事务失败和恢复

        RESTful系统需要截然区别设计来处理失败和恢复它无法做到自动化处理所以在应用层上要做额外设计和编码这种权衡所带来结果是系统可以和Web设想更完美匹配

TAG: WebService

Tags:  newcomer100 carrienewcomer newcomer.its.csu newcomer

延伸阅读

最新评论

发表评论