2009-10-15 2 views
1

본질적으로 직렬 포트 라이브러리 (SerialPort 라이브러리 포함)를 통해 값을 쓰고있는 스크립트를 무기한으로 돌리고 싶습니다. backticks 내 스크립트를 실행할 수 있습니까?내 레일 앱 외부에서 Ruby 스크립트를 실행하고 있습니까?

마지막으로 가장 큰 걱정은 스크립트가 실행되는 동안 내 레일 앱에 대한 요청을 차단한다는 것입니다. 나는 그것이 자신의 프로세스임을 자각하기를 원합니다.이 백그라운드 작업이나 Workling/Starling 솔루션 중 하나를 사용하지 않고 이것이 가능합니까?

+0

레일 앱의 모델/코드를 사용하게 될 예정입니까? –

답변

2

상자에 대한 셸 액세스 권한이있는 경우 ./script/runner 'ValueWriter.run'을 사용하여 레일스 환경에서 코드를 실행할 수 있습니다.

god 또는 monit을 사용하면 항상이 프로세스가 실행 중 (충돌시 다시 시작)되도록 할 수 있습니다.

또는 스크립트 시작시 include 'config/environment'을 사용하는 것이 좋습니다.

또 하나 더 나은 스크립트/러너를 사용하여 Daemons에 포장하십시오.

0

백틱을 통해 프로그램을 시작하면이를 호출 한 프로그램이 차단됩니다. 당신이 찾고있는 것은 Drb입니다. This link은 알아야 할 모든 것을 다루어야합니다.

관련 문제