分布式数据库系统---商旅预定系统的实现(8)

来源:互联网 发布:audino单片机书籍 编辑:程序博客网 时间:2024/05/14 04:55

事务管理器设计

        在此模块的设计主要完成的目标为:原子操作的规范约定,事务的存储,事务的处理过程以及各个事务之间协调。此模块涉及最多的方法就是枚举法,通过枚举法把针对每一个关于数据表的操作单独列出来并进行统一编号,约定成一个规范,当有用户需要某些操作时候只需要按照一定的约定,列出编号,传递适宜的参数即可等待总站回复的信息。

总体结构设计

        在此次设计中我们需要用的一个关键的设计模式-----单例模式,在数据集合建设中我们也需要单例模式,无论多少客户过来连接服务器并且实例化操作,存储在服务器的接口实现类只实例化一次,保证数据的唯一性,这样别人更改过的数据才会具有全局性。

        在GlobalService中实现的是对事务的处理,这个方法接受一个事务的请求,并且执行事务的操作,最后返回客户需要的结果。由于GlobalService是针对一个事务进行处理的,所以在服务器端需要设置成singCall,即每次有人请求的时候都需要给其一个新的实例化对象,保证自己的操作不冲突。

请求模式的示例图

       在客户实例化了自己GlobalService之后,每个客户端就可以组装自己的事务实体,GlobaService会在适当的时候帮你执行。在实际编码的时候,客户主要还是与QueueService打交道。

请求模式与服务器的关系

 

原创粉丝点击