首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

EventMachine兑现简单的服务器和客户端

2012-11-09 
EventMachine实现简单的服务器和客户端EventMachine是一个为ruby提供的事件驱动模型网络编程库, 就像Twist

EventMachine实现简单的服务器和客户端

EventMachine是一个为ruby提供的事件驱动模型网络编程库, 就像Twisted和Python一样. 可以很容易的实现一个服务器和客户端通信的例子.

?

1. 首先安装eventmachine

gem install eventmachine

?

2. 创建一个服务器

#!/usr/bin/env rubyrequire ‘rubygems’require ‘eventmachine’module EchoServer    def receive_data(data)    send_data(data)  endendEventMachine::run do  host = ’0.0.0.0′  port = 8080  EventMachine::start_server host, port, EchoServer  puts "Started EchoServer on #{host}:#{port}…"end

?

3. 创建一个客户端

#!/usr/bin/env rubyrequire ‘rubygems’require ‘eventmachine’module HttpHeaders   def post_init    send_data "GET /\r\n\r\n"    @data = ""  end    def receive_data(data)    @data << data  end    def unbind    if @data =~ /[\n][\r]*[\n]/m      $`.each {|line| puts ">>> #{line}" }    end        EventMachine::stop_event_loop  endendEventMachine::run do  EventMachine::connect ‘127.0.0.1’, 8080, HttpHeadersend
?

热点排行