摘要: 这个框架从2018年1月左右开始开发,主要参考资料是《Nodejs:摆脱黑工坊发展出一款基础企业级框架》和阿里开源的 egg.js ,核心库是 koa@2。一开始用一两周的时间开发了原型,后来在业务的不断开发中,框架也不断的进行着更新。 现在主要有下面的特性: 负载均衡 负载均衡使用的是 pm2,每 阅读全文
posted @ 2019-01-08 17:13 流殇微 阅读(818) 评论(0) 推荐(0) 编辑
摘要: 做自研缓存之前也不是没有考虑过第三方缓存,但是因为下面的原因,最终还是选择了自研缓存: 一、做一个简单的内存缓存也不是特别困难,这就为自研缓存提供了一个充分条件,也就是说,我们自己做,也没什么大不了 二、第三方缓存也不一定有我们需要的内容,比如说大部分都没有我们需要的缓存命中率统计功能,如果要使用第 阅读全文
posted @ 2019-05-10 11:15 流殇微 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 实现方案: 一、 展示中心 使用 vue 作为单页面模板方案,使用 axios 作为 http 请求方案,使用 websocke? 和注册中心进行长连接? 二、注册中心 使用 http 向展示中心提供服务,作为服务端使用 websocket 与服务方和调用方进行连接,对服务方每隔5s(可配置)进行连 阅读全文
posted @ 2019-04-28 16:07 流殇微 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 经过多个项目的实践和思考,总结出当前规范。不强求别人一定要遵守这个规范,首先自己要尽量遵守这个规范。 一. 模块引用规范 类似如下的形式: const fs = require('fs'); const koa = require('koa'); const utils = require('../ 阅读全文
posted @ 2019-04-02 10:36 流殇微 阅读(672) 评论(0) 推荐(0) 编辑
摘要: 长轮询的实现原理:浏览器发出请求之后,服务端资源如果没有就绪,那么并不立即返回,而是在一个时间范围内,不断地去查询资源是否就绪,如果就绪,就返回资源,如果超时了还没有就绪,就返回超时。 代码实现如下: 这是超时的情况,这里是 getRel(1000 * 20) 这是返回了数据的情况,这里是 getR 阅读全文
posted @ 2019-03-28 17:36 流殇微 阅读(662) 评论(0) 推荐(0) 编辑
摘要: linux 环境中,一般都使用 shell 脚本来做应用的启动控制。 在写脚本的时候,首先,先要确定在执行脚本之前,是不是需要做些什么准备工作。 第一步,假定是用 windows 系统作为开发机,那么如果是直接把 shell 脚本复制到 linux 机器上,那么就要首先使用 dos2unix 命令把 阅读全文
posted @ 2019-03-27 20:27 流殇微 阅读(557) 评论(0) 推荐(0) 编辑
摘要: 一直都知道node.js的性能很好,但是却没有实际测试过,今天用ab实际测试一下。 先上结果:支持13000并发(helloword) CPU: inter 酷睿 i3-2330M 2.2GHz 4核 内存: 6G 系统: Win64 (其实就是老旧的加装了4G内存的联想G470笔记本) Node: 阅读全文
posted @ 2019-02-14 18:37 流殇微 阅读(1894) 评论(0) 推荐(0) 编辑
摘要: mongodb 3.6.10 msi: https://pan.baidu.com/s/1ph8qvybukSL-LlLCca5uKg 阅读全文
posted @ 2019-02-12 18:00 流殇微 阅读(740) 评论(0) 推荐(0) 编辑
摘要: 其实添加接口返回数据压缩还不是增加的第一个功能。因为第一个接口是不需要查数据库的,所以一开始只考虑了缓存问题,没有考虑数据库连接问题。 做缓存的时候,因为时间长任务少,就自己从头开始做了一个轻量的缓存系统。这个缓存系统具有缓存数据和超时被动清除数据的功能,不用主动清除是因为被动清除可以不用设置定时器 阅读全文
posted @ 2019-01-08 14:25 流殇微 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 在产险作为主要开发人员一共做了4个项目,分别是两个 node.js 后台服务、一个 react 移动端项目、一个 vue 移动端项目。其中两个 node.js 服务都是只有我一个人开发,移动端项目是有5个人的前端团队协作开发。第一个 node.js 服务是一个车型查询服务,主要目标是把服务升级到新的 阅读全文
posted @ 2019-01-07 18:37 流殇微 阅读(452) 评论(0) 推荐(0) 编辑