springcloud(第 026 篇)简单异构系统之 nodejs 微服务 - 编程思维

SpringCloud(第 026 篇)简单异构系统之 nodejs 微服务

-

一、大致介绍

1、因为在后面要利用 SpringCloud 集成异构系统,所以才有了本章节的 nodejs 微服务;
2、本章节使用了最简单的 http 请求截取 url 的方式,截取不同 url 的后缀做不同的响应处理,简直 so easy;

二、实现步骤

2.1 添加nodejs服务端js文件(springms-node-servicenode-service.js)

// nodejs 引入 http、url、path模块
var http = require('http');
var url = require("url");
var path = require('path');

// 创建server
var server = http.createServer(function(req, res) {
  // 获得请求的路径
  var pathname = url.parse(req.url).pathname;  
  res.writeHead(200, { 'Content-Type' : 'application/json; charset=utf-8' });
  // 访问http://localhost:8205/,将会返回{"index":"欢迎来到简单异构系统之 nodejs 服务首页"}
  if (pathname === '/') {
    res.end(JSON.stringify({ "index" : "欢迎来到简单异构系统之 nodejs 服务首页" }));
  }
  // 访问http://localhost:8205/health,将会返回{"status":"UP"}
  else if (pathname === '/health.json') {
    res.end(JSON.stringify({ "status" : "UP" }));
  }
  // 其他情况返回404
  else {
    res.end("404");
  }
});

// 创建监听,并打印日志
server.listen(8205, function() {
  console.log('开始监听本地端口: 8205');
});

2.2 如何启动

windows窗口执行命令:node.exe node-service.js

三、测试

/****************************************************************************************
 一、简单异构系统之 nodejs 微服务:

 1、编写 node-service.js 文件;
 2、启动服务(windows 命令);
 3、输入 node.exe node-service.js 命令,正常情况下会打印 “开始监听本地端口: 8205”,说明启动成功了;

 注意:至于 node.exe 这个命令要下载什么安装包什么的,请大家移步寻找度娘,相信大家的聪明才智很快就可以搞定这个命令的最简单用法;

 4、新起网页页签,输入 http://localhost:8205/ ,然后打印信息为:{"index":"欢迎来到简单异构系统之 nodejs 服务首页"}
 5、新起网页页签,输入 http://localhost:8205/health.json ,然后打印信息为:{"status":"UP"}
 5、新起网页页签,输入 http://localhost:8205/abc ,然后打印信息为:404

 总结:简单的 nodejs 微服务,处理客户端请求就是如此的简单,所以市场上也有好多服务端就是用nodejs玩的;
 ****************************************************************************************/

四、下载地址

https://gitee.com/ylimhhmily/SpringCloudTutorial.git

SpringCloudTutorial交流QQ群: 235322432

SpringCloudTutorial交流微信群: 微信沟通群二维码图片链接

欢迎关注,您的肯定是对我最大的支持!!!

版权声明:本文版权归作者所有,遵循 CC 4.0 BY-SA 许可协议, 转载请注明原文链接
https://segmentfault.com/a/1190000011388253

springcloud(第 027 篇)集成异构微服务系统到 springcloud 生态圈中(比如集成 nodejs 微服务) - 编程思维

SpringCloud(第 027 篇)集成异构微服务系统到 SpringCloud 生态圈中(比如集成 nodejs 微服务) - 一、大致介绍 1、在一些稍微复杂点系统中,往往都不是单一代码写的服务,而恰恰相反集成了各种语言写的系统,并且我们还要很好的解耦合集成到自己的系统中; 2、出于上述现状,SpringClo

来认识一下venus-init——一个让你仅需一个命令开始java开发的命令行工具 - 编程思维

源代码地址: Github仓库地址 个人网站:个人网站地址 前言 不知道你是否有过这样的经历。不管你是什么岗位,前端也好,后端也罢,想去了解一下Java开发到底是什么样的,它是不是真的跟传说中的一样。 于是你拿起键盘,用触控板 ? '' : 抄起鼠标',开始了Java淌坑之旅。在一把梭的操作之后,面对你搭建的环境,你陷

