Mininova, the javascript cluster

This one time I was thinking of what would be possible with Mininova and all its visitors. The first think I thought about was a hidden IFRAME DDOS, but this wouldn’t be cool (but maybe I’ll talk about this later). The second thing that came to my mind was a little more complicated but also more fun. Why not use the visitor’s browser to do some calculations. When a page is loaded and the visitor is reading the page the browser does (almost) nothing, so why not use this time. My Idea was to send some javascript with the page and execute it when the page is loaded. The results could be posted back with a XMLHTTPRequest. This request could even be used to fetch another script to execute next for if the user keeps the page open for some time. So let’s calculate how fast this would be.

Mininova has 3,770,305 page views per day. 99.27% of the Mininova visitors have Javascript enabled. So this is 3,742,782 page views per day with Javascript enabled. This is 155,949 page views with javascript enabled per hour, 2,599 per minute or 43 per second. The average time spend on a page is about 10 seconds. This is really a guess (maybe someone knows a better guess?). Using this data we can say that at any time 43 * 10 = 430 people will have a Mininova page open (in a browser with javascript enabled).

On my machine (FireFox 1.5 Beta 2, AMD Athlon 64 3000+ ~2GHz CPU) Javascript can execute 2,000,000 IPS. With IE this is even more, 2,500,000 IPS. check on your machine Because 60.32% of the Mininova visitors uses IE but not everyone has a fast CPU I’ll use an average of 2,250,000 IPS.

So using this data we can calculate that with this cluster we can do 430 * 2,250,000 = 967,500,000 IPS. Which is 967.5 MIPS.

Now let’s compare this to some CPU’s.

48620 MIPS
Pentium60 MIPS
Pentium Pro200 MIPS
Pentium 2333 MIPS
Pentium 3500 MIPS
Mininova cluster967 MIPS
Pentium 3 (1Ghz)1000 MIPS
Pentium 41500 MIPS
Itanium+2500 MIPS

data from here

So the Mininova javascript cluster is almost as fast as a 1Ghz Pentium 3. Not as fast as I thought when I started writing this but still not slow.

I have never tested this for real because of 3 things:

1) I don’t know if the Mininova visitors would like it if their browser uses all their CPU power when visiting Mininova.

2) Measuring this isn’t easy.

3) Because almost every page views would result in a request to post back the data it would double the requests which the Mininova web server won’t like.

I think testing it for real would result in a somewhat slower speed. One of the things that I haven’t taken into my calculations it the time it takes to post back the data with a XMLHTTPRequest. Also one of the problems would be people closing the page before the request is done.

I think I will never find out if it really works and what the real speed would be. But it was fun calculating this stuff and thinking about it. Hope you enjoyed reading this,

Erik.

More fun can be found at the Mininova labs.

Downtime

As most of you noticed, we had quite some problems this weekend. (Due too some bugs in “3rd party software”)

We are now busy changing to another caching library and (hopefully) everything will be fixed :).

UPDATE 16-11-05 by erik

The new caching library works great. We have also updated our version of eaccelerator and there are no errors anymore.

We have also written some new load balancing features which automatically change caching times and search result set sizes based on the load on the sql server.

We are planning to update mysql to version 5 in some days. We are looking at compiling it with the intel compiler which should enhance it’s performance.

Mininova update

As you may have noticed we have just launched a new version of mininova.

changes

The most important freature of the new update is the user system. The user system allows people to post comments on torrents. It also lets you personalize mininova with your own settings:


We have also done some other minor improvements. For example the FAQ page has been rewritten. And there are some minor speed improvements.

what will we be working on next

  1. We are planning to change the server time to GMT instead of CET.

  2. More settings for the user system. (request them here)

  3. Search result emails.

  4. And much more…

CodePost | Coding with style

We, the mininova admins, are glad to release another website for the community.

After a few weeks of coding, designing and testing with our team, CodePost is officially launched.

More information about this project can be found on the FAQ page, which reads:

CodePost is a website where developers share their creations.

Posts can be submitted in four different categories. You can share useful pieces of code you wrote, awful pieces of code other people wrote, images of you nicest creations, and screenshots of your desktop.

Other visitors can leave feedback on your work by posting comments.

CodePost should be easy-to-use website for both unexperienced users and skilled programmers. We hope you like the site as much as we do :)

However, this post is not completely unrelated to mininova. We are planning to integrate the CodePost user and comment system, along with some other useful features on mininova soon. And with that, mininova should be even better :) Enjoy.

Copyright infringement mails

We get quite some “copyright infringement” mails. Below are some funny quotes from these mails.


From a WebSheriff mail: “Intructions” we should immediately comply with:
You must undertake to take out a half-page advertisements in Billboard Magazine, Music Week Magazine and Music & Media Magazine within fourteen (14) days of the date hereof clarifying the fact that (a) your usage of Trademark, the Masters, the Compositions and the Goodwill was not authorised by or otherwise associated with our client, (b) the services offered by you under the Trademark, the Masters, the Compositions and the Goodwill were not offered by or on behalf of our client and (c) you are no longer trading either under or otherwise by use of the Trademark, the Masters, the Compositions and the Goodwill. Furthermore, the said advertisement must include an apology to our client.
From a GrayZone DMCA mail:
I, the undersigned, do solemnly and sincerely declare and CERTIFY UNDER PENALTY OF PERJURY that…
-snip-
Finally, notwithstanding our use of this required notice form, we believe that www.mininova.org ‘s activities and services fall outside the scope of the Digital Millennium Copyright Act (“DMCA”). Our use of this form, as required by law, is meant to facilitate www.mininova.org ‘s removal of the infringing materials listed above and is not meant to suggest or imply that www.mininova.org ‘s activities and services are within the scope of the DMCA.
More examples of these DMCA notices can be found here.

Angry emails

Besides mails from people who thank us for running mininova, we also receive different kind of mails. Here is a small collection.


Subject: your web site needs recreating
well, welldone for creating the most annoying website i’ve ever seen. In fact f*ck bit torrent. What a pile of shit. Typical of a good idea been wasted once again.
Subject: u dumb badword
how can u putsoca and dancehall in the same topic, are u retarded
Subject: INFRINGEMENT OF COPYRIGHT
MY NAME IS MR EMMANUEL DAVIES AND I OWN AND RUN MUN MUN INTERNATIONAL A MUSIC, PRODUCTION AND DISTRIBUTION COMPANY.
I HAVE RECENTLY VISITED YOUR SITE AND SEEN A COPYRIGHTED PRODUCT OF MINE FOR DOWNLOAD “REGGAE DANCEHALL SPLASH”
I HAVE NOT GIVEN PERMISSION FOR THIS PRODUCT TO BE ON YOUR SITE NEITHER DOWNLOADED
I WOULD LIKE LIKE TO KNOW WHY YOU ARE BREAKING THE LAW! AND I WOULD LIKE TO KNOW WHO HAS GIVEN YOU PERMISSION TO HOST MY CD AND MAKE IT AVAILABLE
I WILL AWAIT YOUR REPLY AND WILL GET IN CONTACT WITH MY SOLICITORS TO PROSECUTE AND HAVE YOUR SITE SHUT DOWN IF YOUR REPLY IS NOT SATISFACTERY.
MR E DAVIES (MD)
Subject: Pirate
Hey web thief,
Is this the way you do business, you are doing illegal stuff, and some people are not happy that you are steeling someone business.
You think it is normal?
With no regards,
Co Mast

How to protect yourself in the P2P world

This post can be seen as a quick ‘howto’ covering the subject of protection in the P2P world in general, and BitTorrent specificly.

First of all, I recommend everyone to install PeerGuardian. Especially if you’re living in the USA, this is a must. PeerGuardian is some kind of firewall designed to protect the privacy of P2P users. It will block all traffic coming from suspicious IP addresses.

Secondly, be very carefull when downloading .exe files (sometimes packed in .rar files). If you’re unsure, upload the .exe file to this online malware scan website before opening it. If a torrent contains a virus (or spyware), use the “Report a problem” link so we can remove the torrent as soon as possible.

And last but not least, if you’re downloading games or movies, make sure they’re listed at NFOrce and/or VCD Quality. If you can’t find them there, big chance it’s not what you’re searching for.

Downtime

As you can see on the graph, we’ve been having some downtime. Some of this downtime is related to problems at our host. Others where caused by an unknown error on our webserver.

!Warning! technical talk:

Somehow, two seperated networks got connected with eachother, which caused a spanningtree miscommunication on different fibre rings. We have disabled some ports in order to break the connection between the two networks. During the last two hours we’ve tried to lower CPU load (> 75%) on some switches, caused by spanningtree protocol. This resulted in short outages for some customers.