V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kaolalicai
V2EX  ›  Node.js

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

  •  
  •   kaolalicai · 2018-12-27 10:59:08 +08:00 · 2615 次点击
    这是一个创建于 2157 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    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 就没有了吗?
    不存在的,不过搬砖的时候更方便了,偶尔还可以打打养生代码~


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

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2664 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 02:03 · PVG 10:03 · LAX 18:03 · JFK 21:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.