ruby socket通讯

创建server
require 'socket'
include Socket::Constants

socket = Socket.new(AF_INET, SOCK_STREAM, 0)
sockaddr = Socket.sockaddr_in(9999, 'localhost')
socket.bind(sockaddr)
socket.listen(5)
begin
  while 1 do
  	client_socket, client_sockaddr = socket.accept_nonblock
		puts "The command is #{client_socket.readline.chomp}"
		flag = rand(10)
		result = flag % 2 == 0 ? '\{\"status\" = \"false\"\}' : '\{\"status\" = \"true\"\}'
  end
rescue Errno::EAGAIN, Errno::ECONNABORTED, Errno::EPROTO, Errno::EINTR
	IO.select([socket])
	retry
end


创建client
require 'socket'
client = TCPSocket.open('localhost', '9999')
client.send("oracle\n", 0) # 0 means standard packet
client.close

你可能感兴趣的:(java,oracle,socket,Ruby)