博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Intel Edison开发板] 04、Edison开发基于nodejs和redis的服务器搭建
阅读量:6677 次
发布时间:2019-06-25

本文共 2944 字,大约阅读时间需要 9 分钟。

一、前言

intel-iot-examples-datastore 是Intel提供用于所有Edison开发板联网存储DEMO所需要的服务器工程。该工程是基于nodejs和redis写成的一个简单的工程。针对nodejs和redis会在后面介绍。

It is a Node.js* application written using Express* (https://github.com/strongloop/express). It uses a Redis* (http://redis.io) data store.

github上的了 intel-iot-examples-datastore 分别搭载在本地、亚马逊等上的方法。但是发现国外的云使用需要用信用卡购买,其在国内的服务又和国外的不一样,尝试许久最终决定研究nodejs和redis在阿里云/本地ubuntu上搭载服务器。

  • 是一种nosql数据库,提供五种数据类型:string,hash,list,set及zset(sorted set)。
  • expressjs是基于 Node.js 平台,快速、开放、极简的 web 开发框架。http://www.expressjs.com.cn/

二、redis

是一种nosql数据库,提供五种数据类型:string,hash,list,set及zset(sorted set)。 redis的教程在官网介绍的非常清晰,不多提。

阿里云上提供了redis数据库,同时也可以利用阿里云的ECS自己搭建服务器。同时,为了方便调试,我首先尝试在本地虚拟机中实现运行环境,然后再移植到阿里云的ECS上。

三、本地虚拟中安装nodejs及expressjs框架

程序是由expressjs+redis构成。其中expressjs是基于 Node.js 平台,快速、开放、极简的 web 开发框架。http://www.expressjs.com.cn/

我虚拟中的系统为ubuntu12.04,起初自带的nodejs版本低,不过升级后仍然有问题,最后重装ubuntu为最新版本16.04 STL 并严格按照该连接进行安装 ,问题得到解决。

besides,every start express,when close,should close the terminal!!!

四、本地虚拟机中安装Redis

follow the try.redis.io to try the nosql database,and then follow the redis.io/download to download build install run test redis.

It's simple

五、同一个局域网下访问virtualBox中的nodejs服务器

前期由于没有看清楚windows console中ipconfig的内容,误把VirtualBox Host-Only Network IP当成主机IP,并且以为虚拟机哪里配置错了尝试了很多次虚拟机网络配置,其中典型的是看:(看错了,理论上无错)

C:\Users\Administrator>ipconfigWindows IP 配置无线局域网适配器 无线网络连接 2:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :以太网适配器 本地连接:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :无线局域网适配器 无线网络连接:   连接特定的 DNS 后缀 . . . . . . . :   本地链接 IPv6 地址. . . . . . . . : fe80::8d17:68fb:b356:da0d%14   IPv4 地址 . . . . . . . . . . . . : 192.168.31.8   子网掩码  . . . . . . . . . . . . : 255.255.255.0   默认网关. . . . . . . . . . . . . : 192.168.31.1以太网适配器 Bluetooth 网络连接:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :以太网适配器 VirtualBox Host-Only Network:   连接特定的 DNS 后缀 . . . . . . . :   本地链接 IPv6 地址. . . . . . . . : fe80::4d85:4389:ed42:9710%18   IPv4 地址 . . . . . . . . . . . . : 192.168.56.1   子网掩码  . . . . . . . . . . . . : 255.255.255.0   默认网关. . . . . . . . . . . . . :隧道适配器 isatap.{87F755D7-825F-48BD-829D-5F62EA5FB919}:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :隧道适配器 本地连接* 4:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :隧道适配器 isatap.{00206601-AE24-4954-88C4-E9546B81CE0E}:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :隧道适配器 isatap.{912E0BF2-F07B-4BDF-AE76-1A197AB49063}:   媒体状态  . . . . . . . . . . . . : 媒体已断开   连接特定的 DNS 后缀 . . . . . . . :

出现上述歧途的另一个原因是虚拟机中用localhost:3000能访问,但是用IP不能访问,所以一直误导我以为虚拟机网络问题,而真正原因是nodejs app配置为题!!!

最后在 http://cnodejs.org/topic/50bf7116637ffa4155a2650c 找到了解答:因为绑定的是"127.0.0.1"ip,所以只能127.0.0.1和localhost访问。因此修改nodejs工程里的setting.js文件里的HOST = (process.env.HOST);即可

系列文章:


@beautifulzzzz智能硬件、物联网,热爱技术,关注产品博客:http://blog.beautifulzzzz.comsina:http://weibo.com/beautifulzzzz?is_all=1

转载地址:http://oerxo.baihongyu.com/

你可能感兴趣的文章
MongoDB基础之 用户和数据库基于角色的访问控制
查看>>
DOS运用3_SVN文件清理
查看>>
MyApp
查看>>
SqlServer字段说明查询
查看>>
键盘监听,高度获取
查看>>
android ANR
查看>>
Shell - 简明Shell入门02 - 变量(Variable)
查看>>
Shell - 简明Shell入门06 - 循环语句(Loop)
查看>>
MySQL C#连接ySQL保存当前时间,时分秒都是0,只有日期
查看>>
Aras Innovator DB备份与还原
查看>>
Java设计模式-单例模式
查看>>
git合并多个commit
查看>>
[SCOI2007]修车
查看>>
对数学学习的几点看法
查看>>
陶哲轩实分析 引理 7.1.13 证明
查看>>
纯数学教程 Page 203 例XLI (3)
查看>>
数据库回滚(rollback)和撤销(undo)的区别
查看>>
Treap树
查看>>
正则表达式,re模块
查看>>
测试用例设计-WEB通用测试用例
查看>>