池化LDAP连接的故障转移

时间:2016-03-03 20:07:29

标签: java spring ldap

我正在使用Spring LDAP应用程序,我没有完成LDAP工作的设置,但现在我需要添加故障转移功能。

我们为ContextSource提供了两个空格分隔的URL:

 String theseUrls = primaryLdapUrl + " " + secondaryLdapUrl;
 environment.put("java.naming.provider.url", theseUrls);

 ilc = new InitialLdapContext(environment, null);

如果主URL正常运行,则它会连接到该URL。如果没有,它连接到二级就好了。然后汇集连接,但是我无法弄清楚确切的机制。但是,实际上,如果已建立的连接断开,那么整个应用程序就会陷入困境。

有没有办法禁用池,或为它创建一个短暂的超时?我做了一些研究,但找不到对我有用的精确机制(包括尝试调用setPooled(false))。理想情况下,仅在第一个服务器关闭时才查询辅助服务器。当第一个恢复时,它将返回到那个。

注意:此网址(http://forum.spring.io/forum/spring-projects/data/ldap/34643-switching-ldap-contexts-for-failover)给了我很多想法,但我无法正常工作。

0 个答案:

没有答案