vim 快捷键大全

2019-08-16
阅读 3 分钟
4.8k
后续更新:[链接] 全局 文件另存为 :saveas filename 关闭当前窗口 :close 光标 移动光标到页面顶部,中部,底部 H,M,L 移动到下个单词开头,结尾 w,e 移动到上个单词开头 b 移动光标 上下左右 k,j,h,l 移动到匹配的括号 % 移动到行首 0 移动到行首非空白字符 ^ 移动到行尾非空白字符 g 移动到行尾 $ 移动到文件第一行 g...

我是如何成为vim幸存者的?

2019-08-12
阅读 2 分钟
2.2k
如果你不能接受我最差的一面,那么你也不值得拥有我最好的一面。玛丽莲·梦露 具体什么时候第一次用vim,我已经大约记不清楚,那应该是大学中的某次计算机课程。 和许多人一样,第一次用vim的人都会觉得无从下手,不知所措,无法沟通,难以理解。 vim外表也不漂亮,只有一张乌黑的脸,和那一闪一闪的像眼睛的似的光标。 ...

WebRTC学习资料整理

2019-03-31
阅读 2 分钟
6.6k
下面两个都是github项目,项目中有各种WebRTC的demo。除了demo之外,这两个项目的issuese也是非常值得看的,可以解决常见的问题

markdown博客图床上传的艰辛之路

2019-03-25
阅读 2 分钟
7.6k
markdown用着很爽吧,但是图片存哪呢? 写给所有写静态博客,又想搞个图床的人。 1. 适用场景 假如你用github page用markdown写个人博客的话,而你正好又用到一些图床的话,那你可以继续看下去。 2. 图床分类 图床可以分为两类: 付费类:云服务提供的对象存储: 例如七牛、阿里云提供的对象存储 免费类:专门的图床网站:...

m2w:markdown 转换成微信公众号内容

2019-03-24
阅读 2 分钟
4.4k
项目地址:[链接] 特点 加载速度快 完美还原ul和li 字号调整为16px 仅支持将markdown文件转化成微信公众号内容,不支持markdown编辑。确切点说是编辑有点困难,哈哈哈。适合做个格式转换器 支持90种代码高亮的主题 支持显示目录 支持将markdown中的链接,转化成底部外链 表格和图片复制到微信编辑器中100%宽度 渲染截图 ...

最熟悉的陌生人:JavaScript数据类型

2019-03-22
阅读 3 分钟
3.6k
最近面试了三个开发,他们都没有说清楚JS的基本类型有哪些。而且往往错误的说了一些C语言的数据类型,例如int, float, double之类的数据类型。

tcp ip高效编程 笔记

2019-01-30
阅读 4 分钟
1.9k
CS架构与对等实体 CS位置 备注 特点 举例 同一机器 数据会被环回,并不会放到网络设备输出队列中 几乎没有网络延迟和丢包 自己开发web程序调试 同一局域网内 极少没有网络延迟和丢包 打印机 不同网络 位于广域网 途径的路由器如果队列空间耗尽,就会导致丢弃分组,进而导致重传。重传又会引起分组的重复和乱序。 真实环...

Node.js amqplib 连接 Rabbit MQ 最佳实践

2019-01-24
阅读 2 分钟
6.3k
connnection的内存消耗。一个connection至少要使用100kb的内存空间,过多的connetion占用将会导致内存溢出,服务崩溃等问题。(我曾遇到过生产系统,RabbitMQ连接过多,系统一直处于崩溃边缘的险境)

协议简史:如何学习网络协议?

2019-01-18
阅读 3 分钟
10.3k
大学时,学到网络协议的7层模型时,老师教了大家一个顺口溜:物数网传会表应。并说这是重点,年年必考,5分的题目摆在这里,你们爱背不背。考试的时候,果然遇到这个问题,搜索枯肠,只能想到这7个字的第一个字,因为这5分,差点挂科。后来工作面试,面试官也是很喜欢七层模型,三次握手之类的问题,但是遇到这些问题时...

浏览器请求响应慢,该从哪些方面分析

2019-01-02
阅读 2 分钟
11.2k
查看网络面板 响应比较慢可以从两个层次去考虑 连接初始化阶段耗时 请求和响应耗时 查看关键指标: 排队 达到浏览器最大并发数量限制 有更高优先级的请求插队,低优先级的任务被延后 系统内存空间不足,浏览器使用磁盘空间 拥堵 原因和排队中类似 DNS查询 花在DNS查询上的时间 Proxy negotiation. 代理协商 Request sent...

