Ruby提供了Socket库,允许你进行底层的套接字(socket)编程。以下是一个简单的例子,演示如何使用Ruby的Socket库创建一个基本的TCP服务器和客户端。

TCP服务器:
require 'socket'

server = TCPServer.new(12345)  # 监听端口 12345

loop do
  client = server.accept     # 等待客户端连接
  client.puts 'Hello, client!'
  client.close
end

TCP客户端:
require 'socket'

client = TCPSocket.new('localhost', 12345)  # 连接到服务器

puts client.gets  # 从服务器接收消息
client.close

这是一个简单的例子,服务器接受客户端连接后向客户端发送一条消息。在实际应用中,你可能需要添加更多的逻辑来处理通信和错误。

请注意,上述代码是同步的,每次连接都会阻塞,只能处理一个连接。在实际应用中,你可能需要使用多线程或非阻塞IO来处理多个连接。

在更复杂的网络应用中,你可能会使用高级框架,例如EventMachine或Celluloid,来简化异步编程。

请注意在生产环境中保护代码免受网络攻击,并使用安全的通信协议(例如TLS/SSL)以加密通信内容。


转载请注明出处:http://www.zyzy.cn/article/detail/6475/Ruby