web-dev-qa-db-ja.com

FreeBSDスレッドの増加

接続ごとに1つのスレッドを作成するネットワークアプリ(ポンドなど)の場合、スレッド数は、サーバーできる同時接続数のボトルネックになる可能性があります。

私はFreeBSD8 x64を実行しています:

$ sysctl kern.maxproc
kern.maxproc: 6164

$ sysctl kern.threads.max_threads_per_proc
kern.threads.max_threads_per_proc: 1500

$ limits
Resource limits (current):
  cputime              infinity secs
  filesize             infinity kB
  datasize             33554432 kB
  stacksize              524288 kB
  coredumpsize         infinity kB
  memoryuse            infinity kB
  memorylocked         infinity kB
  maxprocesses             5547
  openfiles              200000
  sbsize               infinity bytes
  vmemoryuse           infinity kB
  pseudo-terminals     infinity
  swapuse              infinity kB

増やしたいkern.threads.max_threads_per_procから4096。各スレッドが512kのスタックサイズで始まると仮定すると、マシンをホースで接続しないようにするために、他に何を変更する必要がありますか?

5
sh-beta

FWIW、他の設定を変更せずにkern.threads.max_threads_per_procを4096に設定しましたが、悪影響は見られませんでした。ポンドは数回そこに到達しました(そうしている間に2GBのRAMを食べます)。

1
sh-beta