Lisp comum: Qual é a melhor maneira de usar bibliotecas em um ambiente de hospedagem compartilhada?

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

Pergunta

Eu estava pensando sobre isso outro dia e queria ver o que a comunidade SO tinha a dizer sobre o assunto.

Tal como está agora Lisp Comum está recebendo alguma atenção como uma plataforma de desenvolvimento web, e com razão (da qual eu tenho certeza que você já está convencido).

Eu estava pensando como um iria sobre como usar uma biblioteca em um ambiente compartilhado de uma forma semelhante ao PHP.

Se eu criar algo como SBCL como um interperter para interpretar arquivos FASL como Python ou PHP, qual seria a melhor maneira de bibliotecas de uso (como clsql por exemplo).

A maioria vem como asdf bibliotecas instaláveis, mas seria uma quantidade estúpida de sobrecarga para exigir e instalar a biblioteca cada vez que um pedido é feito.

Tendo em mente esta é para hospedagem compartilhada; seria melhor ..

1) instalar um sistema de largura de cópias das bibliotecas para utilização em aplicações; reduz o espaço, mas pode haver problemas com usando a versão correta da biblioteca.

2) Permitir que usuários (através de um painel de controle) para instalar cópias locais por si mesmos; mais espaço, sem problemas de versão.

3) Diga-lhes para envolvê-lo em um módulo e carregá-lo sob demanda como Python faz (não tenho certeza se / como isso pode ser feito com Lisp). Basta ser capaz de carregar uma biblioteca para uso seria a melhor opção, mas eu não acho que muitos deles são projetados para ser usado desta forma.

De qualquer forma, olhando para ouvir suas opiniões, obrigado.

Foi útil?

Solução

Há duas maneiras de eu olhar para ele:

  1. iniciar um Lisp para cada solicitação

    Desta forma, seria muito melhor que o Lisp é uma imagem salva com todas as bibliotecas e dados necessários carregados. Mas essa abordagem não parece muito promissor para mim.

  2. executar um Lisp e deixar um frontend (web browser, outro servidor web, ...) se conectar a ele

    Desta forma, você pode começar uma imagem salva ou um Lisp que carrega um monte de coisas uma vez e serve os pedidos.

Eu gosto de usar imagens / aplicativos salvos em um cenário de implantação. Eles podem ser rapidamente iniciado, contêm todo o software necessário e são independentes de mudanças da biblioteca.

Por isso, pode ser útil para fornecer imagens pré-configuradas Lisp que contêm o software necessário ou deixar que o configure usuário e salvar uma imagem.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top