- 论坛徽章:
- 0
|
小弟搭建一套邮件系统,用 openldap(bdb backend) 存储一些账户信息。对openldap是初学乍练,摸着石头过河。系统搭建起来,正常运行了一段时间。
这几天用户数量突然增加,目前用户量在15000左右
发现ldap查询速度出现问题,变得越来越慢,而且是慢慢地变慢。。
于是,stop openldap,并且db_recover ldap_dir/var/openldap-data/
然后,start openldap
速度恢复正常,但是慢慢又会变慢,而且变慢的速度也越来越快
实在不明白为什么会慢慢的变慢
无奈之下,只能每15分钟 stop -〉 db_recover -〉 start 一次
通过观察发现,slapd进程占用内存从 3M左右增长到 10M上下时 速度就变得很慢了。或许跟cache有关系,但是不能确定。
实在不知道什么原因造成这种情况,请各位帮忙。
我的目录结构大致如下:
dn: dc=trial,dc=com
dn: ou=mailaccount,dc=trial,dc=com
dn: emailuid=aa,ou=mailaccount,dc=trial,dc=com
emailuid: aa
emailpas: xxxxx
dn: emailuid=bb,ou=mailaccount,dc=trial,dc=com
emailuid: bb
emailpas: xxxxx
..........................................
..........................................
slapd.conf中对emailuid做了索引:
index objectClass eq
index emailAddr eq
查询代码是c实现,观察日志也看不出什么异常:
slapd[10829]: conn=67 fd=10 ACCEPT from IP=127.0.0.1:53551 (IP=0.0.0.0:389)
slapd[10829]: conn=67 op=0 BIND dn="cn=admin,dc=trial,dc=com" method=128
slapd[10829]: conn=67 op=0 BIND dn="cn=admin,dc=trial,dc=com" mech=simple ssf=0
slapd[10829]: conn=67 op=0 RESULT tag=97 err=0 text=
slapd[10829]: conn=67 op=1 SRCH base="ou=mailaccount,dc=trial,dc=com" scope=1 filter="(emailuid=mario)"
slapd[10829]: conn=67 op=1 SRCH attr=emailpas
无限郁闷啊~~~~~~ |
|