美文网首页我爱编程
你们要的 Node.js 服务器开源了!

你们要的 Node.js 服务器开源了!

作者: sprint | 来源:发表于2017-10-13 16:47 被阅读2350次

    前言

    之前曾说过要开源一个我自己编写的 Node.js 服务器 由于公司太忙一直没有兑现,今天总算得空整理下代码 并托管至 Github 有兴趣的可移步至: NodeJsServer

    背景

    去年我和我一个朋友寻思一款产品(具体名字就不说了), 他负责线下推广,我负责产品设计和开发,开发涉及到 Android及微信公众号开发,当然还有我不太擅长的服务器开发。

    服务器技术选型上首先想到的是我较为熟悉的 Struts + Hibernate + Spring 技术方案,它们已经很成熟但过于庞大,如果花时间捡起它们倒不如找一个更好的替代方案,我擅长 JavaScript 所以 Node.js 便是首选。

    Node.js 着手学习到正式部署上线前后经历了大概 20 天左右,Node.js 让我体会到服务器端开发原来也可以这么快乐。

    下面开始正题部分,我将罗列出 NodeJsServer 用到的 Modules 及技术点, 涉及到的技术细节本篇文章不会去探讨,有兴趣的可以自己去看源代码。

    Modules 清单

     1. Promise 
     2. jpush-sdk (推送)
     3. http
     4. request 
     5. validator(数据验证)
     6. mysql (数据库)
     7. socket.io (长连接)
     8. redis (定时任务)
     9. moment (时间处理)
    

    技术点清单

     1. mysql 事务管理(见:db.js)
     2. 数据库查询封装(见:db.js)
     2. socket.io 长连接 (见:socket_emitter.js)
     3. 请求数据合法性验证 (见:*_validator.js)
     4. 微信授权 (见:WXSDKAPI.js)
     5. 向公众号用户发送模板消息(见:WXOrderStatusSender.js)
    

    为了保证服务器能正常启动,项目工程未做大的改动,只是删剪了一些敏感信息,启动服务器之前需配置如下信息:

    db -> config -> db-config.js
    
    // DB数据库配置文件
    'use strict';
    
    module.exports = {
        mysql: {
            host: '127.0.0.1', // mysql服务器地址
            user: 'root', // 数据库用户名
            password: '', // 数据库密码
            database:'db_recycle', // 用户端数据库
            port: 3306 // 端口
        }
    };
    

    另外 SQL 文件你可以在工程根目录找到.

    如有问题请尽量在微信公众号(DevTipss)文章下评论,私信超时后无法进行回复,所以请尽量留下评论。


    欢迎关注个人公众号:DevTipss

    DevTipss

    相关文章

      网友评论

        本文标题:你们要的 Node.js 服务器开源了!

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