[Intel Edison开发板] 04、Edison开发基于nodejs和redis的服务器搭建
#### 一、前言
**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上搭载服务器。
- redis 是一种nosql数据库,提供五种数据类型:string,hash,list,set及zset(sorted set)。
- expressjs是基于 Node.js 平台,快速、开放、极简的 web 开发框架。http://www.expressjs.com.cn/
#### 二、redis
[redis][2] 是一种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 并严格按照该连接进行安装 https://www.douban.com/note/360858696/,问题得到解决。
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,并且以为虚拟机哪里配置错了尝试了很多次虚拟机网络配置,其中典型的是看:[VirtualBox的四种网络连接方式详解][3](看错了,理论上无错)
C:\Users\Administrator>ipconfig
Windows 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);即可
#### 系列文章:
- [[Intel Edison开发板] 01、Edison开发板性能简述][21]
- [[Intel Edison开发板] 02、Edison开发板入门][22]
- [[Intel Edison开发板] 03、Edison开发IDE入门及跑官方提供的DEMO][23]
@beautifulzzzz
智能硬件、物联网,热爱技术,关注产品
博客:http://blog.beautifulzzzz.com
sina:http://weibo.com/beautifulzzzz?is_all=1
[Intel Edison开发板] 04、Edison开发基于nodejs和redis的服务器搭建的更多相关文章
- 真正的RISC-V开发板——VEGA织女星开发板开箱评测
前言 由于最近ARM公司要求员工"停止所有与华为及其子公司正在生效的合约.支持及未决约定",即暂停与华为的相关合作,大家纷纷把注意力投向了另一个的处理器架构RISC-V,它是基于精 ...
- iTOP-4418开发板和6818开发板-第五路串口介绍
iTOP-4418开发板和6818开发板 的除去默认 4 个串口的配置和用法. 4418 的开发板最多支持 5 路串口,如下图所示,4418 的 datasheet. 6818 的开发板最多支持 ...
- 基于腾讯Centos7云服务器搭建SVN版本控制库
基于腾讯Centos7云服务器搭建SVN版本控制库 最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间 ...
- 基于SSL加密的vsftpd 服务器搭建和配置
基于SSL加密的VSFTPD 服务器搭建和配置 1.安装 ubuntu系统:apt-get install vsftp lftp centos系统:yum install -y vsftpd ftp ...
- 基于讯为4412开发板的Android开发流程
讯为4412开发板 使用三星2410芯片,基于arm9架构,由于自己电脑硬件的局限,只能跑Android4.0.3系统. 1.Uboot这个直接使用官方镜像烧写就可以了,一般情况不用去重复烧写. 略 ...
- 漫谈LiteOS之开发板-LiteOS移植(基于GD32450i-EVAL)
1 为什么移植? 嵌入式设备的芯片型号和外设的差异较大,资源有限.而RTOS无法适配集成所有的驱动,因此会先适配部分开发板,然后通过移植使得适配更多的开发板. 可移植性是嵌入式操作系统与普通操作系统的 ...
- #2020征文-开发板# 用鸿蒙开发AI应用(三)软件篇
目录: 前言 HarmonyOS 简介 DevEco Device Tool(windows下) 获取源码(切换到ubuntu) 烧录程序(切换回windows) 前言上一篇,我们在 Win10 上用 ...
- 嵌入式开发板iTOP4412学习开发板
网站:http://www.topeetboard.com 淘宝:https://item.taobao.com/item.htm?_u=okcahs0f42a&id=38712193806 ...
- 迅为I.MX6开发板工业级嵌入式开发平台
迅为-i.MX6开发板是是基于ARM Cortex™-A9架构的高扩展性多核系列应用处理器, i.MX6系列芯片而且根据应用场合的不同,提供了可供选择的单核.双核和四核产品供客户选择.i.MX6系列的 ...
随机推荐
- 高性能Javascript--脚本的无阻塞加载策略
Javascript在浏览器中的性能,可以说是前端开发者所要面对的最重要的可用性问题. 在Yahoo的Yslow23条规则当中,其中一条是将JS放在底部 .原因是,事实上,大多数浏览器使用单进程处理U ...
- web全栈开发之网站开发二(弹出式登录注册框前端实现-类腾讯)
这次给大家分享的是目前很多网站中流行的弹出式登录框,如下面的腾讯网登录界面,采用弹出式登录的好处是大大提升了网站的用户体验和交互性,用户不用重新跳转到指定的页面就能登录,非常方便 先来个演示地址 要实 ...
- HTML 事件(一) 事件的介绍
本篇主要介绍HTML中的事件知识:事件相关术语.DOM事件规范.事件对象. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三 ...
- PHP获取客户端IP
/** * 获取客户端IP */ function getClientIp() { $ip = 'unknown'; $unknown = 'unknown'; if (isset($_SERVER[ ...
- 著名ERP厂商的SSO单点登录解决方案介绍一
SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他应用中用于同一个用户 ...
- MySQL: Fabric 搭建 HA
搭建好Fabric之后,就可以在它的基础上创建HA Group. Shard Group.HA+Shard Group等.这里来说明一下如何快速的搭建HA环境. Fabric 192.168.2.23 ...
- VIM教程
vim 的环境设定参数 :set nu :set nonu 就是设定与取消行号啊! :set hlsearch :set nohlsearch hlsearch 就是 ...
- 作为前端应当了解的Web缓存知识
缓存优点 通常所说的Web缓存指的是可以自动保存常见http请求副本的http设备.对于前端开发者来说,浏览器充当了重要角色.除此外常见的还有各种各样的代理服务器也可以做缓存.当Web请求到达缓存时, ...
- Storm内部的消息传递机制
作者:Jack47 转载请保留作者和原文出处 欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源. 一个Storm拓扑,就是一个复杂的多阶段的流式计算.Storm中的组件 ...
- React-Native 渲染实现分析
前言 React Native与传统的HybirdApp最大区别就是抛开WebView,使用JSC+原生组件的方式进行渲染,那么整个App启动/渲染流程又是怎样的呢? React Native启动流程 ...