简体   繁体   中英

Dynamic Update of web application

Currently I'm working on a business plan for a new company I'm looking into, I have been made the lead programmer within this new venture and so I have been coming up with some ideas for the project.

Once of the ideas that I have had has got me a little stumped in the best way to handle it, the idea is to have a central management server dedicated to the control of client applications.

Basically we have ~1K Client's all running our client application on there server, When we issue a patch for the system the main server will connect to each client and get it's basic information such as version, disk space etc., then we push the new updates accordingly.

Now I know that I can simply have a script that overwrites the files but that's too un-professional and it will not suffice, so basically what I am asking is:

What ways is there for me to update ~1K client applications taking into consideration important facts such as server loads, version control, update history?

One thought that I have had is to use something like GitHub to manage the revisions but I'm not massively knowledgeable of how to go about that.

Any advice is appreciated, kind regards.

I would guess that the best way to handle such situation would be to build the update mechanism into the client app itself. Then, when the update is ready, you can have your main mgmt server connect to clients and notify them that the update is available.

Rather than overwriting the files from the server without any regard for what the clients may be doing at the time, this way each client would then be able to get the update and install it when it is best to do so.

The sequence would then be like this:

  1. Server notifies client that an update is available
  2. Client completes whatever task it's doing
  3. Client retrieves and installs update
  4. Client notifies the server of the installation status (success/failure) and any errors that have occurred during the installation
  5. Server records the installation info in some sort of history.

We have utilised this mechanism in one of the projects I worked on a little while ago, although there were only a handful of clients (less than 20) - and it worked very well.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM