0

ユーザーがmp3アーカイブサーバーからmp3sファイルをダウンロードできるようにする必要があります

ネットワークに2つのサーバーがあり、最初のサーバーは(Webサーバー)で、もう1つのサーバーはmp3形式のサウンドトラックに使用されます。これを(サウンドタックサーバー)と呼びます。

ユーザーがサウンドトラックサーバーからサウンドファイルをダウンロードできるようにする必要があります。この目的のために、私はソケットプログラミングを使用しています。

私がこれまでに行ったことは、サウンドファイルがサウンドトラックサーバーから読み取られ、ネットワークストリームを介してWebサーバーに送信されることです。ただし、各サウンドトラックのサイズは、Webサーバーでシミュレートする前に知っておく必要があります。

これは、ユーザーがサウンドトラックのサイズを知っている必要があるだけでなく、Webサーバーでシミュレーションを実行する前に、ソフトウェアがサウンドトラックのサイズを理解していない必要があるためです。

特に、上記の問題に関して、以下のコードで問題が発生します。

...
ns = tcpClient.GetStream()
dim recBytes( **?** ) as byte         
'By puting question mark I  am trying to show exactly where I have problem.

ns.read(recBytes,0,recBytes.lentgh)
....
Dim response As HttpResponse = HttpContext.Current.Response
...
response.BinaryWrite(recBytes)
...

アドバイスありがとうございます

4

1 に答える 1

0

ここで recBytes( ? ) は、ストリームを読み取るために使用するバッファを指します。小さすぎる数値を選択するとパフォーマンスが低下し、大きすぎるとメモリが不足します。それ以外に制限はありません。標準的なネットワーク通信では、数 K で十分です (4096 は他の数値と同じくらい優れています)。

ところで: Web サーバーから「サウンド トラック」(メディア) サーバーへの別のストリームを開く必要はありません。ネットワーク パスをマップし、仮想ディレクトリ マッピングを Web サーバーに追加するだけで、クライアントはこれらのファイルに直接アクセスできます。 .

于 2012-07-17T08:28:13.643 に答える