在网络游戏等网络系统的开发中, 一般用多种语言配合开发. 用C来开发通信, 高密度运算等基础功能, 由脚本语言或者Java, C#等更高级的语言进行业务处理. 在这种架构方面, Web系统是最广泛, 功能最强大的一个应用. 整个因特网可以说是建立在脚本之上, 虽然Web服务器, 数据库大多是用C开发的.
C语言和脚本语言(本文中包括Java等所有高级语言)的通信有两个层次: 1, 编程语言接口(API); 2, 进程间通信(IPC).
编程语言接口的方式, 可以看作是线程单(进程内)通信, 在某些方面速度较快. 但是接口多样, 各种语言都不相同, 造成不必要的复杂度.
进程间通信包括网络通信(Socket), 本地通信(如管道). 使用本种方式, C语言与脚本语言是单一接口, 而且统一.
Web服务器可能包括两种通信方式, 如Apache可以通过fastcgi和PHP进行Socket通信, 也可以通过mod_php使用API与PHP进行通信.
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ideawu/archive/2009/08/30/4499211.aspx