わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

サーバ作り

明日の演習のためのサーバを作りました.Rubyで.
共通するのは,

  • 一度起動したら,終了のシグナルを送らない限りプロセスは残ります(演習課題としてCで書いてもらうサーバは,1回acceptして通信したら,サーバは終了することにしています).
  • 5秒待ってもメッセージが来なかったら,サーバ側から接続を閉じます.
  • どこからアクセスがあったかについては,ログに残します.

これらの機能を持つサーバを作るため,ライブラリのsocket,timeout,logger,それと組み込みモジュールのSignalを勉強し(直し)ました.
サーバプログラムは3種類作りました.3種類とも,クライアントから1行のメッセージを受け取って,何かして返します.そして接続を閉じます.返す内容が違いまして,

  • 一つめのサーバは,そのまま返します.
  • 二つめのサーバは,受け取ったメッセージの部分文字列をランダムに作って返します.
  • 三つめのサーバは,受け取ったメッセージを100回繰り返して返します.

いろいろテストした限り,うまく動いています.では明日に使うとしましょう.パーミッションは700にして,教員マシンでのみサーバを立ち上げましょう….
おまけ.本日のドジ:

 #!usr/bin/env ruby