log4s 方便的前端日志下载工具

2018-12-19
阅读 1 分钟
2.7k
log4s [链接] log4s是对log4b的重构,并且让其支持npm下载。 做这个工具是因为: 某些时候看服务端日志太麻烦 提Bug时,给的相关信息又无法分析出问题原因 有些错误是无法说明清楚的,比如websocket接收到的某个消息的某个字段错误。 所以我做了这个工具,可以点击某个按钮,就能把前端日志下载下来,然后将日志附在Bug...

深入理解 JavaScript中的变量、值、传参

2018-12-17
阅读 3 分钟
3.4k
原始类型中,有三个特殊的引用类型Boolean, Number, String,在操作原始类型时,原始类型变量会转换成对应的基本包装类型变量去操作。参考JavaScript高级程序设计 5.6 基本包装类型。

你不主动去要世界也不会给你 漫话开源项目的可持续发展之路

2018-12-16
阅读 2 分钟
2.6k
简介:本文从两个角度梳理 有些开发者,对于向用户请求捐助是难以启齿的 大部分用户没有回报的意识,认为开源就等于免费 你不主动去要世界也不会给你 开源的价值并不是那么容易量化,你不主动去要世界也不会给你。 - 尤雨溪回应 为什么Patreon上开源领袖Eric Raymond所得到的捐助不到vue.js的 1/10? 在现实生活中,假如...

从官网学习Node.js OS模块方法速查

2018-12-15
阅读 1 分钟
2.6k
1. 简介 os模块提供获取操作系统信息的实用方法。 {代码...} 2. 方法简介 系统换行符 os.EOL windows是'\n\r', posix是'\n' 系统架构 os.arch() 系统常量 os.constants 系统CPU信息 os.cpus() 系统字节序 os.endianness() 'BE'大端 'LE'小端 空闲内存信息 os.freemem() 获取进程优先权 os.getPriority([pid]) 获取用户ho...

状态码为200时 jQuery ajax报错

2018-12-14
阅读 2 分钟
4.7k
jquery ajax的dataType字段包含:json, 但是服务端返回的数据不是规范的json格式,导致jquery解析json字符串报错,最终导致ajax报错。

从官网学习Node.js Process模块方法速查

2018-12-14
阅读 4 分钟
3.3k
1. Process process是一个全局的对象,不需要require。process提供控制和获取当前Node.js进程信息的能力。 1.1. Process Events process对象实际上是一个EventEmitter的一个实例。 下面列举了process对象上可以监听的事件。 beforeExit 当eventloop是空的时候触发,直接调用process.exit()并不会触发此事件 disconnect ...

从官网学习Node.js FS模块方法速查

2018-12-13
阅读 4 分钟
5k
异步方式其最后一个参数是回调函数。回调函数的第一个参数往往是错误对象,如果没有发生参数,那么第一个参数可能是null或者undefinded。

Docker镜像批量清理之道

2018-12-13
阅读 2 分钟
4.1k
使用jenkins作为打包的工具,主机上的磁盘空间总是被慢慢被占满,直到jenkins无法运行。本文从几个方面来清理docker垃圾。 批量删除已经退出的容器 {代码...} 批量删除带有none字段的镜像 $3一般就是取出每一行的镜像id字段 {代码...} 方案1,根据镜像ID删除镜像时,有写镜像虽然镜像名不同,但是镜像ID都是相同的,这是...

WTF!! Vue数组splice方法无法正常工作

2018-12-12
阅读 2 分钟
6.1k
当函数执行到this.agents.splice()时,我设置了断点。发现传参index是0,但是页面上的列表项对应的第一行数据没有被删除,

Node.js 使用axios读写influxDB

2018-10-26
阅读 1 分钟
4.1k
Node.js读写数据到influxDB,目前已经有一个库node-influx, 这个库功能非常强大,但是我个人使用这个库的时候,遇到无法解决的问题。 使用curl都可以写数据到influxDB,但是用node-influx总是报错,搞了半天也无法解决,就索性不用它了。 influxDB提供HTTP的API,也就是说Node.js中的axios或者request等HTTP客户端工具是...

Node.js连接RabbitMQ,断线重连,动态绑定routing key

