흔히 Http 를 통해 POST, GET 방식을 HtmlBody 형식이나 Json 형식으로 데이타를 보내는 것은
알고 있는데
제가 금요일에 웹서버단에서
이런방식으로 CURL 라이브러리를 이용하여 제 로컬 와치독프로젝트에 EMBEDIO (웹서버)로
데이타를 보냈습니다. 10만건을요…
1000건 정도마다 0.01 인가 0.001 초마다 sleep 과 flush 등을 했습니다.
이렇게 하니깐 20분 걸렸습니다.
요약 제컴퓨터에서 웹서버 => 와치옥시비스(C#) 으로 10만건의 DB에서 JSON 변환 후 데이타 전송
EmbedIO 에서 건바이건 만 되더라고요 다중 레코드를 오류냅니다. 20분 좀 아니 많이 긴거 같아요
구글링 하다 보니깐 EmbedIO 에서 아래처럼 Stream 방식으로 예제? 가 있더군요
그런데 Router 보니깐 Post 로 되있네요 … 제가 C#에서 HttpWebRequest 를 써본적이 있는데
저런거와 비슷했던거 같습니다.
저러한 방식 , 기술을 정식적으로 뭐라고 부르나요?
그리고 EMBEDIO 사용하신 분 대량의 데이타 처리 관련해서 조언 부탁드립니다.
[WebApiHandler(HttpVerbs.Post, "/api/login/")]
public bool PostCredentials(WebServer server,
HttpListenerContext context)
{
try {
StreamReader reader = new StreamReader(context.Request.InputStream);
string userJson = reader.ReadToEnd();
var user = JsonConvert.DeserializeObject(userJson);
if (Users.Contains(user)) {
return context.JsonResponse(new { access_token = "abc123",
expires_in = 12345678 });
}
return false;
} catch (Exception ex) {
return HandleError(context, ex,
(int)HttpStatusCode.InternalServerError);
}
}