diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/ejabberdctl.cfg.example | 96 | ||||
-rw-r--r-- | src/ejabberdctl.template | 2 |
3 files changed, 62 insertions, 40 deletions
@@ -1,5 +1,9 @@ 2007-12-02 Badlop <badlop@process-one.net> + * src/ejabberdctl.cfg.example: Bugfix in kernel poll. Added SMP + option. Reorganization of options + * src/ejabberdctl.template: Added SMP option + * src/Makefile.in: New options make uninstall and uninstall-all (EJAB-293) diff --git a/src/ejabberdctl.cfg.example b/src/ejabberdctl.cfg.example index 587270e3..ceceb725 100644 --- a/src/ejabberdctl.cfg.example +++ b/src/ejabberdctl.cfg.example @@ -1,71 +1,89 @@ -# Additional options passed to erlang while starting ejabberd. # -#export ERL_OPTIONS="-heart" +# In this file you can configure options that are passed by ejabberdctl +# to the erlang runtime system when starting ejabberd +# -# ERL_MAX_PORTS: Maximum number of simultaneously open Erlang ports +# POLL: Kernel polling (+K [true|false]) # -# Erlang consumes one port for every connection, either from a client or from -# another Jabber server. The option ERL_MAX_PORTS limits the number of -# concurrent connections and can be specified when starting ejabberd. +# The kernel polling option requires support in the kernel. +# Additionaly, you need to enable this feature while compiling Erlang. # -# Default value: 1024 -# Maximum value: 268435456 - -export ERL_MAX_PORTS=32000 +# Default: +K false +# +#POLL="+K true" -# ERL_FULLSWEEP_AFTER: Maximum number of collections before a forced fullsweep +# SMP: SMP support (-smp [enable|auto|disable]) # -# To reduce memory usage, you can set environment variable ERL_FULLSWEEP_AFTER. -# But in this case ejabberd may work slower. +# Explanation in Erlang/OTP documentation: +# enable: starts the Erlang runtime system with SMP support enabled. +# This may fail if no runtime system with SMP support is available. +# auto: starts the Erlang runtime system with SMP support enabled if it +# is available and more than one logical processor are detected. +# disable: starts a runtime system without SMP support. # -# The ERL_FULLSWEEP_AFTER option shrinks the size of the Erlang process after -# RAM intensive events. Note that this option may downgrade performance. Hence -# this option is only interesting on machines that also host other services -# (webserver, mail) on which ejabberd does not receive constant load. +# Default: -smp disable # -# Default: 65535 +#SMP="-smp auto" -#export ERL_FULLSWEEP_AFTER=0 +# ERL_MAX_PORTS: Maximum number of simultaneously open Erlang ports +# +# Erlang consumes one port for every connection, either from a client or from +# another Jabber server. The option ERL_MAX_PORTS limits the number of +# concurrent connections and can be specified when starting ejabberd. +# +# Default: 1024 +# Maximum: 268435456 +# +export ERL_MAX_PORTS=32000 -# PROCESSES: Maximum number of Erlang processes (default=32768, max=268435456) +# PROCESSES: Maximum number of Erlang processes # # Erlang consumes a lot of lightweight processes. If there is a lot of activity # on ejabberd so that the maximum number of proccesses is reached, people will # experiment greater latency times. As these processes are implemented in # Erlang, and therefore not related to the operating system processes, you do # not have to worry about allowing a huge number of them. - -#PROCESSES="+P 32768" - -# POLL: Kernel polling (-K true) # -# The kernel polling option requires that you have support for it in your -# kernel. By default, Erlang currently supports kernel polling under FreeBSD, -# Mac OS X, and Solaris. If you use Linux, you need to apply a patch. -# Additionaly, you need to enable this feature while compiling Erlang. - -#POLL="-K true" +# Default: 32768 +# Maximum: 268435456 +# +#PROCESSES="+P 32768" -# ERL_MAX_ETS_TABLES: Maximum number of ETS and Mnesia tables (default=1400) +# ERL_MAX_ETS_TABLES: Maximum number of ETS and Mnesia tables # # The number of concurrent ETS and Mnesia tables is limited. When the limit is # reached, errors will appear in the logs: -# -# ** Too many db tables ** -# +# ** Too many db tables ** # You can safely increase this limit when starting ejabberd. It impacts memory # consumption but the difference will be quite small. +# +# Default: 1400 +# +#ERL_MAX_ETS_TABLES="-env ERL_MAX_ETS_TABLES 1400" -ERL_MAX_ETS_TABLES="-env ERL_MAX_ETS_TABLES 1400" +# ERL_FULLSWEEP_AFTER: Maximum number of collections before a forced fullsweep +# +# To reduce memory usage, you can set environment variable ERL_FULLSWEEP_AFTER. +# But in this case ejabberd may work slower. +# +# The ERL_FULLSWEEP_AFTER option shrinks the size of the Erlang process after +# RAM intensive events. Note that this option may downgrade performance. Hence +# this option is only interesting on machines that also host other services +# (webserver, mail) on which ejabberd does not receive constant load. +# +# Default: 65535 +# +#export ERL_FULLSWEEP_AFTER=0 # The next variable allows to explicitly specify erlang node for ejabberd # It can be given in different formats: # ERLANG_NODE=ejabberd -# Lets erlang add hostname to the node (ejabberd uses short name in this case) +# Lets erlang add hostname to the node (ejabberd uses short name in this case) # ERLANG_NODE=ejabberd@hostname -# Erlang uses node name as is (so make sure that hostname is a real machine -# hostname or you'll not be able to control ejabberd) +# Erlang uses node name as is (so make sure that hostname is a real +# machine hostname or you'll not be able to control ejabberd) # ERLANG_NODE=ejabberd@hostname.domainname -# The same as previous, but erlang will use long hostname (see erl (1) manual for details) +# The same as previous, but erlang will use long hostname +# (see erl (1) manual for details) # #export ERLANG_NODE=ejabberd diff --git a/src/ejabberdctl.template b/src/ejabberdctl.template index 49e17eb9..9d05b559 100644 --- a/src/ejabberdctl.template +++ b/src/ejabberdctl.template @@ -43,7 +43,7 @@ fi # Compatibility in ZSH #setopt shwordsplit 2>/dev/null -ERLANG_OPTS="$POLL $PROCESSES $ERL_MAX_ETS_TABLES" +ERLANG_OPTS="$POLL $SMP $PROCESSES $ERL_MAX_ETS_TABLES" start () { |