数据库中间件2:关于连接异构数据库的性能问题

关于连接异构数据库的性能问题
数据库中间件的一个作用就是在应用程序和异构数据库中间,充当一个中间人的作用。例如mycat,连接mycat的协议是标准mysql jdbc协议。而mycat在后端连接数据库,可以连接oracle、mysql、db2、pg等。当mycat收到应用程序发来的请求时。会把mysql jdbc协议报文中的sql语句转化为asc||码,mycat用对应的(比如oracle,则用oracle jdbc)协议发到oracle数据库中。当oracle处理返回进,mycat接收到oracle jdbc的ASC||码再转化为mysql jdbc协议报文。返回应用端之后,应用端的jdbc客户端再转化为可识别的asc||格式。在这一个请求与回复的过程中进行了两次转换,四次调用jdbc,一次组包。所以性能肯定是会下降的。而且性能还会下降不少。这就是用性能的下降来换取减少开发成本。如下图所示:
数据库中间件2:关于连接异构数据库的性能问题