ldapjs(使用node-express)client.search很慢

时间:2014-06-23 22:34:00

标签: node.js performance express ldap passport.js

我使用node.js expressjs ldapjs来实现身份验证。

我的要求如下:

  1. 验证用户
  2. 查找用户所属的所有群组名称
  3. 使用已配置的深度级别查找用户组所属的父组名称(大多数时间为3次);这意味着找到用户 - >找到用户的组--->找到群组'父母团体最多三个级别。
  4. 要在节点快捷环境中实现上述功能,我将ldapjs与passportjs一起使用(编写自定义策略以满足我们的要求)。

    我的观察是,每个搜索请求都是大约需要70毫秒,这对于完成我需要完成的所有搜索请求来说非常慢(在身份验证期间需要执行多达60-80个搜索请求)

    我上面实现的是串行请求(我在当前的请求完成后发出下一个请求)。

    在这种情况下,我怎样才能提高性能。我可以查看哪些可用选项?

1 个答案:

答案 0 :(得分:2)

我可以通过并行运行所有搜索请求来显着提高性能,并利用“parallel-searching-end”回调来处理父搜索深度级别。

使用“ async ”节点模块的 async.parallel 方法可以实现上述目标。

感谢所有可能已经研究过的人。