Common Lisp: ¿Cuál es la mejor manera de utilizar las bibliotecas en un entorno de alojamiento compartido?

StackOverflow https://stackoverflow.com/questions/728500

Pregunta

Yo estaba pensando en esto el otro día y quería ver lo que la comunidad así que tenía que decir sobre el tema.

Tal como está ahora Common Lisp es conseguir un poco de atención como una plataforma de desarrollo web, y con buena razón (de la que estoy seguro de que ya está convencido).

Me preguntaba cómo se podría ir sobre el uso de una biblioteca en un entorno compartido de una manera similar a PHP.

Si he creado algo así como un SBCL interperter para interpretar los archivos FasL como Python o PHP, lo que sería la mejor manera de utilizar las bibliotecas (como CLSQL por ejemplo).

La mayoría vienen como asdf bibliotecas instalables, pero sería una cantidad estúpida de los gastos generales para requerir e instalar la biblioteca de cada uno y cada vez que se hace una petición.

Teniendo en cuenta que es de alojamiento compartido; ¿sería posible para ..

1) instalar el sistema de ancho copias de las bibliotecas para su uso en aplicaciones; reduce el espacio, pero puede haber problemas con el uso de la versión correcta de la biblioteca.

2) Permitir a los usuarios (a través de un panel de control) para instalar copias locales por sí mismos; más espacio, no hay problemas de versión.

3) Diles que lo envuelve en un módulo y cargarlo en la demanda como Python lo hace (no estoy seguro de si / cómo esto se puede hacer con Lisp). Sólo ser capaz de cargar una biblioteca para su uso sería la mejor opción, pero no creo que muchos de ellos están diseñados para ser utilizados de esta manera.

De todas formas, mirando a escuchar sus opiniones, gracias.

¿Fue útil?

Solución

Hay dos maneras me gustaría ver que:

  1. iniciar un Lisp para cada solicitud

    De esta manera, sería mucho mejor que el Lisp es una imagen guardada con todas las bibliotecas y los datos necesarios cargados. Sin embargo, este enfoque no parece muy prometedor para mí.

  2. ejecutar un Lisp y dejar un frontend (navegador web, otro servidor web, ...) conectarse a él

    De esta manera usted puede iniciar una imagen guardada o una Lisp que carga un montón de cosas una vez y sirve las solicitudes.

Me gusta usar imágenes / aplicaciones guardadas en un escenario de implementación. Ellos se pueden iniciar de forma rápida, contiene todo el software necesario y son independientes de los cambios de la biblioteca.

Por lo que podría ser útil para proporcionar imágenes de Lisp pre-configurados que contienen el software necesario o dejar que el usuario configurar y guardar una imagen.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top