Settings That Affect Performance -------------------------------- Several of Phorum's settings have a tradeoff effect: enabling more features can slow Phorum down. This list shows which options these are, and tries to explain the performance cost of each one. Depending on the usage of your Phorum installation, which options should be turned off to improve performance will change. Global Settings --------------- DNS Lookup ----------------------------------------------------------------------------- DNS lookup causes Phorum to display DNS entries (hostnames) instead of IP addresses on posts, as well as checking if mail addresses point to a valid domain. On a forum with a lot of posts, enabling this will result in a significant number of queries to your DNS server. Phorum's performance will slow down while a query is running, as it will wait for the result of the query. If your DNS server is slow, this may give the impression to your users that posting a message is very slow. If that is the case, you should turn it off. Users with fast DNS servers or only a few regular posters should be able to leave it on. Count New Private Messages ----------------------------------------------------------------------------- If enabled, this option will tell users when they have new private messages. On every page a logged in user visits, Phorum will check to see if they have new private messages. If you have a large number of active users at one time with a large number of private messages, this query can start to slow down your database. Turning it off may help performance, but will also remove the notification users get when they recieve a new private message. Enable Moderator Notifications ----------------------------------------------------------------------------- Similar to the Count New Private Messages option, this option will alert users who are also moderators when they have a new item that requires their attention. The performance hit of this feature is basically nothing for users without moderator permissions, as Phorum will never perform the checks. Moderators will suffer a small performance hit, depending on what type of moderator they are. Administrators will suffer a larger performance hit, as they are effectively moderators of every type, so all of the checks will be performed. Track User Usage ----------------------------------------------------------------------------- This option controls how often Phorum will record when a user was last active. Setting this to be more frequent results in more accurate last activity data, but also causes more database writes. The "Constantly" setting will record the users activity on every page hit by any logged in user, resulting in a dramatic increase in the number of database writes. In most databases, a write is much slower then a read, so this can dramatically reduce performance. This setting is not recommended except for installations with very few users, or very powerful hardware. If you are using a module that actively requires this data (such as the Online Users module), the setting "Once per 5 minutes" is the best setting, as the data will be too out of date if you update the data less frequently. If you are not using such a module, "Once per day" or "Once per hour" are highly recommended over the other options. "Never" disables this function entirely, and is recommended if you simply don't care to know if a user is active or not. note - The setting "Cache User Data" should be disabled if you have this feature set to "Once per 5 minutes" or "Constantly", as the caching will not be of much use. Forum Settings --------------- Email Messages to Moderators ----------------------------------------------------------------------------- If enabled, every post in the forum will be emailed to the forum's moderators. Administrators are automatically moderators in every Forum, and will also get the emails. This setting should not directly affect Phorum's performance, but when a post is made it will cause some emails to be created. If you have a large number of moderators and a lot of posts being made by users, this can create a significant amount of email traffic. The traffic should only be a problem on very large forums, or if you have a slow mail server. In other cases, it should not cause significant performance issues. Allow Email Notification ----------------------------------------------------------------------------- This setting has similar issues to the Email Messages to Moderators setting, except the recipients of the emails are users who have selected the option to have replies in a thread emailed to them. If a large number of users are using this feature in a busy thread, it can affect performance. If few users are using this feature, it will not cause significant performance problems. Count Views ----------------------------------------------------------------------------- If enabled, this feature records the number of views each post gets. For every post read, the counter will be incremented in the database. On a busy forum, this will result in a tremendous number of database writes, dramatically slowing performance. Enabling this feature is not recommended for high traffic forums, unless you have very powerful hardware. Show New Count in Forum List ----------------------------------------------------------------------------- If enabled, the count of new messages for each forum will appear in index.php While quite handy, this has to run several queries per listed forum. If there many forums on the index.php page, there could be a significant hit. The hit will be relative to each user. If the user is very active in reading all the messages in all forums, the hit is reduced. Ban List ----------------------------------------------------------------------------- The ban list is a list of words that are banned when posting a message. There is a small performance penalty for searching for the banned words, but only when posting. Censor List ---------------- The censor list is a list of filtered words, that is checked on every post read. Because it is checked far more often then the ban list, a large censor list will affect performance much more. Move Threads on Reply ----------------------------------------------------------------------------- "Move Threads on Reply" means that a thread which got a new reply causes this topic to be shown on top of the forum, hence the topics are sorted by their last reply not by their first post. In Flat-mode there is no hit. In Threaded-mode (to be supported there) it causes a large overhead because of the complexity of the sorting and the counting of posts on a page. Check for duplicates ----------------------------------------------------------------------------- "Check for duplicates" runs one additional query while posting to check if that post has been made before. That query should be fast and just a small overhead.