16.14. Automatyczne wykrywanie usług DRb z wykorzystaniem biblioteki Rinda

Podziękowania dla Jamesa Edwarda Graya II

Problem

Chcemy używać kodu Ruby w sieci bez konieczności kodowania „na sztywno” adresów serwerów.

Rozwiązanie

Korzystając ze standardowej biblioteki języka Ruby Rinda, można łatwo stworzyć środowisko sieciowe dla klientów i usług, niewymagające konfiguracji. Dzięki metodom biblioteki Rinda można wykrywać usługi DRb bez podawania adresów. Wystarczy uruchomić serwer RingServer w lokalnej sieci:

#!/usr/bin/ruby # rinda_server.rb require 'rinda/ring' # dla klasy RingServer require 'rinda/tuplespace' # dla klasy TupleSpace DRb.start_service # Utworzenie obiektu TupleSpace zawierającego nazwy usług i uruchomienie serwera. ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.