We have to develop an application like Google Draw, not exactly the same. The purpose would be developing a Web APP Development IDE.
User base is expected to be high and for public use primarily.
Platform : C# ASP.NET with MS SQL 2008 (I cant have a say on changing the platform anyways:( )
So assuming when a user drag-n-drops(accomplished with Javascript) a textbox(for example) onto the design pane we need to place equivalent HTML code for the textbox and the design pane gets updated. So for this kind of approach,
- Is it good to have a AJAX post to server for every drag-n-drop the user makes, so the state is maintained in server side.
Cons: Server getting loaded high when the user counts raises up.
or
- Is it good to have HTML code generation in the client side and queue the user actions and post in a frequent time interval?
Cons: The user may loose cached(persistent) data when browser data is cleared.
I am not sure whether there any other approach than both the above, both the above has its own pros and cons, but please advice on the same, it will be greatly helpful.
Thank you.
Start with the first option. Move to the second when the user base has grown and you notice delays (if you do so). It should be a small refactor process if you structure the client side properly.
You could also use HTML5 offline storage and sync when you can = no data is lost.