I just wanted to give a quick update. I’ve been busy the last week so I haven’t been able to do much with QuickServ.NET. I’ve modified some of the code that receives and parses the data to be a little quicker but nothing much more than that.
I’ve been having a few issues with .NET and SQlite which has set me back a few days but nothing major.
Last night, I ran a stress test on QuickServ.NET. I had 1100 users connected in and randomly had 200 of them joining and parting channels every 30-45 seconds for about 7-8 hours. I have to say that I’m pretty glad about the results (except for a bug that occurred in my stress test application about 7 hours into the test).
Of course this only tests one aspect of the application. I’ll be taking the results from that test and modifying some code to tweak performance but overall it seemed to have been a success. In the next few days I’ll have my stress test program actually be fully functional so that I can simulate a busy IRC network to see how QuickServ.NET performs (quits, server joins, channel joins, channel parts, topic changes, mode changes, etc).
Here is a quick development update on QuickServ.NET.
The main code that handles the server protocol is nearly completed. QuickServ.NET can successfully connect to an IRC server, and populate the internal database with the user information and channels information (including modes, ops, voice, regular members, topic, etc). While some fine tuning is still required, I’m happy that I can start moving on to the actual services.
One of the biggest obstacles when coding/test is that I don’t have access to an IRC network that has a userbase, established channels, and traffic. In an effort to “counter” that, I’ve also created a “server simulator” that I’ve been using to stress-test QuickServ.NET with positive results.
Anyway, since all services revolve around NickServ (well, sort of), I’ve started my work on that. I’ll keep everyone (currently, that means no one) up-to-date on how that is going (so far, I have the barebones of a REGISTER command and an IDENT command).
Just a quick development note.
QuickServ.NET will use SQLite as the database backend. I started using MS SQL 2005, but then realized that I didn’t want to make people download the large MS SQL 2005 install file and go through all that.
SQLite is small, quick, self-contained, requires no configuration, and doesn’t require a server.
QuickServ was one of the few Windows IRC packages available in the late 90’s. While I won’t admit it was the best designed (it was pretty bad) it did give the user unique administrative control over their IRC services because of the GUI.
I discontinued the project after several years passed and I never got back into programming QuickServ. Lately, I’ve been bored and decided to write QuickServ in Microsoft .NET. I don’t even know if people still run IRC servers in the Windows environment but it will be fun nevertheless. I have noticed several IRC packages for Windows available, many cross-platform.
I’m current designing it using the Unreal IRCD. Over time, I will adopt other available IRCDs. As of a release date, nothing is set. I just plan on taking my time designing and coding. At this time, I currently have a bare boned version of QuickServ.NET up and running.
Well, that’s it for now. Feel free to contact me on AIM at Quick2822 if you have any questions or interest into the project.
Quick
Email: quickness@gmail.com
AIM: Quick2822