Microsoft MVP성태의 닷넷 이야기
시스템 설계에 대한 문의드립니다. [링크 복사], [링크+제목 복사],
조회: 14759
글쓴 사람
제영한 (sadasus at gmail.com)
홈페이지
첨부 파일
 

이번에 새로 시작하는 프로젝트를 설계하고 있습니다.

VC++로만 개발하다가 최근들어 C#을 접하고 있습니다. 게다가 처음 접하는 웹서비스라서, 개념을 잡아가고 있으나 답답한 부분이 있네요. ㅜㅜ

늘 그렇듯 빠듯한 일정을 소화하려면 빨리 설계를 하고 구현이 들어가야 되는 실정이라 이렇게 자문을 구합니다.



환경) 장치 <-> 미들웨어(장치제어 및 데이터 처리) 서버 <-> 외부 application

1. 장치 - 여러종류의 데이터를 읽어들이는 장치입니다.

2. 미들웨어 - 장치와 연결되서 데이터를 읽어들이고, 원하는 데이터의 대한 여러가지 필터링으로 데이터를 가공합니다.

3. 외부 application - VC++, 자바, 웹등 사용자의 의해서 개발되는 프로그램입니다.



위에서 외부 application과의 연동을 위해, 미들웨어에서는 웹서비스(soap)를 통해서 인터페이스를 제공합니다.

미들웨어는 서버에서 항상 실행되고 있으며, 인터페이스를 통해 클라이언트의 요청을 받아서 가공된 데이터를

사용자가 요청한 방법(http, ftp, socket) 등으로 전달합니다. (사용자에게 데이터 전달은 웹서비스로 하지 않습니다.)

현재 장치와 미들웨어를 개발하기 위해서 설계를 하고 있는중인데 미들웨어의 대한 설계(장치 제어및 관리, 데이터 필터링등)는 끝났는데,

웹서비스로 인터페이스를 노출시키는 부분에서 많이 헤매고 있습니다. (아직 웹서비스와 .Net Remoting에 대한 이해가 많이 부족한것 같습니다.)

웹서비스를 할 IIS는 미들웨어서버랑 동일한 서버에서 실행됩니다.



질문)

1. 클라이언트(외부 application)에서 XML웹서비스 메서드를 호출할때 미들웨어랑 바로 연동이 가능한지요?

   - 현재 제가 자료를 찾아보고 이해한 지식으로는 안되는 걸로 보입니다.


2. 클라이언트 -> XML 웹서비스 <-> .Net Remoting(미들웨어) 로 구성을 생각하고 있는데,

   - 위와 같은 구성이 최선인지? 또다른 쉬운 방법이 있는데, 제가 돌아가고 있는건 아닌지 궁금합니다.

   - 위와 같은 구성이 잘못됐다면? 어떻게 구성이 되야 되는건지요??

     이 문제로 헤매고 있는데, 시간에 쫓기다보니 여유롭게 자료나 책 찾아서 학습할 시간이 많이 부족하네요. ㅜㅜ



그럼 자문 좀 부탁드립니다. 좋은 하루 되세요.


    
  














[최초 등록일: ]
[최종 수정일: 10/25/2007]


비밀번호

댓글 작성자
 



2007-10-24 08시04분
답변이 많이 늦었습니다. 제가 요즘 뜻하지 않은 이벤트가 있어서. ^^

답변)

1. 미들웨어랑 바로 연동한다는 것이 무슨 의미인지 질문에서 명확하지가 않아서 답변드리기가 매우 애매합니다. XML 웹 서비스 메서드 안에서는 무슨 동작이든지 할 수 있습니다. 단지 웹 서비스 메서드의 호출/반환 값에서 의미있는 직렬화 값을 전달해야 한다는 제한만 있을 뿐입니다.(즉, 파일 핸들 등의 값을 전달해서는 안 된다는 것이지요.)

2. 말씀하신 구성을 왜 했는지에 대한 설명을 같이 해주셔야 할 것 같습니다. 일단, 겉으로 봐서는 크게 문제가 있다고 보이지는 않습니다. 미들웨어는 어차피 만들어야 하는 부분일 테고, 그러한 기능 중에서 외부로 노출시켜야 하는 부분에 대해서 XML 웹 서비스로 감싸주는 것은 일반적인 구성입니다.
정성태
2007-10-24 08시04분
[사다수스] 성태님 답변 감사드립니다. 현재 미들웨어(.Net Remoting) <-> XML 웹서비스 <-> 외부 application 이 구성으로 작업을 진행하고 있습니다. 일반적으로 이렇게 구성을 한다고 하시니, 맘편히 작업할 수 있겠네요. ㅎㅎ 답변 감사드립니다. 좋은 하루 되세요. ^^
사다수스

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5920한예지 donator10/3/202313716C#과 WIN32 API 관계 질문드립니다. [4]
5919이건우9/27/202312381WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지 donator9/14/202313098동기화 도구 질문 있습니다. [4]
5916한예지 donator9/3/202313495Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지 donator8/30/202314927비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/202314455.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/202314029지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
5912guest4/25/202319502[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/202313213Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/202312558Async 메서드와 try~catch [1]
5909guest4/22/202314183Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/202313401텅빈 원그리기 [5]
5907민성4/21/202313402안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/202313669Dispatcher 서비스 구현 질문 [1]
5905guest4/20/202314744tabControl의 tabPage가 여러 개일 때 순서를 바꾸기가 까다롭네요 [5]
5904guest4/18/202315056[신규자료첨부] DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [4]파일 다운로드1
5903guest4/18/202313680fileSystemWatcher 이벤트 관련 질문입니다 [2]
5902guest4/17/202314825c#으로 USB 관련 질문 [2]
5901guest4/17/202312082내솔루션 판매 시 1.0.0.0 폴더와 Sqlite 배포 [5]
5900guest4/17/202315233DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [2]파일 다운로드1
5899guest4/17/202313206Dictionary와 Linq [4]
5898차가워4/17/202312795CNTK 교육 문의 [1]
5897guest4/17/202312394Socket스레드와 UI thread [4]
5896HAN4/16/202312484c언어 return 에 대해 궁금한게 있어요. [1]파일 다운로드1
5895guest4/15/202312707Drag and Drop - 모든 컨트롤 [2]
5894송부장4/14/202314664[질문] Visual Studio 2022에서 '도구 상자 항목 선택'의 'COM 구성 요소' 탭에서 ActiveX 목록이 보이지 않습니다. [3]파일 다운로드2
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...