
数据层独立为RPC的可行性
如果有多个应用程序调用相同的模型数据,并且每个应用程序都需要实现数据访问层方法,那么这会导致大量重复代码。因此,一个想法是将这部分代码独立为RPC,以便模型声明和方法只需要实现一次,而各个应用程序可以通过调用RPC来实现数据读写。
可行性分析
理论上,这种做法是可行的,因为RPC可以提供数据访问抽象层。然而,在实际应用中,还有其他因素需要考虑:
同一语言和数据库
如果所有应用程序使用相同的编程语言和数据库,那么将数据层作为包引入到各个项目中可能会更方便。这样可以避免RPC的复杂性,并且更容易维护。
控制数据访问
基于jsp+javabean+mysql三层结构的动态购物网站。网站用户接口(即界面)由jsp完成,数据和逻辑处理由beans完成,数据储存由mysql完成。因为beans独立负责处理整个网站的绝大部分数据,所以整个网站的负载量和速度都将大大提高。而且jsp的特性是一次运行,永远储留内存(包括bean在内),所以基于这种语言和结构开发的购物系统的优势是其它语言没法比尔的。更重要的是,jsp+bea
如果需要控制不同应用程序接收的数据,那么RPC可以用来强制执行访问控制规则。RPC可以充当中间层,在应用程序和数据库之间应用过滤器和权限。
数据库隔离
如果底层数据库不能完全公开给应用程序,那么可以考虑将数据层独立为RPC。这样,应用程序只能通过RPC访问数据库,而数据库管理员可以专注于数据库管理。
具体场景举措
以下是如何使用RPC作为数据层的具体步骤:
- 设计RPC接口,定义数据访问方法。
- 实现RPC服务,负责处理传入的请求并执行数据库操作。
- 在各个应用程序中,通过RPC客户端调用RPC服务。
需要注意的是,实施RPC需要额外的基础设施,包括RPC框架、服务部署和网络配置。









