2012-07-14 4 views
7

낮은 사양의 장난감 서버에 Haskell 웹 응용 프로그램을 배포하는 방법을 찾고 있습니다. 서버 사양 :낮은 사양의 서버에 Haskell 웹 응용 프로그램을 배포

  • OS 데비안 안정 (압착) I386
  • CPU : 1 GHz의 펜티엄 IV
  • RAM : 512메가바이트
  • 스토리지 (/var 장착) 5백12메가바이트 컴팩트 플래시, 4 (/에 장착) GB의 USB 컴팩트 플래시는

서버는 (그것은 주로 자신, 친구, 가족 구성원에 의해 사용되는) 많은 트래픽을 볼 수 없습니다, 나는 내 생활에서 실행을 감당할 수있는, 잘 실행 방이 있기 때문에 완전히 침묵하고 거의 전력을 소모하지 않습니다 (약 10W 유휴, 40W 피크).

분명히, 전체 Haskell 플랫폼을 설치하고 서버에서 컴파일하는 것을 피하고 싶습니다. 디스크 공간이 상당히 빨리 소모되어 컴파일 속도가 느려지므로 저장 속도가 느려집니다. 내 개발 컴퓨터에서 바이너리를 배포 할 수는 없지만, 바이너리는 amd64를 테스트하기 때문에 바이너리는 호환되지 않을 것이다. 내 아이디어가 지금까지 :

  • 은 서버에 C 소스를 복사
  • 그림 밖으로 개발 시스템에 C로 컴파일 AMD64
  • 에 I386 바이너리를 구축 할 수있는 방법을 구축하는 데비안/i386을 가진 VM을 설치 , 거기에 빌드를 완료하십시오 (서버에 gcc 또는 clang 설치 가능).
  • 다른 아이디어?

어느 것이 가장 유망한가요? 옵션 2와 3도 가능합니까?

또한 라이브러리에 대해 조금 염려합니다. 응용 프로그램은 libcairo와 같은 몇 가지 시스템 라이브러리에 의존합니다. 서버에 설치하는 것은 문제가되지 않지만 특히 옵션 2의 경우이 기능이 작동하는지 궁금합니다 (라이브러리 버전 등)

+2

옵션 1을 사용합니다. – dave4420

답변

3

haskell을 사용하지는 않았지만 이전에는 비슷한 요구 사항이있었습니다. 가장 간단한 것은 타겟 시스템과 동일한 버전의 데비안으로 VM을 설정하는 것입니다. 라이브러리 버전 관리 등에 대해 걱정할 필요가 없음을 의미합니다.

관련 문제