Ruby / Свой сервер

В капиталистических странах не так давно появилось отличное движение, называемое Rails Bridge. Оно призвано популяризировать Ruby и Ruby on Rails среди подрастающего поколения и привлечь внимание уже состоявшихся разработчиков, которые по тем или иным причинам не пишут на самом красивом языке программирования нашего века (спорить бесполезно, друзья, бесполезно!).



Итак в поддержку этого течения и с надеждой организовать подобное для русскоговорящих коллег (ну и будущих колег конечно :) ) статья (интересующиеся этим — стучитесь ко мне, поговорим):


Внимание! Статья предназначается для новичков и просто любопытствующих.



image


Пишем сервер



Я бы хотел показать насколько просто написать сервер на Ruby. Никакой особой пользы от нашего сервера не будет, но зато сами, руками :)


Итак приступим:


require 'socket'

server = TCPServer.new '127.0.0.1', 3456 # Запускаем наш сервер



Подключаем библиотеку socket и создаем TCP сервер который будет слушать соединения по локальному ip и порту 3456.



Теперь нам нужно организовать цикл в котором мы будем принимать запросы:


while session = server.accept
  # ...
end



Все что мы делаем тут — опрашиваем наше соединение на наличие новых запросов. Если сеть отвечать не будет — сервер тихонько завершит свою работу. Значит что то с сетью не ладное :)



image


AD: