Most recent news
(click here for all news posts)
September 1, 2006 - SomeWhiteGuy Tracker:
6413 lines / SeederSide: 3848 lines
IT WORKS NOW! :O
Yeah, I finally got around to testing the ImageBoard-Tracker on the Linux
environment with Wakaba, Kareha, Futaba, and Futallby. It can work with
all of them now. I also polished up the error interfaces by adding some
troubleshooting info on them.
And shit, it was it a painful job. Wakaba is a great script and all, but
!@#$ it's hard to install. And NO WHERE did I see it telling me
that the script needs directories src/ res/ and thumb/ in which I have to
create (it doesn't make them). You also need to set them with the correct
permissions in Linux. You also need to set the permission for the folder.
And then I had to go through the ordeal of getting the Perl DBI (MySQL class
module) installed. Which was a pain in the ass because the ppm command
doesn't seem to work in Linux. In Windows, you just do ppm in the DOS
prompt, and then do something like "install DBI" and then other components.
And after I finally found out how to do that, I then I had to get MySQL
installed for Linux. It wasn't to bad doing, the .rpms
did the work for me, but then, I had to get the user account setup for MySQL.
Is there a GUI for it? pfff, Nooooooo, of course not. GUIs...
just aren't very Linux like now are they? So basically I had to work in a
all-text Linux terminal for like, two hours trying to get user accounts setup.
I found like three different ways to do it online. I cant remember which
one worked, I just just typing in random things to the point I finally got it.
But man I swear it's all BS. Some of these examples on line... you can
copy and !@#$ing paste the examples right in, and guess what. They
don't work >_< RRg, why do these people even bother posting examples
if they don't even !@#$ing work!!!
Anyways, in the end, I somehow got it working. I then tested the install
bugs to death on the tracker-script.
What is this project?
The goal of this project is to take care of a
serious issue that has been known for a long time with ImageBoards, and
is band with consumption by the main server, which in turn consumes a
lot of money. The way this project plans to cut down on bandwidth
is by asking users to help them, by donating bandwidth instead of
money, much like the BitTorrent system. It is assumed that people
will be more likely to donate their bandwidth as it is very commonly
done with torrents. This project is designed to create add-on scripts
for ImageBoards, so they can be seeded by home users.
How doest it work?
How things are now (w/out this add-on script)
Well, in order to compare and
contract, let's look at how ImageBoard function now (without this
script. As it is, all users are dependant on one server.
<< Old system
- Dependant on one server
- One server has to shovel out bandwidth, bandwidth which costs
- One server servers ImageBoard handles requests for
texts, thumbnails and full-images
- If the one server goes down, then the entire site goes down
because everyone is dependant on that one source
The new system (with this add-on script)
Rather than having the main ImageBoard server sending board convos,
thumbnails, and full-images, with this system it would send just the
convos and thumbnails. And rather than sending out the full-images
upon request, it would forward the user to a seeder. The
full-images take up the overwhelming majority of the bandwidth on
the ImageBoard server, and thus this could cut down tremendously.
- Dependant on a main-server and seeders
- One server has to shovel out bandwidth
for smaller files only
- One server servers ImageBoard handles requests for
texts and thumbnails, and
only full-images images on occasion (read on for understand
- If the one server goes down, then the links to the seeders
go down. In the future as this script is developed more, I hope
to have the seeders able to host the images alone in a way where
the site can still be viewable in a way where all the images will
still be available (but of course the text-convos will be there
until the main-server comes back up)
||- Gives ImageBoard ability to seed
- Can detect when seeder stop seeding automatically, or die unexpectedly
- Detects broken links, redirects user to another seeder automatically,
and checks if seeder with broken link is still alive
- Does CRC checks on files to make sure that everyone is sharing what
they should be (not fake data in place of falsified file names)
|FAQ: Wait, so seeders get bombarded connections from
all users of the ImageBoard?
No! This script has flow
control, a very needed concept for popular boards that have many users
coming onto the site at random. Because users come onto the site,
and are forwarded to seeders with the images, they are being forwarded
though the ImageBoard add-on script. And because that
script decides where the users where go to download full-images, the
script will consider each seeder, and
only route a users to a certain
seeder if the target seeder has less then X connections in the past Y
seconds. The script will consider all seeder who are
seeding the target file, and if no seeders with the file are available
due to flow-control rules, then the user will be directed to the file on
the main ImageBoard server - The location/URL a user would get to it if
this script was never installed. This flow-control makes sure that
seeders don't get more requests then they can handle. The seeders
themselves will decide their own flow-rate, and if the flow rate is to
high, admins of the ImageBoard-add-on script can override the rating.
|FAQ: Is ImageBoard dependant on seeders only?
||No, obviously if that was the case, the board could easily die if
there were not enough seeders. Seeders support the board,
and upon request for a file, if there are no seeders with the file, or
if all the seeders with the file are busy with other users, then the
request is fulfilled by the ImageBoard, just like the way things are
without the add-on script in place. Thus, the ImageBoard functions
as it normally would, but relieves bandwidth by redirecting users to
seeder when it can.