May 2014 ==== Background ==== Setting the spool directory of the appropriate size and characteristics is crucial for good performance. For guidance regarding the size see [[projects:nbsp:articles:spooldb-slots.readme|Setting the spooldb_slots parameter]]. Here we give some hints for creating a high performance spool. == FreeBSD == Use a zfs partition mounted on /var/noaaport/nbsp/spool. The requirements are * 64 bit machine * 8 GB or more of Ram The relevant commands are then # zpool create zpool0 da1 da2 da3 # zfs create -o mountpoint=/var/noaaport/data -o atime=off \ zpool0/noaaport-data # zfs create -o mountpoint=/var/noaaport/nbsp/spool -o atime=off \ zpool0/noaaport-nbsp-spool There is no limitation on the size of the spool with this setup (except of course the total disk space). == Debian == Use a tmpfs of the appropriate size mounted on /var/noaaport/nbsp/spool. The size depends on the available Ram. As an example, we will set a 2 GB tmpfs spool. Following the recommendation in [[projects:nbsp:articles:spooldb-slots.readme|Setting the spooldb_slots parameter]], set in //nbspd.conf// set spooldb_slots 32768 This would limit the spool average retention time to about 13 minutes (assuming 2500 files/minute) and a size of about 1 GB (assuming 60 MB/min rate), which fit safely in 2 GB. Then the following command creates the 2 GB tmpfs spool, mount -t tmpfs -o size=2g tmpfs /var/noaaport/nbsp/spool or alternatively in ///etc/fstab// tmpfs /var/noaaport/nbsp/spool tmpfs size=2G 0 0 == NOTE == After creating any of these file systems, the permissions/ownsership must be set such that the nbsp user //noaaport:noaaport// can write to them e.g., cd /var/noaaport/nbsp chown noaaport:noaaport spool See also [[projects:nbsp:articles:disk-setup.readme|Disk setup]].