(:h2 "Quickstart")
(:ul
(:li "The easiest way to install is to use the Debian GNU/Linux operating system. Using the testing or unstable distributions, you can give the command:"
- (:p
- "apt-get install libapache-mod-lisp cl-modlisp cl-kmrcl")
- (:p
+ (:div
+ (:tt "apt-get install libapache-mod-lisp cl-modlisp cl-kmrcl"))
+ (:div
"If you are not using Debian, you will need to download and install
mod_lisp, cl-modlisp, and cl-kmrcl manually."))
(:li
"Add something like the below to httpd.conf and then restart apache"
- (:br)
- "LispServer 127.0.0.1 20123 \"localhost\""
- (:br)
- "AddHandler lisp-handler .lsp")
+ (:div (:tt "LispServer 127.0.0.1 20123 \"localhost\""))
+ (:div (:tt "AddHandler lisp-handler .lsp")))
(:li
"Start your Lisp implementation and load cl-modlisp with"
- (:br)
- "(asdf:operate 'asdf:load-op 'modlisp)")
+ (:div (:tt "(asdf:operate 'asdf:load-op 'modlisp)")))
(:li
"Start the server with"
- (:br)
- "(ml:modlisp-start :port 20123)")
+ (:div (:tt "(ml:modlisp-start :port 20123)")))
(:li "Try some demostration pages"
- (:br)
- "links http://localhost/fixed.lsp"
- (:br)
- "links http://localhost/debug.lsp")
+ (:div (:tt "links http://localhost/fixed.lsp"))
+ (:div (:tt "links http://localhost/debug.lsp")))
(:li "Shutdown the all cl-modlisp servers with"
- (:br)
- "(ml:modlisp-stop-all)"))
+ (:div (:tt "(ml:modlisp-stop-all)"))))
+ (:h2 "Process Models")
+ (:p "There are two process models")
+ (:ul
+ (:li (:div (:b "Each connection spawns a new thread"))
+ (:div "This is the default model. Each new connection to listener socket spawns a new connection. This allows for an arbitrary number of concurrent connections. This has advantages if the workers require a long execution time."))
+ (:li (:div (:b "Fixed pool of workers"))
+ (:div "This model is selected by passing the number of worker processes to "
+ (:tt "init/listener")
+ " with the keyword "
+ (:tt "number-fixed-workers")
+ ". This model has a lower overhead since new processes are not created and destroyed with each connection. It has advantages when the workers have a short execution time.")))
+
(:h2 "Usage")
- (:p "The demo.lisp file for some examples of using cl-modlisp.")
+ (:p "The demo.lisp file for examples of using cl-modlisp.")
)))