Instant Messaging 提供一组用于调整线程池(用于响应客户机与服务器之间的请求以及服务器与服务器之间的请求)大小和操作的配置选项。这些线程池连同相关的服务端口一起可提高 Instant Messaging 服务器的吞吐量。
|
选项名称 |
说明 |
默认值 |
|---|---|---|
|
iim_server.maxthreads |
默认线程池中线程的最大数量。 |
20 |
|
iim_server.threadpool |
独立线程池列表。 |
(均使用默认线程池。) |
|
iim_server.threadpool.capacity |
默认线程池的容量 (*)。 |
10 * maxthreads |
|
iim_server.threadpool.aaa.maxthreads |
名称为 aaa 的线程池的最大线程数: maxthreads(aaa) |
4 |
|
iim_server.threadpool.aaa.capacity |
名称为 aaa 的线程池的容量 |
10 * maxthreads(aaa) |
表 3 Instant Messaging 已定义的线程池
|
名称 |
用途 |
|---|---|
|
s2s-in |
所有服务器与服务器之间的入站通信。如果端口允许服务器与服务器之间的通信,则使用此线程池。 |
|
s2s-out |
所有服务器与服务器之间的出站通信。如果端口允许服务器与服务器之间的通信,则使用此线程池。 |
|
s2s |
所有服务器与服务器之间的通信;s2s-in 和 s2s-out 的联合。 |
可指定已定义的线程池,并连同相关的仅用于服务器的服务端口一起使用,相关介绍可在服务端口配置中找到。
超出线程池容量时,将在标准错误中输出消息。直到请求数量小于线程池容量时,Instant Messaging 服务器才会接受对线程池的其他请求。如果此情形发生在服务器池式环境中,可能需要执行如下操作:
增大线程池的容量
指定已定义的线程池
调整线程池的 maxthreads 的值
使用仅用于服务器的服务端口
增大可能需要的内存
更有效地在服务器池中分布用户
!s2s thread pool iim_server.threadpool=s2s-in iim_server.threadpool.s2s-in.maxthreads=5 |