wood burning stoves*
The moose likes Ranch Office and the fly likes Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » This Site » Ranch Office
Bookmark ""Why does Javaranch use a CGI based backend instead of Java technology"" Watch ""Why does Javaranch use a CGI based backend instead of Java technology"" New topic
Author

"Why does Javaranch use a CGI based backend instead of Java technology"

Ben Souther
Sheriff

Joined: Dec 11, 2004
Posts: 13410

"Why does Javaranch use a CGI based backend instead of Java technology"

From the JavaRanch FAQ:
Why does Javaranch use a CGI based backend instead of Java technology
When Javaranch started there wasn't any forum software available that was based on Java technology. We are in the process of developing our own java based forum software.


Is this already being done, or just being looked at?

I was thinking this would make a great OS project.
  • Create a new forum for gathering requirements and building specs.
  • Invite people from the OO/UML forum to architect it.
  • Invite the folks in the performance forum to design an optimal caching strategy.
  • Invite folks from the JDBC, Servlets, and, JSP forums to start building it.
  • Then, invite the people in the HTML/Javascript forumn to add the look and feel.


  • If your hosting company will not allow a CVS server, we could use SourceForge.net.
    The initial commiters list could be decided by the bartenders/sheriffs.

    There's a lot of talent gathered around this site. It would be interesting to see if it can be "mustered up" around one project.
    [ January 16, 2005: Message edited by: Ben Souther ]

    Java API J2EE API Servlet Spec JSP Spec How to ask a question... Simple Servlet Examples jsonf
    Lasse Koskela
    author
    Sheriff

    Joined: Jan 23, 2002
    Posts: 11962
        
        5
    Originally posted by Ben Souther:
    Is this already being done, or just being looked at?

    We already created a Sourceforge project by the name of MVNSaloon for forking MVNForum and customizing that according to our specific needs. There hasn't been much activity in a while, though, and the MVNForum codebase apparently isn't the prettiest/simplest there is (I've only taken a quick peek inside). Another open source forum software we've been meaning to look into but haven't, yet, is JForum.

    Having said that, thank you for reviving the discussion on this topic. Maybe it's time to re-evaluate our options and put another stone rolling down the hill...

    It sure would be wonderful to see this community pull together and create something as big and concrete as a forum software capable of serving tens of thousands of users worldwide and demonstrating good software development practice.


    Author of Test Driven (2007) and Effective Unit Testing (2013) [Blog] [HowToAskQuestionsOnJavaRanch]
    Ernest Friedman-Hill
    author and iconoclast
    Marshal

    Joined: Jul 08, 2003
    Posts: 24183
        
      34

    Mvnsaloon is mostly feature-complete, and we're fairly sure it's robust enough for use. For about a year (!), we've been using it for some in-house forums that are used for book technical reviews and software project discussions.

    But there are several things holding us back from implementing it in place of UBB.

    The first is that the personal lives of both lead developers (here I mean Tom and I) conspired to intrude. Neither of us has had much time to devote to the project over the last year.

    The second is that we don't know how scaleable it is, and the developers (by which I mostly mean me now) don't really know how to do sufficient load testing. The persistence layer is, as Lasse says, kind of ugly, and it's not as efficient as it might be. We think it hits the database too much, but without load testing, it's hard to say how much "too much" actually is.

    Third, the administrative control panel interface is messy. Some tasks that should be easy -- particularly, assigning moderators to forums -- are much harder than they should be.

    Fourth, and perhaps most important, there is the small matter of migrating all the existing JavaRanch data to the new software. Dozens of forums, more than 80,000 user records, some untold number of millions of posts, and all the links and relationships between them have to be preserved. Not only that, but the data is a moving target. It would take some number of days to transfer all the information, but during that time, more information will be added. Working out the logsistics here would be tricky. How do we preserve links when the URL scheme will change? I would say that this last item is by far the largest barrier we're facing. The scalability thing is the second most important.

    Starting a new software project would certainly be fun, but it's not what needs to be done.


    [Jess in Action][AskingGoodQuestions]
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    Starting a new software project would certainly be fun, but it's not what needs to be done.

    Agreed. That's why I started by asking.

    Fourth, and perhaps most important, there is the small matter of migrating all the existing JavaRanch data to the new software.

    How is it currently stored?
    Flatfiles?
    Ernest Friedman-Hill
    author and iconoclast
    Marshal

    Joined: Jul 08, 2003
    Posts: 24183
        
      34

    Originally posted by Ben Souther:

    How is it currently stored?
    Flatfiles?


    Jim Yingst is the UBB expert, but apparently, yes. UBB doesn't use a database, if you can believe that.
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    Flat files were my first guess.

    From browsing the source, it looks like you're planning on going with postgres. Has anyone started on a data transformation script yet?
    There are no foreign key constraints in the schema so the data could actually be written directly to postgres, one table at a time, as opposed to writing a huge, interim sql script. The links can be modified in the process.

    Let me know if you're interested in another set of hands.
    -Ben
    Ernest Friedman-Hill
    author and iconoclast
    Marshal

    Joined: Jul 08, 2003
    Posts: 24183
        
      34

    You're certainly welcome to pitch in if you'd like! Let's see. I guess you could see if Jim could supply you with sample UBB data, and it sounds like you're already looking at the software so you can see what the database format is.

    We don't want mvnsaloon (which is actually going to be renamed; there are already a couple of candidate names) to be postgres-dependent, but that would probably be our deployment database, so doing the data conversion in a postgres-specific way would be fine if that makes it easier.
    Jeroen Wenting
    Ranch Hand

    Joined: Oct 12, 2000
    Posts: 5093
    As to having a moving target, I don't think the regular members would mind much if you took the saloon offline for a weekend (and most irregulars would never find out, being irregular after all).


    42
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    If the conversion program works the way I want, it shouldn't take more than an hour or so.

    Either way, that bridge is still a little ways off.
    [ January 21, 2005: Message edited by: Ben Souther ]
    Jim Yingst
    Wanderer
    Sheriff

    Joined: Jan 30, 2000
    Posts: 18671
    Yes, UBB stores all post data in text files. Ben, I'll send you a few samples this evening. As for disabling the saloon during migration - I believe we could migrate one forum at a time, disabling it during the migration. So even if the whole process took several days, the downtime for any one forum probably wouldn't be too big a deal.


    "I'm not back." - Bill Harding, Twister
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    If the conversion is scripted, I can't see the whole process taking more than an hour or two, even for the whole site. We can make as many dry runs (run conversion, test new app, blow away postgres db, repeat) as necessary before the actual switch over. Unless I'm missing something.

    Jim, will the java version be on the same server that the current version is running on? If not, will it be located at the same facility? The one thing that would slow things down would be the need to push the whole thing across the internet.

    Do you have any ballpark figures on how big the current database (collection of flat files) is?
    Jim Yingst
    Wanderer
    Sheriff

    Joined: Jan 30, 2000
    Posts: 18671
    Seems to be taking up a couple gigs, currently. I know not all that is "real" data - some is cache.

    I'm not sure if we'll end up going to a different machine or not. That's TBD I guess. But I'd call it a significant possibility.

    More details later.
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    Originally posted by Jim Yingst:
    Yes, UBB stores all post data in text files. Ben, I'll send you a few samples this evening. As for disabling the saloon during migration - I believe we could migrate one forum at a time, disabling it during the migration. So even if the whole process took several days, the downtime for any one forum probably wouldn't be too big a deal.


    Jim,
    Did you ever get a chance to send anything?

    Also, I just built the project from the CVS Head off of Sourceforge and have it running on my machine. It still has the generic look and feel. Have you guys checked in any of your formatting, images etc?..
    I'm now wondering if I grabbed the right project.
    cvs -z3 -d :p server:anonymous@cvs.sourceforge.net:/cvsroot/mvnsaloon co -P mvnsaloon
    [ January 21, 2005: Message edited by: Ben Souther ]
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    I take that back. It was just the admin side that didn't have the JR look and feel.
    Jim Yingst
    Wanderer
    Sheriff

    Joined: Jan 30, 2000
    Posts: 18671
    Ben, I just now e-mailed you some stuff.
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    Thanks, Jim.
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    Show signature and Disable Smilies are checked in this post.
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    Both are unchecked in this post
    Ben Souther
    Sheriff

    Joined: Dec 11, 2004
    Posts: 13410

    See what A|| of these mean...
     
     
    subject: "Why does Javaranch use a CGI based backend instead of Java technology"
     
    Similar Threads
    Why is Javaranch written using CGI Scripts?
    CGI vs Servlets
    Universal Project to teach IT
    Re: new forum software
    javaranchs' CGI implementation over JSP