CICS 和 Node.js
Node.js 是使用 JavaScript编写的应用程序的服务器端运行时。
- 事件驱动-它侦听事件 (例如 HTTP 请求) ,并在检测到事件时触发回调函数。
- 单线程-它一次处理一个请求。
- 非阻塞 I/O-通过在 z/OS®中使用底层支持,异步读取和写入 I/O 设备 (例如文件系统,套接字和数据库) ,从而在完成时触发回调函数。
Node.js 是轻量级的,高效的,最适合数据密集型应用程序。 它可在 z/OS 中使用底层异步 I/O 支持,为应用程序设计和开发提供模块驱动的高度可扩展方法,以鼓励采取灵活的做法。
由于其提供和聚合 REST 服务的能力,它正在稳步确立其在企业中的地位,并成为数字化转型的首选。
Node.js 受欢迎的一个重要因素是丰富的 Node.js 模块,这些模块在公共服务注册表上可用,并可使用 Node Package Manager (NPM) 进行访问。 模块已可用于大多数任务,为 Node.js 应用程序开发者节省了大量时间。
Node.js 由 Node.js Foundation 开发,其目标是鼓励采用和开发 Node.js 及其相关模块。 有关更多信息,请参阅 Node.js Foundation Web 站点。
从 Node.js 应用程序调用 CICS 服务
Node.js 应用程序通常长时间运行,并处理来自多个用户的 TCP/IP 套接字请求。 将针对每个应用程序启动 Node.js 运行时。 CICS® 区域中可以存在多个应用程序。
在 CICS 中运行的 Node.js 应用程序可能需要调用现有的 CICS 应用程序。 例如, Node.js 应用程序可能会汇总对现有业务逻辑函数的调用,为前端应用程序提供单一服务接口。 使用现有业务逻辑函数可以利用 Node.js 应用程序与现有应用程序的距离,从而避免前端应用程序需要进行多次网络调用。 Node.js 应用程序还可以通过调用外部服务或使用 NPM 模块向现有业务逻辑添加功能。
Node.js 应用程序可以调用 中托管的服务来调用现有的业务逻辑。 CICS 这些服务可以是 JSON 或 SOAP Web Service ,通过使用 CICS Web Service 技术或通过使用 z/OS Connect 来公开。 Node.js 应用程序可以使用用于发出 HTTP 请求以及用于使用 JSON 和 SOAP Web Service 的 NPM 模块来调用 CICS 服务。 JSON Web Service 可由 Node.js 应用程序直接使用,因为 JSON 是 JavaScript的本机对象格式。
或者,当 Node.js 应用程序与需要调用的 JSON Web Service 托管在同一 CICS 区域中时,可以使用本地优化的传输。 这将使用跨内存方法来调用服务,从而避免在网络上进行任何交互。 要使用本地优化的传输来调用 CICS 服务, Node.js 应用程序必须使用 ibm-cics-api 模块。 必须使用 CICS JSON Web Service 技术公开该服务,并且必须存在合适的 PIPELINE 和 URIMAP 资源。 有关更多信息,请参阅 调用 CICS 服务。
组件
