[英]How do you use Java connection pooling for MySQL X DevAPI?
我一直在探索Spring下一版本中对非阻塞异步反应式Web应用程序的支持。 令我惊讶的是,大多数应用程序倾向于与关系数据库进行交互。 因此,只要JDBC是一个同步阻止API,并且所有主要的关系数据库甚至都缺少专有的异步驱动程序,那么整个反应式事物可能仍会超前。
然后,几乎是偶然地,我发现MySQL的最新版本支持称为“ X DevAPI ”的东西,该东西包含在当前的MySQL JDBC驱动程序中(尽管它是JDBC规范之外的附加类)。
我还没有听说过有关X DevAPI的夸夸其谈,而且几乎没有什么文档似乎强调了将MongoDB替换为文档存储的用例。 但是,该库还具有以非阻塞异步方式访问MySQL关系数据库的功能。
不幸的是,唯一的文档示例是基本的“ Hello World”用例。 static void main
方法从头开始建立一个新的MySQL X会话,并在最后将其关闭。
我很好奇这个新的API是否已准备好用于更实际的使用。 具体来说,是否有对连接池的支持? 是通过第三方库,还是通过没有充分记录的东西对MySQL库而言是本地的?
还是我可能会在这里遗漏一些基本知识,而根本不需要连接池,因为X DevAPI是在底层进行多路复用的?
根据文档 ,将有两种类型的会话:
尽管当前版本的MySQL X支持连接到单个节点的XSession,但是以后的版本可能会将其扩展为涵盖多个节点。 使用XSession的应用程序已准备好进行缩放:更改一些连接参数,并通过更改代码来完成。
使用NodeSession的应用程序建立到各个节点的连接。 为了使用NodeSession扩展应用程序,您必须尽可能地用XSession代替NodeSession的使用。
X协议需要安装X插件,因此您可以使用Java中的X DevApi检查示例存储库中的docker使用情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.