Tuesday, June 15, 2010

Fine tune Hylafax server -- is the server too busy?

We can tell Hylafax to work faster by increase the value of MaxConcurrentPreps  in /var/spool/hylafax/etc/config.  Hylafax then processes more jobs at the same time.
The concurrent number of active modems will be seen increasing soon after MaxConcurrentPreps is updated.
But how do we know we reach the threshold of system capacity?
One way to tell is using unix 'top'.  The cpu load shows  queue length to cpu in past 1, 5, 10 minutes.
If we have a single cpu system, then a queue length of 1 almost means that cpu is 100% utilized.  In a multi-core or multi-processor environment, the threshold queue length is the number of cores or processors.  For example, if we have 2 quadcore, then the threshold cpu load is 8. 
Moreover, we can roughly treat core and processor the same when inspecting cpu load.  In that sense, 2-quadcore and 8-processors both reach their threshold when 'top' shows cpu load of 8.
To further verify the number of cores or processors, we can type 'top' and then press '1'.  A list of cpu with their respective usage figures would be shown.  If the cpu queue length is not overwhelming at all, one should notice certain idle% in the usage figures.
Also note that there is no point to further increase MaxConcurrentPreps when the modem pool is saturated.   The command 'faxstat' reports status of each modem.  When almost all modems are in 'sending' state,  speeding hylafax delivery simply results in longer send queue in /var/spool/hylafax/sendq.  From experiment, it is better to keep sendq to a reaonsable length, for example, the number of the modems, in order to maintain a stable hylafax scheduler. 
Talk to me now via ZoiPPE! My ZoiPPE number is 85230003 

No comments:

Post a Comment