kaolalicai
V2EX  ›  Node.js

AI 考拉技术分享-Node 基础架构专题

  •  
  •   kaolalicai · Dec 27, 2018 · 3194 views
    This topic created in 2713 days ago, the information mentioned may be changed or developed.

    前言

    2018 年,考拉开始对现有项目的常用的工具库进行整理,包含日期处理,数字处理,logger 等常用工具,并打包成 npm module,方便各个项目使用。
    后期,我们也将重点分享这部分工具库的使用,大家感兴趣的一起来交流学习,有 bug 欢迎提出!

    一、代码风格

    在开发工具库之前,我们统一了编码标准

    (一) JavaScript 代码规范

    前端 browser 通用 统一使用 eslint-config-klg ,基于 eslint-config-standard 封装 安装说明见文档

    (二) Typescript 代码规范

    统一使用 tslint-config-klg ,基于 tslint-config-standard 封装

    安装说明见文档

    二、脚手架

    我们也提供了脚手架 klg-init,来方便大家启动一个新项目。 安装好这个工具后,一键生成项目模板

    $ klg-init dest
    [klg-init] fetching npm info of klg-init-config
    ? Please select a boilerplate type (Use arrow keys)  
      ──────────────  
    ❯ module - npm 库项目模板  
      model - mongoose model 模板 todo  
      project - JavaScript 后端项目模板 todo  
      project-ts - Typescript 后端项目模板 todo  
      admin - 管理后台项目模板 todo  
    

    目前支持的模板有:

    三、工具库列表

    目前已经发布的工具库有:

    • klg-logger:logger 工具,基于 tracer
    • klg-number: 数字处理,主要解决 node 小数精度问题
    • klg-request-log: http 请求 log 记录,方便排查问题
    • klg-mq:rabbitmq 连接工具
    • klg-mq-koa: 将 mq 和 koa router 无缝结合
    • klg-redlock: 基于 redis 的分布式锁
    • klg-date: 日期处理,基于 moment
    • klg-request: 后端使用的 http 请求工具,基于 superagent
    • klg-retry: 重试工具
    • klg-tracer: 链路追踪工具,该项目实际不能使用,原因见项目内文档

    上述项目都可以在我们公司的开源账号找到 AI 考拉 GitHub 账号

    结语

    (工具库还未整理前) 考拉 dev (咆哮状):嗯?谁搞的这个 bug ?给我站出来! 哦。。。好像是我之前搞出来的。。。 (工具库使用期) 考拉 dev:你以为有了工具库 bug 就没有了吗?
    不存在的,不过搬砖的时候更方便了,偶尔还可以打打养生代码~


    工具库将不定时更新,欢迎在下面留下你的反馈,我们也会不断更新!
    著作权归本文作者所有,未经授权,请勿转载,谢谢。

    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   961 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 5414617a · 33ms · UTC 20:01 · PVG 04:01 · LAX 13:01 · JFK 16:01
    ♥ Do have faith in what you're doing.