Chapter 2. About Tigase XMPP Server

Table of Contents

Robust and reliable
Ease of Use

Tigase XMPP Server is an Open Source and Free (AGPLv3) Java based server. The goals behind its design and implementation of the server are:

  1. Make the server robust and reliable.
  2. Make the server a secure communication platform.
  3. Make a flexible server which can be applied to different use cases.
  4. Make an extensible server which takes full advantage of XMPP protocol extensibility.
  5. Make the server easy to setup and maintain.

Robust and reliable

This means that the server can handle many concurrent requests/connections and can run for a long time reliably. The server is designed and implemented to handle millions of simultaneous connections.

It is not enough however to design and implement a high load server and hope it will run well. The main focus of the project is put in into testing. Tests are taken so seriously that a dedicated testing framework has been implemented. All server functions are considered as implemented only when they pass a rigorous testing cycle. The testing cycle consists of 3 fundamental tests:

  1. Functional tests - Checking whether the function works at all.
  2. Performance tests - Checking whether the function performs well enough.
  3. Stability tests - Checking whether the function behaves well in long term run. It must handle hundreds of requests a second in a several hour server run.