2018-10-25
阅读 5 分钟
5.9k
RabbitMQ官方提供的教程[链接],是基于回调的。 下面将给出基于Promise式的写法。并且实现动态的队列绑定 初始化配置 {代码...} 向队列发送消息的函数 {代码...} 当链接rabbitMQ断开时,要主动去重连 {代码...} 连接rabbitMQ的主要函数 {代码...} 动态给队列绑定或者解绑routing key {代码...} 使用方法 加入你的服务端...

Node.js 如何找出循环依赖的文件?如何解决循环依赖问题?

2018-10-25
阅读 3 分钟
4.8k
本文重点是讲解如何解决循环依赖这个问题。关心这个问题是如何产生的,可以自行谷歌。 如何重现这个问题 {代码...} {代码...} 执行下面的代码 {代码...} sayA is not a function那么sayA是个什么呢,实际上它是 undefined 遇到这种问题时,你最好能意识到可能是循环依赖的问题,否则找问题可能事倍功半。 如何找到循环依...

众里寻他千百度 - 如何挑选高质量的前端项目资源?

2018-10-23
阅读 1 分钟
2.3k
我以前写过一篇文章,UI大全:前端UI框架集合(持续更新,当前32个), 最近翻阅了这篇文章。发现有些框架,如果你用了,那你就掉坑里去了。 NPM是包最多管理工具,按照80-20定律,其中80%的包都可能是坑,其中20%的包应该是高质量的。那么应当如何挑选呢? bestofjs.org 最好的都在这里 bestofjs整合了最优秀的的js, htm...

shields小徽章是如何生成的?以及搭建自己的shield服务器

2018-09-30
阅读 2 分钟
3.9k
一般开源项目都会有一些小徽章来标识项目的状态信息,并且这些信息是会自动更新的。在shields的官网[链接] 上面有各种各样的小图标,并且有很多自定义的方案。

Express代理中间件问题与解决方案

2018-09-30
阅读 2 分钟
5.2k
前后端分离应用的架构 在前后端分离架构中,为了避免跨域以及暴露内部服务地址。一般来说,我会在Express这层中加入一个反向代理。 所有向后端服务访问的请求,都通过代理转发到内部的各个服务。 这个反向代理服务器,做起来很简单。用http-proxy-middleware这个模块,几行代码就可以搞定。 {代码...} http-proxy-middle...

Jenkins构建镜像成功后,向Gitlab创建标签

2018-09-07
阅读 2 分钟
6.7k
1 环境介绍 私有部署 jenkins 2.121.2 私有部署 GitLab 2.3.0 2 前提知识 本教程不会详细介绍构建参数,适合有一定构建基础的同学来看。 3 Jenkins构建参数 3.1 设置源码管理Name属性 在Name中输入一个字符串,例如demo 如果你看不到Name字段,那么应该点击高级按钮,默认该字段是隐藏的 3.2 增加构建步骤执行shell 如果...

Restful Api 实战设计指南

2018-08-30
阅读 7 分钟
7.3k
关注点分离(Separation of concerns,SOC)是对只与“特定概念、目标”(关注点)相关联的软件组成部分进行“标识、封装和操纵”的能力,即标识、封装和操纵关注点的能力。是处理复杂性的一个原则。由于关注点混杂在一起会导致复杂性大大增加,所以能够把不同的关注点分离开来,分别处理就是处理复杂性的一个原则,一种方法...

NodeJS Events 必知必会

2018-08-30
阅读 4 分钟
2.8k
1. 环境 node 8.11.3 2. 基本使用 {代码...} 输出: {代码...} 3. 传参与this指向 emit()方法可以传不限制数量的参数。 除了箭头函数外,在回调函数内部,this会被绑定到EventEmitter类的实例上 {代码...} 输出: {代码...} 4. 同步还是异步调用listeners? emit()法会同步按照事件注册的顺序执行回调 {代码...} 输出: {...

Nodejs Express 通过log4js写日志到Logstash(ELK)

2018-08-30
阅读 4 分钟
7.7k
在我向logstash写日志之前,已经有同事向Logstash写过日志了。当时只是知道logstash的ip和端口,没有搞清楚协议,所以没有写进去。

Aest 功能强大的NodeJS Restful 接口测试工具

2018-08-10
阅读 6 分钟
4.3k
1. Aest 项目地址:[链接] 功能强大的REST接口测试工具, Power By Jest, axios, superstruct, mustache, lodash 2. 特点 非常简单: 大部分工作量在于写配置文件 请求模板: 可以在配置文件中加入运行时变量,如/users/{{id}} 响应体结构验证: 支持对响应体的字段类型进行严格校验,多字段、少字段、字段类型不符合预期都...