Slashdot Mirror


Online Patching Systems?

Master_Flash asks: "My company is preparing to distribute an online Windows application that will change over time (don't they all?). We been evaluating online patch systems. There are a number of commercial applications out there. Some look good: RTPatch from PocketSoft, ASTA Binary Patcher, and Necromancer's FlashUpdate. Has anyone had a positive experience with these or other applications? One other idea we had was to use CVS as a patching system. While CVS isn't technically a binary patch it does a great job at checking on which files need to be updated. Most of the files we have are small and change infrequently, so CVS could work. Opinions and guidance are welcome."

5 of 28 comments (clear)

  1. Not CVS! by moosesocks · · Score: 4, Insightful

    CVS is overly bandwidth and cpu-intensive both client-side and server side. I believe that there are various forks of it which are more efficent.

    But, I digress. CVS was not designed for this. Rsync was designed almost percisely for something like this. It only transferres the parts of the file which have been modified, and compresses it as well.

    But, why not simply use installshield or a similar tool like all other windows developers and just release periodic updates (which fits the model for windows software, which, IMO is quite diferent than the linux model (make many releases and many patches, while windows and MAC lean twoard making a few periodic releases, only patching where there is a severe flaw).

    I'm not saying that one model is any better, i'm just saying that you need to keep consistancy.

    --
    -- If you try to fail and succeed, which have you done? - Uli's moose
  2. MSI and MSP by stonebeat.org · · Score: 3, Insightful

    For windows env I would use MSI technology. MSP can be used to deply patches. Wise has lot of good easy to use applications designed for deployment of MSIs and MSPs.

  3. this is a subject by Deternal · · Score: 3, Insightful

    If it's online, wouldn't java webstart do the trick? :D

    Anyway another obvious way is for the server to push updates to the client when the admin approves it (like Domino/notes does).

    Or have a central ressource and the client checks for updates (like Azureus).

    Basically the best way is making it easy on bandwith, for admins and for users - the domino/notes approach does this (set up on server, approve, client gets notify to update - a few tricks are pushed to the client, client restarts and voila new version).

    Anyway, the 'thing' you are building will dictate what kind of system you should use. Just don't expect a corporate admin to go around 200 machines on foot because you made some kind of lame updater which only works with admin privs, because they simply wont, instead they'll push for "the better version from company Y".

  4. I call "Bullshit". by adjuster · · Score: 2, Insightful

    Forgive me-- if the audience for your application is strictly home users, then disregard everything I say below. If, however, your audience includes corporate LAN's, listen the fuck up.

    I shudder every time I hear an app. manufacturer talking about their "innovative" online patch delivery systems. Frequently, "innovative" online patch delivery systems cover up for shitty software QA.

    I am a network administsrator. I have to keep PC's, servers, and the applications running therein working properly. I have a lab. I test patches in that lab. I make sure that things continue to work. I don't want you to patch your fucking app without going thru me.

    It's a 'doze application. Package the application as an MSI. Expect that it will be deployed with IntelliMirror. Issue MSP's when you need to patch the application. Problem solved.

    --
    The Attitude Adjuster, I hate me, you can too.
  5. port blocking by iamcadaver · · Score: 2, Insightful

    Port blocking is RAMPANT now.

    It *has* to work over either port 80 or 443, or it is a non-viable option. Period.

    I'd go with xdelta or rsync, compiled/configured for port 443, and a good web frontend.

    --
    Before I part with'em: two pennies weigh ~4.996+/-0.014g, have a zinc core, and the face of Lincoln. You can keep 'em.