분산 응용 프로그램 구축을 목표로하는 기술을 찾고 있습니다. 내 친구는 CORBA (Java & C++ 조합)를 사용하라고 권했다. 그러나 나는 그것을 쓸데없는 것들이라고 읽었습니다. 오히려 단순한 분산 응용 프로그램을 작성할 계획입니다. 어떤 솔루션을 사용 하시겠습니까? 감사!Distributed Programming Technology
답변
Appistry에서 CloudIQ Platform을 권하고 싶습니다. 프레임 워크에 Java, .NET 및 C/C++ 코드를 배포 할 수 있습니다. 관리적인 관점에서 보면 서버는 작동하고 하나의 역할을합니다. 실행 요청을 제출하면 프레임 워크가로드 균형 조정을 수행하여 가장 적합한 작업자에게 요청을 배포합니다. 이 프레임 워크를 사용하면 생산자/소비자, 분산/수집 및 기타 병렬 유형의 작업을 수행 할 수 있습니다.
프레임 워크는 작업 실행도 모니터링하므로 어떤 유형의 하드웨어 오류가 발생하면 다른 시스템에서 오류가 발생한 서버에서 실행중인 작업이 할당됩니다.
SOAP 웹 서비스를 사용할 수 있습니다. 저는 현재 Python & .NET에서 분산 테스트 시스템을 개발하고 있습니다. SOAP를 사용하여 작성하고 배포하기 쉽습니다.
언어 및 플랫폼에 따라 다양한 SOAP 서버/클라이언트 라이브러리가 있습니다.
CORBA는 꽤 오래되었습니다. 라이브러리 또는 프레임 워크를 선택하려면 다음과 같은 질문을해야합니다. 왜 배포하려고합니까? (성능/병렬화, 확장 성, 시스템 부분의 위치에 대한 물리적 제약은 무엇입니까?) 여러 부분을 실행할 노드는 어떤 종류입니까? 어떤 언어를 사용 하시겠습니까?
나의 목표는 단지 약간의 연습과 지식을 얻는 것입니다. 오름차순으로 C#을 누른 다음 Java를 누른 다음 C++. – lexeme
네트워크 분산 응용 프로그램 (로컬로 병렬 처리하지 않음)을 원한다고 가정합니다. 먼저 기본 네트워킹 개념을 이해하고 시간을 보냅니다. 그런 다음 C#으로 시작하려면 웹 서비스를 구현 한 다음 해당 서비스에서 메서드를 호출하는 응용 프로그램을 구현하는 것이 좋습니다. 주제에 대한 자습서를 찾으려고 할 수 있습니다. http://www.codeproject.com/KB/webservices/myservice.aspx – sinelaw
예, CORBA 및 COM 및 DCOM과 같은 기술은 모두 거의 쓸모가 없습니다 ... 정확히 무엇을 수행하고 싶은지 잘 모르겠지만 분산 응용 프로그램을 빌드 할 때 .NET Remoting을 사용할 것입니다. 응용 프로그램이 정말 단순하다면 메일 슬롯이나 명명 된 파이프를 사용하여 네트워크 전체에서 간단한 데이터를 전달할 수도 있습니다.
하지만 C#을 사용하면 다른 컴퓨터의 Windows OS가 아닌 응용 프로그램에서 작동하지 않습니다. 크로스 플랫폼 솔루션을 사용하는 것이 어렵지 않을까요? 어쨌든 많은 Windows가 주위에 있으므로, 귀하의 조언을 주셔서 감사합니다. C#에서 간단한 파이프 응용 프로그램을 작성했습니다. – lexeme
수정 ... remoting을 사용하여 호환성 문제가 발생할 수 있습니다. 따라서 리모팅은 크로스 플랫폼 솔루션을위한 방법이 아닙니다. 웹 서비스는 원격 솔루션보다 사용하기 쉽고 배포 가능성이 큰 훌륭한 솔루션이라고 생각합니다. 그러나 원격 처리는 TCP/IP를 통해 사용할 수 있으므로 웹 서비스보다 성능이 우수합니다. 여기 좋은 기사입니다 : http://msdn.microsoft.com/en-us/library/ms978420.aspx – Zunandi
ICE (Internet Communications Engine)를 사용하면 ICE가 여러 운영 체제 플랫폼 (Windows, Linux, Solars, Mac OS, iOS, Android ...), 다중 개발 언어 (C++, Java, .NET, Python , Ruby, PHP), 더 간단합니다.
Thanks! 나는 그것에 대해 읽었습니다. 나는 그것을 사용해 볼 것이라고 생각한다. – lexeme
sinelaw에서 언급했듯이 좋은 제안을하기 전에 많은 질문이 있지만 응용 프로그램간에 데이터를 전송하는 방법으로 REST (http://en.wikipedia.org/wiki/Representational_State_Transfer)를보고 싶을 수 있습니다. REST는 받아 들일 수 있고 반환 할 수있는 것이 유연하다는 점에서 훌륭하다. 예를 들어, 파일을 업로드하고 PDF를 반환 할 수있다. 그것은 http에서 사용되지만, 유일하게 허용 된 프로토콜은 아닙니다. 그것은 언어/플랫폼에 무관심합니다.
표준화 된 무언가를 갖고 싶다면 플랫폼 독립적 일 때 SOAP 또는 REST가 가장 좋은 방법 일 것입니다. Java/JVM 또는 .NET에 제한되지 않는다면 다른 옵션이 있지만 매우 제한적입니다.
어떤 유형의 데이터가 전달되고 있습니까? 보안은 얼마나 중요합니까? 사용 가능한 플랫폼/언어는 무엇입니까? 프로그램의 목적은 무엇입니까? 목표는 무엇입니까?
당신은 또한 다른 프로토콜을 사용할 수있는 휴대용 솔루션을 원하는 경우에, 모노에서 WCF는 잘 맞는에게 수 있습니다
여러 서버에 코드 논리를 배포하려는 그것은 하나의 엔티티로 관리하는 경우For .Net WCF는 구현하기가 매우 쉽고 매우 유연하며 CORBA는 깊이 분산 된 응용 프로그램을 이해하는 것이 목표이지만 실제 프로젝트에는 권장하지 않는 것이 현재로서는 매우 좋습니다. CORBA를 마스터하는 개발자를 찾기가 어렵습니다.
- 1. .net n-Tiered/Distributed Programming Technologies
- 2. GetDeviceCaps Technology
- 3. C# Silverlight Progamming Technology 일반적으로?
- 4. Poppler programming
- 5. Distributed Program Execution Manager
- 6. rails distributed parallel tests
- 7. Clojure의 Aspect-Oriented Programming
- 8. android object oriented programming
- 9. Distributed Tornado 기반 채팅 서버
- 10. couchdb for/really/distributed replica
- 11. Distributed Locking and Java EE
- 12. Simplex Method/Linear Programming Help
- 13. MVP Taligent Programming Model for.
- 14. HP Calculator Programming 용 IDE?
- 15. Pointcuts 및 Aspect-Oriented Programming
- 16. OS/9 Programming in C
- 17. pseudo-distributed hadoop 설정에 노드를 추가하려면 어떻게합니까?
- 18. matlab distributed computing with sge (qsub)
- 19. C#의 .NET Distributed Code Execution Framework
- 20. Visual Studio, Distributed Version Control 및 Sourceforge
- 21. Mobile Robotics Programming Toolkit에 대해 어떻게 생각하십니까?
- 22. iphone programming objective-c : viewDidLoad() 실행
- 23. OOP 세계 법규에서의 Aspect-Oriented Programming?
- 24. objective-c iphone programming : 관심 지점 mapview
- 25. Device Features Programming Guide는 어디로 갔습니까?
- 26. Aspect Oriented Programming : PostSharp는 무엇을 사용합니까?
- 27. sat 함수의 "Programming in Haskell"오류가 발생했습니다.
- 28. IntelliJ IDEA 9 for BlackBerry Programming
- 29. Programming (Weblogic & Java)에서 세션 복제
- 30. iphone programming objective-c : mkannotation 핀 문제
하지만 웹을 목표로하지 않는다면? SOAP을 계속 사용할 수 있습니까? – lexeme
예, 할 수 있습니다. – Elalfer