在各种技术之间传递数据

时间:2012-10-10 06:30:32

标签: c# java c++ node.js

我正在创建客户端 - 服务器应用程序,我计划在其中合并至少2种技术。最近我读了很多关于node.js处理网络通信的表现,所以我想尝试一下。

问题是,在node.js中编写整个服务是不可接受的(遵循规则:“为任务选择适当的技术,而不是适当的技术任务”),所以我想在节点中只创建Web界面.js(客户端和服务器端)以及在java / c#/ C ++中实现其余部分。

我的第一个想法是启动一个单独的net-interface和core-app进程,并使用localhost套接字在它们之间进行通信。但我想知道是否有另一种方法可以做到这一点,因为套接字有其局限性(缓冲区大小等)。

所以问题是:是否有可能强制在同一台机器上使用各种技术的流程之间进行通信?

由于

3 个答案:

答案 0 :(得分:2)

是的,可以使用 Web服务强制各种技术之间的通信。

在我看来,使用Web服务在各种技术之间传递数据比使用javascript更强大。您知道,用户可以在禁用javascript的情况下使用他的浏览器。

每种成熟的编程语言都支持Web服务。

此外,如果要集成使用相同语言(如Java)编写的不同应用程序,则可以使用Java Messaging Service。像魅力一样工作!

答案 1 :(得分:1)

您可以使用各种IPC(进程间通信)技术,但使用套接字还可以使您将组件移动到不同的服务器。然后,您可以通过套接字使用SOAP或REST服务。

答案 2 :(得分:0)

有许多方法可以实现这一点,Web服务因为遗留一直使用XML在两个不同的技术系统之间进行数据通信。 Web服务本身是在不同技术之间进行通信的非常好的方法之一,而不是所有优秀的编程语言用于实现Web服务的日子。

除此之外,您还拥有可以使用链接进行硬件通信的技术,即进程交换和切换,IPC(进程间通信),脚本引擎(JavaScript),XML Involution(类似于ATM机的技术)用于同步数据。)