Normally a CGI program is started for each call to an internet-server. When
those CGI programs are bigger than nothing this can flood the computer with
data and it is hard to keep persistent data. Often CGI programs do calls to a
database management system that stays in the memory of the computer. My
intended architecture is similar to this. The CGI is a very small program that
only collect data on the request and sends it to the main program. This
program reads the calls and returns the resulting html code back as an answer
to the calling CGI program.
Data stays in memory
Now the data can stay in memory of the PC and can be saved on fixed
points in time to prevent the log file from becoming too large. The database
should also be stored and restarted when new versions of it are created. The
data files created by the database should be translated to the new structure
of the database and then the new program can be started.
Online change to database structure
In the future an interpreter
of the language it planned and then the database can be altered when it stays
in memory of the computer. The changed routines are interpreted but the unaltered
routines can still be called.
This will result in a slower database but when it is recompiled the
performance is online again. This version of the database should contain all
the code of the language so it is not recommended as a production version but
more as an interactive development environment that will result in a much
leaner end product.