Tested Features - Server Architecture

lastnico's picture
By |

Tested Features

This page describes the most important criteria that you should look for finding the forum software you need. Each of this features are explained in details, so do not hesitate to regurlarly consult this page to understand why asoftware could be good and another not.

Operating System

The operating systems is the core piece where your forum can be installed. Generally, a dependency to a specifical OS came from the web server the forum software support. For example, Microsoft IIS can only be installed on a Windows OS, while Apache can be installed on nearly all operating systems. J2EE Server can be installed on each OS where Java is supported, .NET technology is supported by default by Microsoft IIS server, but can be easily installed on a Linux box using Mono Project and Apache (see mod_mono for more information).

You should choose an very secured operating system because the machine hosting your web site will be fully accessible from the entire world, so a Linux server is generally a good and cheap choice.

You can see below an incompleted list of existing operating systems :

  • Linux
  • Windows Server 2003
  • Windows XP
  • Solaris
  • FreeBSD
  • OpenBSD
  • NetBSD

Web Server

The web server totally depends from the technologies used by your forum software. For example, ASP runs under Microsoft IIS, PHP and Python script languages can be installed on every web server (but are generally used with an Apache server).

The J2EE technology needs a Java Application Server, containing a Web container (Tomcat for example) and a Persistence API (EJB, Hibernate,...) These servers are generally harder to install but these solutions matches enterprise level requirements.

See below some examples of existing web servers :

  • Apache 1.3
  • Apache 2.0/2.2
  • Microsoft IIS
  • OmniHTTPD
  • LigHTTPd
  • Apache Tomcat
  • JBoss
  • JoNas
  • Geronimo
  • WebSphere
  • Weblogic

Database

The database program will store the data of your forum. These datas need to be fully accessible as fast as possible if you want your web site be displayed very quickly.

Generally, forum softwares are, in the point of view of a Database systems, very small applications which do not require important disk space and a highly optimized schemas.

You should also choose a database that is really fast reading because your website will be easily 100 times more consulted compared to posting. MySQL is one of the most used database in the Web sphere, because it is small, reliable and of course free.

Some forum softwares do not mandatory need an underlying database, by storing their information in XML files (they will then generally use the XPath querying) or any other file based storage. Another specifical case is the SQLite API, which is not a real database program although its uses the SQL query langage but do not need any separated service to access its datas. In fact, it allows any program to incorporate its own database, simply stored in one file and accessing via an API. This system can be applied to the Web and is generally very useful for people who do not have access to a database in their hosting solution.

  • MySQL
  • Postgresql
  • SQLite
  • Microsoft SQL Server
  • Oracle
  • Microsoft Access
  • XML / Plain text file

Development Language

The development language correspond to the technology that the forum software use. We can separate the existing technologies in two side. The first one is composed of compiled languages, like Java, CGI Bin ( which includes C and every language you want), and .NET.

Compiled languages

The compiled languages have some advantages like speed improvement because the server does not need to parse and analyze the content of a file to execute its logical. The compiled application can be directly executed, without any test. These technologies have however a weakness because it introduces a new step in website development : the compilation process. This process can be really easy, like this : compiler-command file-to-compile, but it's generally harder for webmasters who only want to modify one little part of a file.

Scripting languages

These languages are generally really more used than the previous one, even if the using of this kind of technologies can slow down a little bit the software. The most known examples of script languages are Perl, Python, Ruby, and of course, PHP.

If you want to create a theme of a plugin for the software you will install, the scripting languages will make smoother their developments. To conclude, just a little percent that will show you that scripting is generally more used : nearly 80% of existing forum software solutions use the PHP languages.

  • PHP 4
  • PHP 5
  • J2EE (Java 1.4)
  • JEE (Java 5 / 6)
  • ASP.net
  • Python
  • Ruby