All Tigase projects publicly available
Recent Minichat addition on the Tigase website raised lots of questions about access to the source code.
Following those requests we have listed all the projects Tigase team works on and all the source codes are now publicly available. You can go to the projects page and browse all the published projects.
Please note, most of the project trackers are in initial state and the web content might be missing. You can, however access the project source codes, bug tracking system and see the roadmap. We are working hard on adding missing elements.
Your comments as always are very welcomed.
- kobit's blog
- Add new comment
- 160 reads
Installing Minichat on your website
We have made Minichat available just to demonstrate new stuff we are working on, to do some tests and collect your opinions. The feedback we have got exceeded our expectations. The most common question was: Can I/how can I install it on my website?
Installing the Minichat on your website is very simple so I am putting here instructions for all of you who want to include the Minichat client on your website and allow visitors to chat with you.
Just to remind you - this code is still under development and will be updated and changed very often. It may even stop working temporarily or permanently. We can even intentionally block certain users or IP addresses if we discover any abuse. If you are ready for this and still want to have it continue reading...
- kobit's blog
- 1 comment
- Read more
- 859 reads
Minichat - Web client on Tigase website
We have just installed the Minichat - simple web client on the Tigase website. It allows anybody who visits the website to chat with "admin" - me ;-). No user name, no password is required. Just click to connect to the XMPP/Jabber server and you can start conversation.
This is the AJAX application created using GWT (Google Web Toolkit). It connects to the XMPP server via Bosh and signs in using SASL Anonymous.
This is our first version of the client and we are going to move things further to add fully functional AJAX client to Tigase project. The AJAX client and the XMPP library written in GWT is also available under GPLv3 license and will be released publicly very soon.
Please have a look, experiment and let us know what you think...
- kobit's blog
- 5 comments
- Read more
- 1358 reads
Less resources, higher throughput - 150k active connections
Thanks to Directi Company who offered their hardware for Tigase tests I had a unique opportunity to do more detailed load tests under the Java profiler control. Good environment teamed with a good tools allowed me to find places where some optimizations are possible and further improve the Tigase server.
In my last tests, even though, the Tigase server was running under the Java profiler which consumes extra memory and CPU power I was able to achieve 152 584 concurrent, active connections.
In this test the client side software was the main limitation. I had only 3 machines to generate client traffic. In theory it allows to create maximum 3 x 64k connections. In practice it is slightly less. On top of this the client generators use more resources than the Tigase server as they are significantly less optimized.
As in previous test the hardware used to run Tigase server was: Pentium(R) D CPU 3.00GHz Dual Core, 4GB RAM, 144GB SATA HDD running on 64bit CentOS 5.1, Sun HotSpot(TM) 64-Bit Server VM (build 1.6.0_03-b05, mixed mode).
Here are statistics taken at the end of the test:
| Tigase Server version | 3.3.2-b889 |
|---|---|
| Concurrent, authenticated connections | 152 584 |
| Test total time | 2h, 14min, 8sec |
| Memory concumption | about 2.2GB |
| CPU usage (2 cores) | below 80% |
| Total number of XMPP packets processed during the test | 40 407 254 |
| Average packets per second processed | 10 077/sec |
| Average server response time | 466 millis |
| Database (running on localhost) | MySQL |
The rest of the test parameters and all conditions stay the same.
- kobit's blog
- Add new comment
- 804 reads
Linux settings for high load systems
There are a few basic settings you have to adjust for high load systems to make sure the server have enough resources to handle big number of network connections.
The main parameter is a maximum number of opened files allowed for the process to keep at the same time. Each network connection uses a file handler therefore if the limit is too low you can quickly run out of handlers and the server can not accept any more connections.
This limit is set on 2 levels - on the kernel level (fs.file-max) and on the system level (nofile).
Another kernel property which can be important in certain configurations (like transports installations or when you use proxy for Bosh connections) is: net.ipv4.ip_local_port_range. This parameter can be set the same way as the fs.file-max property.
- Add new comment
- Read more
- 1440 reads
Tigase Server ver. 3.3.2
I am happy to announce that the new version of the Tigase Jabber/XMPP server is available for download. It's been about 5 months since the last release and indeed huge number of changes and improvements come with today's version 3.3.2.
Here is a very brief list of changes:
- Reduced resources consumption and improved performance.
- New, smart caching system.
- Bosh component is now stable and ready for production.
- Dynamic rosters support added.
- Configuration wizards on MS Windows through new initial property file which also supports parameter's types.
- Improved support for multi-core and multi-cpu systems
- MSN gateway (transport) available in tigase-extras based on excellent Java MSN Messenger Library.
- SQL Server support added.
- SSL certificates loading from PEM files available in tigase-extras
- Many other minor changes, improvements and bug fixes....
I hope you like the new version and as usually all comments and suggestions are very welcomed. Also, as usually test results for the release are available on the test page.
For more detailed information keep reading...
- kobit's blog
- 2 comments
- Read more
- 880 reads
Tigase Server, single machine - 109k authenticated connections
I had an opportunity to use 4 server like machines to do some load tests over the Tigase server. The Tigase server was installed on one of the boxes and the 3 others generated client connections and the traffic. As the subject says I achieved 109 707 authenticated connections before client software ran out of memory and the test finished.
Here are some statistics taken at the end of the test:
| Tigase Server version | 3.3.2-b883 |
|---|---|
| Concurrent, authenticated connections | 109 707 |
| Test total time | 2h 40min 43sec |
| Memory concumption | 2.1GB |
| CPU usage (2 cores) | 95% |
| Total number of XMPP packets processed during the test | 45 058 717 |
| Average packets per second processed | 8.7k/sec |
| Average server response time | 263 millis |
| Database | MySQL |
Environment configuration - Pentium(R) D CPU 3.00GHz Dual Core, 4(server)2(clients)GB RAM, 144GB SATA HDD, 64bit CentOS 5.1, Sun HotSpot(TM) 64-Bit Server VM (build 1.6.0_03-b05, mixed mode).
Tigase Test Suite was used for generating user connections and the traffic.
For more comments on these results please continue reading...
- kobit's blog
- Add new comment
- Read more
- 709 reads


Recent comments
4 days 11 hours ago
4 days 12 hours ago
4 days 18 hours ago
4 days 18 hours ago
4 days 19 hours ago
5 days 25 min ago
5 days 13 hours ago
5 days 22 hours ago
5 days 22 hours ago
2 weeks 1 hour ago