时间:2010-07-23 16:05:50

标签: ruby-on-rails ruby ldap

1 个答案:

答案 0 :(得分:8)

需要注意的一件非常重要的事情是,您永远不会使用方法调用的结果。这意味着您应该将:return_result => false传递给ldap.search

ldap.search(:base => base_dn, :filter => filter, :return_result => false ) do |entry|

从文档:“当:return_result => false,#search将只返回一个布尔值,以指示操作是否成功。这可以提高非常大的结果集的性能,因为库可以丢弃每个在块处理后从内存中输入。“

换句话说,如果你不使用这个标志,所有条目都将存储在内存中,即使你不需要它们!所以,请使用此选项。