|
|
51CTO旗下网站
|
|
移动端

2.3.3.1 构建来宾可执行程序

《Microsoft Azure 管理与开发(下册)平台服务PaaS》本书由世纪互联蓝云Microsoft Azure 开发技术支持团队的资深工程师们编写,主要阐述MicrosoftAzure PaaS 服务的开发应用,涉及计算服务、集成认证服务、数据存储服务、大数据服务等方面的内容。本节为大家介绍构建来宾可执行程序。

作者:世纪互联蓝云公司来源:电子工业出版社|2018-07-12 17:27

2.3.3.1 构建来宾可执行程序

在之前的章节中,介绍了Service Fabric 应用程序包的结构和配置文件,来宾应用程序的打包结构也是一样的。请参考图2.3.3-1。

在应用中使用ApplicationManifest 和ServiceManifest 分别来描述应用程序配置和服务配置。在Code 文件夹下是可执行程序,可以是exe 执行文件,也可以是其他脚本,例如Java 的Tomcat 启动脚本,NodeJS 的Node 执行程序。在Config 中存放的是应用程序中使用的配置和数据,如果在应用程序中没有使用配置和数据,可以不包含这两个目录。

在来宾应用程序配置中,最主要的就是配置服务的启动入口,即ServiceManifest 配置中的SetupEntryPoint 和EntryPoint 这两个配置。SetupEntryPoint 是用来在启动软件之前,安装软件到实例中或者预配置一些环境变量;EntryPoint 则是用来配置启动软件的位置和参数。当服务部署时,Service Fabric 会根据此配置运行可执行程序或者脚本。

接下来以NodeJS 为例来展示如何在Service Fabric 中部署NodeJS 来宾应用程序。

NodeJS 开发环境的安装设置在这里就不多讲了,具体可以参考NodeJS 官方网站。

首先,在开始之前需要编写一个简单的NodeJS Web 站点。整个NodeJS 的代码就一个文件App.js,在此源代码文件中,将启动一个Http Server,并监听3000 端口接受Http 请求,返回HelloWorld 文本。App.js 代码如下:

  1. var http = require('http');  
  2. var port = 3000;  
  3. http.createServer(function (req, res) {  
  4. res.statusCode = 200;  
  5. res.setHeader('Content-Type', 'text/html');  
  6. res.write("Hello World!")  
  7. res.end();  
  8. }).listen(port, function() {  
  9. console.log('Server running at http://127.0.0.1:3000/');  
  10. }); 

为了验证程序的正确性,可以在本地使用命令node.exe,App.js 执行该NodeJS 程序,并通过浏览器访问http://localhost:3000 访问该服务,如果看到如图2.3.3-2 所示的结果,说明程序运行一切正常。

在编写完程序后,依照Service Fabric 打包文件结构,创建NodeJs 服务的包,整体结构如图2.3.3-3 所示。

需要将NodeJS 的代码拷贝到NodeJSServicePkg 服务包下的Code 文件夹下,并且需要将NodeJS 的运行程序放置到该文件下。因为默认情况下,在Service Fabric 中是不包含NodeJS 的运行环境的。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

跨越网络工程师必备训练

本书是根据全国计算机技术与软件专业资格(水平)考试“网络工程师级考试大纲”编写的考试辅导用书。全书主体按考试大纲的章节编排,分上、...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