弃用java 8,apache kafka发布3.0正式版 - 编程思维

昨天,Apache Kafka 3.0 版本正式发布,这是一个涉及多方面的大版本。在这个版本中,Apache Kafka 3.0 引入了各种新功能、突破性的 API 更改以及对 KRaft 的改进:Apache Kafka 的内置共识机制将取代 Apache ZooKeeper™。虽然 KRaft 尚未被推荐用于生产(

web ui自动化的设计和实践 - 编程思维

​背景UI 自动化测试,即通过自动化的手段来控制机器模拟人进行手工操作。随着 GrowingIO 业务的不断发展,新需求的不断增加,回归测试的任务越来越重,现有测试的资源已经不足以应对繁重的回归测试任务,亟需 UI 自动化来代替人手工进行回归测试,解放回归测试的人力去做更精准的测试。因此,引出下文在 GrowingIO

java程序员“找对象”攻虐 - 编程思维

嗯?在后台经常会收到这样一类私信,大致是这样描述的:看来关于「程序员找对象」这个话题,非常有必要用一篇文章来专门梳理和归纳一下了。择日不如撞日,今天就把这件事情给安排了吧。可以说,方法多得很!new一个对象用关键字new进行对象的创建,几乎是写代码时最常用的操作之一了,比如:Sheep sheep1 = new She

【node.js 微信公众号实战】1.node.js 接入微信公众平台开发 - 编程思维

一、写在前面的话   Node.js是一个开放源代码、跨平台的JavaScript语言运行环境,采用Google开发的V8运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于数据密集的事实应用程序。——来自维基百科   最近花了差不多近一个月的时间去学习No

实战react技术栈+express前后端博客项目(0)-- 预热一波 - 编程思维

项目地址:https://github.com/Nealyang/R... 本想等项目做完再连载一波系列博客,随着开发的进行,也是的确遇到了不少坑,请教了不少人。遂想,何不一边记录踩坑,一边分享收获呢。分享当然是好的,如果能做到集思广益,那岂不是更美。我们的口号是:坚决不会烂尾 本博客为连载代码博客同步更新博客,随着项

springcloud(第 027 篇)集成异构微服务系统到 springcloud 生态圈中(比如集成 nodejs 微服务) - 编程思维

SpringCloud(第 027 篇)集成异构微服务系统到 SpringCloud 生态圈中(比如集成 nodejs 微服务) - 一、大致介绍 1、在一些稍微复杂点系统中,往往都不是单一代码写的服务,而恰恰相反集成了各种语言写的系统,并且我们还要很好的解耦合集成到自己的系统中; 2、出于上述现状,SpringClo

【node全局变量global模块】 - 编程思维

环境:Node v8.2.1; Npm v5.3.0; OS Windows10 在浏览器中我们有window对象用于挂载全局的变量,在Node中我们有global对象可以进行挂载,很多共用的属性就可以挂载到global对象上了,本身它自己也拥有很多的属性。 1、API结构图 2、一些例子 下面是部分API的例子,对

【node文件系统fs模块】 - 编程思维

环境:Node v8.2.1; Npm v5.3.0; OS Windows10 1、fs 模块API nodejs的文件操作大部分API都提供了同步和异步的两种方式,下面是异步API结构图,同步方法在异步方法后面加【Sync】就行了 1.1 API结构图 1.2 文件读写模式对应编码 2、一些例子 下面是部分AP

【node事件模块events】 - 编程思维

环境:Node v8.2.1; Npm v5.3.0;OS Windows10 1、 Node事件介绍 Node大多数核心 API 都采用惯用的异步事件驱动架构,其中某些类型的对象(触发器)会周期性地触发命名事件来调用函数对象(监听器)。 所有能触发事件的对象都是 EventEmitter 类的实例。 这些对象开放了一