Distributed Systems Programming

napalm684

Junior Member
Jun 18, 2006
7
0
0
Hey all,

I am an IT/programming buff. Last year with the help of a professor I developed a framework for distributing applications with the Java language. The idea was simply to develop a lightweight and transparent framework for distributing complex component-based applications. We wanted the user to simply follow a simple set of conventions to develop unique component behaviors. The distribution of the components across a network would therefore become completely transparent to the user (it was basically something given to the programmer out of the box with no development involved). So where am I going with this? I just thought it would be interesting to get the perspective of some fellow techies. If you were given such a framework that would allow you to focus on the logic of your distributed application would you use it? What kinds of features would you find most useful? If it was to be open sourced would you extend it and/or do you think others would want to? I just wanted to open the floor to discussion. So have it at people I am really curious.
 

BlackMountainCow

Diamond Member
May 28, 2003
5,759
0
0
What you describe is basically the same as Berkeley's BOINC platform, that most of us use on a daily basis. Open Source, you can modify it, it probides the network while you focus on the science/application, "user friendly" in a certain way.

In that way, I'd say you'd have to convince an aspiring DC developer to rather use your system than BOINC, which could be pretty hard, as BOINC by now has become the defacto stadard platform for distributed computing with only a few exceptions, which were there before BOINC already.

:)
 

napalm684

Junior Member
Jun 18, 2006
7
0
0
I guess I kind of wonder how easy this platform is to use. The goal of our research was primarily to develop a framework that even the novice programmer could use. It is actually quite simple to develop a distributed application once you understand the simple behavior construct that we provide an abstract class to serve as a template for. Also this BIONC API appears to use a lot C++ constructs that most entry level programmers would probably not understand. Although, I must say thanks as this does definitely look interesting. Also the beauty of Java gives our framework complete client independence, although I do see that BIONC will run on a few platforms (Windows, OS X, Linux). I don't have a lot of time this moment to read all about BIONC but I will definitely later. I just think the glory of the framework I was working on is that the user need not understand the concept of a thread, socket, etc. All they need to understand is how to develop a behavior from the abstract class provided. I suppose they also need to understand the concept of a message as that is what is exchanged between component-based applications in my framework. However, this shouldn't be hard to understand based on the Publisher/Subscriber paradigm we implemented to assist the user. Don't get me wrong I didn't start this thread to say hey use my framework there aren't any out there. I knew there were others, I just find distributed computing interesting and fun to work on. I was just attempting to gage other people's interest in using frameworks such as my own. I am not as involved with it as much as I was since I have graduated college this year. I do know though that our framework is in the process of being extended to use bluetooth based components as well. Just throwing that tid bit out there.
 

Ken g6

Programming Moderator, Elite Member
Moderator
Dec 11, 1999
16,795
4,777
75
For a simpler DC system, you might check out my TCPPipe.

It seems to me that there are three kinds of DC systems. One type is for global grid computing, like BOINC. Another type is for intranet grid computing, like mine above. Finally, there's the SMP application which "distributes" across cores/processors. (And there's also beowulf, which makes the second type look like the third type.) Which is yours?

P.S. It's "BOINC", as in "SETI@Home is playing BOINC the alien." :D