我正在创建客户端 - 服务器应用程序,我计划在其中合并至少2种技术。最近我读了很多关于node.js
处理网络通信的表现,所以我想尝试一下。
问题是,在node.js中编写整个服务是不可接受的(遵循规则:“为任务选择适当的技术,而不是适当的技术任务”),所以我想在节点中只创建Web界面.js(客户端和服务器端)以及在java / c#/ C ++中实现其余部分。
我的第一个想法是启动一个单独的net-interface和core-app进程,并使用localhost套接字在它们之间进行通信。但我想知道是否有另一种方法可以做到这一点,因为套接字有其局限性(缓冲区大小等)。
所以问题是:是否有可能强制在同一台机器上使用各种技术的流程之间进行通信?
由于
答案 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机的技术)用于同步数据。)