2011-01-06 2 views
2

레일 프로젝트가 있습니다. 나는 Site와 Server를 스캐 폴딩했고, 그들의 모델은 아래에있다. 새 사이트가 만들어지면 url이 가리키는 IP를 가져 와서 올바른 서버에 연결하려고합니다. 이 데이터가 최신인지 확인하기 위해 cronjob 또는 EventMachine을 실행합니다. 이렇게하면이 데이터가 최신 상태로 유지되고 사용자는이를 유지 관리 할 필요가 없습니다.레일에서 사이트 IP를 가져 오는 방법

질문 : 어떻게해야합니까? 레일스에만 URL이 있으면 사이트 IP를 가져 오는 방법은 무엇입니까?

Ruby 1.9.2에서 Rails 3를 실행 중입니다.

Table name: sites 
url  :string(255) 
name  :string(255) 
server_id :integer #this is a foreign key to a server 

Table name: servers 
ip   :string(255) 
name  :string(255) 

답변

8

ruby ​​stdlib의 일부인 Resolv을 살펴보십시오.

Resolv는 Ruby로 작성된 스레드 인식 DNS 해결 프로그램 라이브러리입니다.

>> require "Resolv" 
=> true 
>> p Resolv.getaddress "google.com" 
"209.85.149.147" 
+0

정말 고마워요. 나는이 아침 내내 다음과 같은 것을 찾고있다. p –

+0

환영합니다. – miku

관련 문제