美文网首页nodeWeb 前端开发
nodeJS开发一套完整的项目(1、基础配置)

nodeJS开发一套完整的项目(1、基础配置)

作者: 陈楠酒肆 | 来源:发表于2017-09-20 13:07 被阅读1412次

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。它使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。同时也是近年来比较火的服务端JS平台,这一方面得益于其在后端处理高并发的卓越性能,另一方面在nodeJS平台上的npm、grunt、express等强大的代码与项目管理运用崛起,几乎重新定义了前端的工作方式和流程。
    下面我就结合实际的项目来讲一讲如何用nodeJS开发项目,包括从项目的环境配置到项目的正式上线等等。这是一个微商城项目,它包含的内容比较多,包括前台、后台、API接口,有兴趣的朋友可以跟我一起走一遍,这个项目走下来你的能力会有质的飞跃,同时也会让你知道更多知识。
    友情提醒:当项目完成后,我会提供下载地址,供大家在本地运行。

    技术说明:nodejs + express + mongodb + mongoose + ES6/7

    本次API接口我们用nodejs开发,使用ES6/7语法进行编写。如果对ES6不熟悉的朋友可以参考《ECMAScript 6入门

    一、安装nodeJS

    首先我们到Node.js 中文网下载最新的nodejs安装包。在下载完安装包后,点击安装文件进行安装,安装完成后,打开命令提示符,输入node -v,如果能看到对应的版本号输出,则表示安装成功

    nodejs安装成功图

    二、安装MongoDB

    先来简单的介绍一下MongoDB。MongoDB是一个高性能、开源、无模式的文档型数据库,是当前NOSQL数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或者键/值存储方式。Mongo使用C++开发。

    特点:

    高性能、易部署、易使用,存储数据非常方便。主要功能特性有:

    面向集合存储,易存储对象类型的数据。
    模式自由。
    支持动态查询。
    支持完全索引,包含内部对象。
    支持查询。
    支持复制和故障恢复。
    使用高效的二进制数据存储,包括大型对象(如视频等)。
    自动处理碎片,以支持云计算层次的扩展性
    支持Python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++语言的驱动程序,社区中也提供了对Erlang及.NET等平台的驱动程序。
    文件存储格式为BSON(一种JSON的扩展)。
    可通过网络访问。

    功能:

    面向集合的存储:适合存储对象及JSON形式的数据。
    动态查询:Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
    完整的索引支持:包括文档内嵌对象及数组。Mongo的查询优化器会分析查询表达式,并生成一个高效的查询计划。
    查询监视:Mongo包含一个监视工具用于分析数据库操作的性能。
    复制及自动故障转移:Mongo数据库支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目标是提供冗余及自动故障转移。
    高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)
    自动分片以支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器。

    适用场合:

    网站数据:Mongo非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。
    缓存:由于性能很高,Mongo也适合作为信息基础设施的缓存层。在系统重启之后,由Mongo搭建的持久化缓存层可以避免下层的数据源 过载。
    大尺寸,低价值的数据:使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很多时候程序员往往会选择传统的文件进行存储。
    高伸缩性的场景:Mongo非常适合由数十或数百台服务器组成的数据库。Mongo的路线图中已经包含对MapReduce引擎的内置支持。
    用于对象及JSON数据的存储:Mongo的BSON数据格式非常适合文档化格式的存储及查询。

    第一步下载MongoDB

    下载地址

    第二步解压

    mongodb-win64-i386-v2.4-latest.zip
    例如解压到
    D:\mongodb

    第三步 设置环境变量

    把$MongoDB\bin 设置到系统的环境变量path中

    第四步:配置文件配置

    新建文件mongo.config 在解压的主目录下 例如这里D:\mongodb
    填写如下内容

    store data here 定义一个data文件夹用来存放数据

    dbpath=D:\devsofts\mongodata

    all output go here 定义一个存放log文件的位置

    logpath=D:\devsofts\mongolog\mongo.log

    log read and write operations

    diaglog=3

    第五步:安装启动MongoDB Server

    在cmd下使用

    把MongoDB加载到window服务里面
    d:\mongodb\bin> mongod --logpath D:\mongodb\logs\mongodb.log -logappend -dbpath D:\mongodb\data\db\ -directoryperdb -serviceName MongoDB -install
    .....
    Sat Jun 08 17:26:10.713 Service can be started from the command line with 'net s
    tart MongoDB'

    接着启动服务:
    D:\mongodb\bin>net start MongoDB
    Mongo DB 服务正在启动 .
    Mongo DB 服务已经启动成功。

    mongoDB启动图 mongoDB添加在系统服务里

    三、创建nodejs项目

    在D盘下创建项目--《node-element》,打开命令提示符,指向该项目


    然后全局安装express脚手架

    npm install -g express
    npm install -g express-generator  
    

    输入命令创建一个名为"node-element"的空项目,-e参数代表使用的ejs模板,如果想用jade的话请使用-t

    express -e node-element
    

    cd到microblog目录下,执行命令,安装项目依赖。

    npm install
    
    安装项目依赖 最终目录如下

    到此,该项目的基础信息已经配置成功,下面我们就会在这个基础上进行开发,在开发过程中,我会具体讲解各个技术的用法,希望大家喜欢。

    章节链接

    nodeJS开发一套完整的项目(2、相关模块介绍)
    为了更好的服务大家,请加入我们的技术交流群:(511387930),同时您也可以扫描下方的二维码关注我们的公众号,每天我们都会分享经验,谢谢大家。

    相关文章

      网友评论

      • f3ff61201961:第三步里面.
        express -e node-element 这一句我如果加上后面的node-element ,会在node-element文件夹下面再新建一个node-element 文件夹
        cd到microblog 不知道microblog这个文件夹在哪里啊 我看你截图也没见这个文件夹啊,,,
        陈楠酒肆:@Doll_584 我是把项目创建好后,考出来的,我不喜欢把项目藏的太深
      • f3ff61201961:第四步汉字是注释吧?
        陈楠酒肆:@Doll_584 这是配置数据库用的
        陈楠酒肆:@Doll_584 是的,后面我会写详细点,尽量让大家看明白
      • f3ff61201961:第四步看不明白
      • 末小北先生::joy: :scream: :cold_sweat: :sunglasses: :no_mouth: :smile:
        陈楠酒肆:@linmufeng 不懂你的意思

      本文标题:nodeJS开发一套完整的项目(1、基础配置)

      本文链接:https://www.haomeiwen.com/subject/lzinsxtx.html