2012-05-04 2 views
0

웹 사이트에서 특정 웹 페이지의 HTML 소스 코드를 가져 오는 프로그램을 개발 중입니다. SOCKETS VB.NET을 사용하여 HTML 페이지 소스 가져 오기

나는 아직 여기 않습니다

 Dim request As System.Net.HttpWebRequest =  System.Net.HttpWebRequest.Create(TextBox2.Text) 
    Dim response As System.Net.HttpWebResponse = request.GetResponse() 

    Dim sr As System.IO.StreamReader = New  System.IO.StreamReader(response.GetResponseStream()) 

    Dim sourcecode As String = sr.ReadToEnd() 
    TextBox1.Text = sourcecode 

최근, 나는 같은 사용하여 소켓을 할 수 있다는 것을 발견 코드에게있어 하나 개의 프로그램을 개발했다. 이번에는 그 웹 페이지의 HTML을 동시에 파싱하고 싶습니다.

  • 는 어떻게 대역폭을 감소시키지 않고가 동시에 여러 웹 페이지 '소스를 구문 분석 할 수 있습니다, 나는 멀티 스레딩을 사용하여 내 이전 프로그램에 동시에 구문 분석을 시도하지만 스레드 내 질문에 짧은 있도록, 그래서 증가로 나의 대역폭은 감소 계속?
  • 멀티 스레드에서 소켓을 사용하면 대역폭이 감소합니까? 내 질문이 명확하지 있었다면

(경우 누군가가 시도), 정정 해줘 주시기 나는 기꺼이 당신이 줄 수있는 어떤 조언을 받아 들일 것입니다하시기 바랍니다.

답변

0

여러 개의 동시 네트워크 연결을 사용하는 경우 하나의 연결로 유지하는 것보다 더 많은 대역폭을 사용하는 것이 이상하지 않을 수 있습니다.

각 소켓은 기본적으로 연결이기 때문에 더 많은 소켓을 만들고 연결을 통해 데이터를 전송하면 응용 프로그램이 사용하려고하는 대역폭이 증가합니다.

+0

고마워요.하지만 가상 소켓이나 무언가를 만들 수있는 방법이 있습니까? –

+1

@BasilioBautistaAlucilja, 큰 파이프처럼 인터넷 연결을 생각해보십시오. 그것은 한 번에 너무 많이 지나갈 수 있습니다. 아무리 많은 연결을 열어도 파이프의 크기는 동일하게 유지됩니다. 많은 연결을 사용하면 파이프가 용량에 도달하면 연결 당 대역폭이 떨어질 수 있습니다. 이상적으로, 연결을 한 번에 만들면 연결 속도가 약간 느려지므로 모든 사용 가능한 대역폭을 모두 사용하는 것이 좋습니다. – Kratz

+0

연결 한계를 우회 할 수 없다는 느낌이들 것 ... 웹 페이지의 페이지 소스를 가져올 때 더 빠른 결과를 얻으려는 아이디어 또는 논리? –

관련 문제