image provider

Who Can See Me?


Disclaimer

This essay does not describe an existing computer program, just one that should exist. This essay is about a suggested student project in Java programming. This essay gives a rough overview of how it might work. I have no source, object, specifications, file layouts or anything else useful to implementing this project. Everything I have prepared to help you is right here.

This project outline is not like the artificial, tidy little problems you are spoon-fed in school, when all the facts you need are included, nothing extraneous is mentioned, the answer is fully specified, along with hints to nudge you toward a single expected canonical solution. This project is much more like the real world of messy problems where it is up to you to fully the define the end point, or a series of ever more difficult versions of this project and research the information yourself to solve them.

Everything I have to say to help you with this project is written below. I am not prepared to help you implement it; or give you any additional materials. I have too many other projects of my own.

Though I am a programmer by profession, I don’t do people’s homework for them. That just robs them of an education.

You have my full permission to implement this project in any way you please and to keep all the profits from your endeavour.

Please do not email me about this project without reading the disclaimer above.

The whocanseeme program I propose here is an extension of Montastic. Montastic probes your website periodically and sends you an email to warn you if you site is down. You might receive the email on your pager or cellphone. However, sometimes Montastic thinks your site is fine and you can access it fine, but many users still can’t access it. There is some problem in the Internet interfering with traffic. Outages usually don’t cause serious trouble, just slowdown, but if there are errors in the routing tables of one of the Internet nodes they can route traffic off into oblivion.

How can you stay on top of this and monitor access from a large number of spots on the planet?

The overhead of probing even a very large number of websites is surprisingly small since you only have to probe each one every 10 minutes or so. Further, you can use a thread pool to check many sites at once. Let us say you were able to talk 15 people in various parts of the world into running the tiny core of the whocanseeme program on their server or even desktop. You have an online database where people can register the websites they want to monitor and where to send the notifications on failure. Updates are broadcast to all the participating servers. The participating servers report back on findings. The main website is responsible for sending out the emails.

This way, on failure, the user knows where his website is visible and where it is not. It would separately monitor DNS (Domain Name Service) and HTTP (Hypertext Transfer Protocol) visibility. This information may help IAPs (Internet Access Providers) to track down problems with their routers.

After this is working, you could write a desktop widget or iGoogle gadgets) that displayed an icon on the desktop to let the user know the state of his website/websites. You would not want a giant Java app running continuously for such a trivial purpose.

After that is working, you might work out a way to have more than one central database so you have a hot backup, or shared load.

Like Montastic, you offer this as a free service, generating enough income to break even with Google Adsense ads.

Host-Tracker: one time check access from about a dozen global cities
Montastic

This page is posted
on the web at:

http://mindprod.com/project/whocanseeme.html

Optional Replicator mirror
of mindprod.com
on local hard disk J:

J:\mindprod\project\whocanseeme.html
Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

IP:[65.110.21.43]
Your face IP:[18.218.2.191]
You are visitor number