views:

19

answers:

1

We are moving our Delphi application to a new environment – it will be .NET. Some parts of an app will be moved to distributed processing, some will be moved to web servers. Therefore, this is an architecture shift from monolith desktop application to distributed system. Migration of current Delphi code to .NET is an issue itself (some code will have to be rewritten in C# from scratch), but now we are evaluating feasibility of general design.

Currently, our application ships with small, Delphi-built webserver that allows some remote access via http. In-house-developed Ajax framework exists, but will be probably switched to something new. There is no problem with “full” version, since we will use IIS. There is a problem with “Lite” version, since this will be dedicated to smaller customers that do not have a machine for IIS, and even cannot host IIS on workstations (using Home editions of Windows). What options do we have? Do you have any experience? Any DO’s and DONT’s ? As far as now I know that there are two main options:

  • Cassini – some open source

  • IIS Express – is in beta now

A: 

This will likely draw some fire for not addressing your specific needs, but here goes...

I would evaluate going to Linux and building a LAMP application. My preferences would be:

  • Ubuntu
  • Nginx as the webserver
  • Python (with Pylons or Django as the web framework)
  • PostgresSQL (or SQLite) as the database (with SqlAlchemy as the ORM)
  • jQuery for front end UI and AJAX, etc.

The advantages are low cost (essentially zero), rapid development, lightweight (runs on minimal systems), easy to upgrade & maintain.

I've done this successfully many times.

Hollister