看板 Ruby 關於我們 聯絡資訊
環境: server1: ruby 1.8.6 (2007-09-24 patchlevel 111) [amd64-freebsd7] server2: ruby 1.8.5 (2006-08-25) [amd64-freebsd6] 狀況: server1傳送不同長度的資料給server2 但資料長度與傳輸時間呈現非線性的關係 我想不出合理的解釋 附錄: code on server1: require 'socket' 1.upto(10) {|i| text = "a" * i*(10**7) start = Time.now bob = TCPsocket.open(ip, port) bob.write("#{text}\n") bob.close puts Time.now - start } code on server2: require 'socket' server = TCPServer.new(ip, port) while (alice = server.accept) start = Time.now tmp = alice.gets puts Time.now - start end #無論server1或server2印出的結果 傳輸的資料長度與時間 都呈現很明顯的非線性關係 #Why? #Thanks. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.109.16.211 ※ 編輯: wwwc 來自: 140.109.16.211 (06/20 17:01)
shelary:1.資料量太小.不足以算出客觀數據 06/20 17:45
shelary:2.網路塞車或CPU佔用或其它與Ruby本身無關的問題 06/20 17:46
shelary:你應該是要送個 5MB 和 10MB 然後再比較 2 者 06/20 17:47
godfat:你的 server1 根本就是 client 吧? 06/20 19:22
godfat:不是很明白你想表達什麼?有統計報表嗎? 06/20 19:22
wwwc:server1是client沒錯 只是取個名字 06/20 22:22
wwwc:這樣的資料量已經要傳送好幾十秒甚至超過一分鐘 還不夠大嗎? 06/20 22:24
wwwc:已排除CPU佔用的問題 明天我把跑的數據貼上來 謝謝各位幫忙! 06/20 22:27
wwwc:也不是網路塞車 因為這兩台電腦都在實驗室內 狀況可以掌握 06/20 22:40
godfat:那我另外懷疑是否有防火牆?router? 06/21 00:45
wwwc:回樓上 在相同環境下有用scp傳送大檔案測試 很順且呈線性關係 06/21 12:36