2012-02-13 2 views
0

일부 cronjob에서 생성 된 데이터를 표시하는 Rails 앱이 있습니다. 이 앱은 많은 리소스가없는 임베디드 장치에서 호스팅됩니다. 레일 방식으로 여러 가지 방법을 테스트했습니다. cronjob이 실행될 때 (작업을 수행하는 작업에 wget을 호출하는 경우) 레일을로드해야하거나 (리소스가 너무 많이 필요함) 잡종이 차단 되었기 때문에 각각의 중 하나가 실패합니다. 이 장치에서 하나의 mongrel 인스턴스로 제한되므로 특히 wget-method는 치명적입니다.Rails-DB에 외부로 쓸 때 고려해야 할 사항은 무엇입니까?

그래서 기본 * nix OS에서 기본 cronjob을 실행하고 그 결과를 레일에 전달하는 것이 가장 자원 효율적인 방법이라는 것을 알았습니다. 현재이 작업은 cronjobscript의 데이터를 레일 데이터베이스의 특수한 "hand on"테이블에 직접 작성하여 수행됩니다.

레일의 "모델"을 사용하지 않고 데이터베이스에 쓸 때 고려해야 할 사항은 무엇입니까? 어떤 함정이라도? updated_at 필드는 어떻습니까? 레일스가 데이터를 다시로드하도록 날짜를 업데이트해야합니까?

답변

1

제 생각에는 특별한 고려 사항이 필요하지 않습니다.

레일을 다시로드하기 위해 updated_at 열을 업데이트 할 필요가 없습니다. 재로드 여부에 대한 결정은 전적으로 Rails 코드에 달려 있습니다. 레일스는 클러스터링을위한 일반적인 방법이므로 데이터베이스에 대한 직접 액세스를 처리 할 수 ​​있어야합니다.

관련 문제