Microsoft MVP성태의 닷넷 이야기
소켓 대량 데이터 디자인 문의 [링크 복사], [링크+제목 복사],
조회: 14899
글쓴 사람
질문합니다.
홈페이지
첨부 파일
 

안녕하세요.

소켓 통신 시에 클라이언트에서 대량의 데이터가 서버로 전송될 경우 (용량이 크다는 것이 아니고 전달되는 건이 많을 경우 ex - 십만건)
서버와 클라이언트는 해당 데이터 처리를 Queue 처리를 하여 별도 스레드에서 처리하것이 좋은건가요?
이러한 디자인으로 만들어 보기는 처음이라 클라이언트와 서버의 디자인을 어떻게 하는게 가장 좋은 방법인지 궁금합니다.
소켓 데이터를 잃지 않고 빠르게 핸들링 하는 좋은 방법이 무엇인가요.
대략 그림은 아래와 같습니다.

클라이언트 ---> 서버 (10만건 전달)
클라이언트 <--- 서버 (10만건에 대한 ack 전달)

감사합니다.








[최초 등록일: ]
[최종 수정일: 2/27/2020]


비밀번호

댓글 작성자
 



2020-02-27 09시02분
글쎄요, 이런 경우는 각자 업무 도메인에 맞게 환경 테스트를 하면서 맞춰가야 할 부분입니다. 일례로, 건당 1ms만 소요가 되어도 10만건이면 100초가 걸릴텐데 만약 10만건의 데이터를 초당 처리해야 하는 상황이라면 100대 이상의 서버를 준비해야 하고 네트워크 대역도 그에 맞게 준비해야 할 것입니다.

질문하신 분의 업무에 정확히 맞는 환경에서 개발해 본 경험자는 (거의) 없을 것이기 때문에 다른 의견을 들어도 크게 신뢰를 하지 않는 것이 좋고, 최대한 적합한 프로토타입을 만들어 결과를 확인해 나가면서 코드 및 환경을 개선해 나가야 할 것입니다. 딱히 그외에는 조언해 드릴만한 것이 없군요. ^^;
정성태

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5919이건우9/27/202312088WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지 donator9/14/202312773동기화 도구 질문 있습니다. [4]
5916한예지 donator9/3/202313102Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지 donator8/30/202314330비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/202313972.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/202313585지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
5912guest4/25/202319005[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/202312890Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/202312264Async 메서드와 try~catch [1]
5909guest4/22/202313697Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/202313072텅빈 원그리기 [5]
5907민성4/21/202313031안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/202313319Dispatcher 서비스 구현 질문 [1]
5905guest4/20/202314248tabControl의 tabPage가 여러 개일 때 순서를 바꾸기가 까다롭네요 [5]
5904guest4/18/202314513[신규자료첨부] DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [4]파일 다운로드1
5903guest4/18/202313203fileSystemWatcher 이벤트 관련 질문입니다 [2]
5902guest4/17/202314317c#으로 USB 관련 질문 [2]
5901guest4/17/202311821내솔루션 판매 시 1.0.0.0 폴더와 Sqlite 배포 [5]
5900guest4/17/202314785DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [2]파일 다운로드1
5899guest4/17/202312852Dictionary와 Linq [4]
5898차가워4/17/202312528CNTK 교육 문의 [1]
5897guest4/17/202312231Socket스레드와 UI thread [4]
5896HAN4/16/202312190c언어 return 에 대해 궁금한게 있어요. [1]파일 다운로드1
5895guest4/15/202312487Drag and Drop - 모든 컨트롤 [2]
5894송부장4/14/202314279[질문] Visual Studio 2022에서 '도구 상자 항목 선택'의 'COM 구성 요소' 탭에서 ActiveX 목록이 보이지 않습니다. [3]파일 다운로드2
5893감사합니...4/14/202312100오라클 OLEDB방식 접속 후 SELECT 'TEST' TEST_VALUE FROM DUAL의 값이 이상합니다. [1]
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...