在此先感谢您的帮助。
有没有人看到openfire这个问题?
目前我使用 Openfire Fedora 和 Auth 使用 windows 2003 并且还使用 mysql 作为数据库。当我提出两个客户并互相交谈时,消息之间的时间很慢。有时,发送的东西可能需要 5-15 分钟才能到达此人(在 openfire 服务器上只有两个人)。我使用端口 389 运行了一个 tcp 转储,发现这台机器正在对 ldap 运行数千个查询。当我将它插入wireshark时,我注意到它正在传输整个联系人列表或检查整个联系人列表的状态?
当我在 openfire 本身上运行调试时,我在日志中只看到这条小消息:
2010.06.08 07:01:17 LdapManager: Starting LDAP search...
2010.06.08 07:01:17 LdapManager: ... search finished
2010.06.08 07:01:17 LdapManager: Creating a DirContext in LdapManager.getContext()...
2010.06.08 07:01:17 LdapManager: Created hashtable with context values, attempting to create context...
2010.06.08 07:01:17 LdapManager: ... context created successfully, returning.
2010.06.08 07:01:17 LdapManager: Trying to find a groups's DN based on it's groupname. cn: Spark agents CLT, Base DN: OU="Hidden",DC="Hidden",DC="net"...
2010.06.08 07:01:17 LdapManager: Creating a DirContext in LdapManager.getContext()...
2010.06.08 07:01:17 LdapManager: Created hashtable with context values, attempting to create context...
2010.06.08 07:01:17 LdapManager: ... context created successfully, returning.
2010.06.08 07:01:17 LdapManager: Starting LDAP search...
2010.06.08 07:01:17 LdapManager: ... search finished
2010.06.08 07:01:17 LdapManager: Trying to find a groups's DN based on it's groupname. cn: Spark agents CLT, Base DN: OU="Hidden",DC="Hidden",DC="net"...
2010.06.08 07:01:17 LdapManager: Creating a DirContext in LdapManager.getContext()...
2010.06.08 07:01:17 LdapManager: Created hashtable with context values, attempting to create context...
2010.06.08 07:01:17 LdapManager: ... context created successfully, returning.
2010.06.08 07:01:17 LdapManager: Starting LDAP search...
2010.06.08 07:01:17 LdapManager: ... search finished
我认为这是我的配置,并开始查看 openfire 网页上的缓存设置。我按照页面的建议调整了设置,但仍然遇到相同的问题。我似乎没有缓存联系人列表,或者这可能是一个从未修复或实现的功能。
有没有人经历过这个?我在网上搜索过,我看到其他人在 openfire 方面有很好的经验,没有像我这样的问题,还是因为没有人检查查询?
目前我创建了一个新的域控制器并将 openfire 移动到那台计算机上,以便它可以运行本地查询。这似乎有助于大大降低速度,但是当我运行服务器性能管理器工具时,我发现只有两个人使用该 openfire 服务器,我每秒运行 593.7 个请求。
感谢您的帮助,如果我没有提供足够的数据,请告诉我您需要什么,我可以找到它。
从对话中添加其他信息:我仍在仔细检查我的设置,但它们似乎是正确的。当我执行wireshark 时,我注意到虽然它会将整个联系人列表作为查询发送,但我假设它缓存在名册列表下。但是,即使设置了某些 Cashe 字段,也不会看到它们被使用。
我查看了您发送的链接,我之前已将其添加到我的 openfire 中,希望能解决它,仍然是同样的问题。
有没有人做过服务器性能管理器,看看你是否和我有同样的问题?或者一个 tcpdump。当我在同一台服务器上运行 openfire 和 Ldap 时,它似乎只需要 2-5 秒,只有两个人在上面,而不是 2-5 分钟,而没有它。最后检查性能经理说每秒 600 个。
我的主要内容是它只是不缓存,但我不确定这是否正确。
感谢您的反馈!