Kivi

没有什么远大理想,只是永远都不会满足而已


  • 首页

  • 关于

  • 标签

  • 归档

Koa2源码初读

发表于 2016-05-25 更新于 2017-07-02 分类于 Node.js
本文字数: 3.6k 阅读时长 ≈ 3 分钟

koa context

在分析koa其他原理之前,首相需要理解koa中提出的context到底是什么,下面用一张图来说明

koa

抽象和封装

  • 抽象出Request, Response, Context三大类,封装常用操作

  • 将Request,Response,部分方法代理到Context上

    为了实现最终用一个`Context`实例携带全部属性方法,传递给中间件使用
    
  • 实例化Request,Response,Context,并将其实例关联Koa Application实例(示例图中的app),Node.js的http request实例(示例图中的req),Node.js的http response实例(示例图中的res)关联起来

    关联的部分原因是`Request`, `Response`, `Context`封装常用操作时,用到了`app`,`req`,`res`
    另一部分原因是保留原始`req`,`res`数据
    

这样一来,Context的实例就将一个http server常用的全部属性方法全部封装到一个上下文中,方便传递给中间件调用,完成了请求准备工作

阅读全文 »

Linux端口号知多少

发表于 2016-05-10 更新于 2017-08-06 分类于 linux
本文字数: 432 阅读时长 ≈ 1 分钟

查看系统可用端口号

一般认为,linux可用端口号1024~65535,0~1024尽量不用使用,而在实际开发生产环境中,你是否经常使用0~1024呢?

查看linux系统默认可用的端口号

1
sysctl -a | grep ip_local_port_range

更改默认可用端口号

1
2
3
vim /etc/sysctl.conf
net.ipv4.ip_local_port_range = 1024 65535
sysctl -p

注意:这里我没有自己测试,我的机器查看可用端口号打印出来的是这个net.ipv4.ip_local_port_range = 32768 61000

查看系统端口占用情况

lsof

所有端口

1
lsof -i

指定端口

1
lsof -i:端口号

netstat

查看所有开启的端口(这个命令更能清晰的观察端口使用情况)

1
netstat -lntp

netstat命令怎么查看端口是否占用?这篇文章讲解得非常详细

Linux命令ls通配符的使用

发表于 2016-05-10 更新于 2017-07-02 分类于 linux
本文字数: 1.8k 阅读时长 ≈ 2 分钟

当在使用命令行时,有很多时间都用来查找你所需要的文件,如ls find等。 sehll提供了一套完整的字符串模式匹配规则,或者称之为元字符,当shell遇到上述字符时,就会把它们当作特殊字符,而不是文件名中的普通字符,这样用户就可以用它们来匹配相应的文件名,我理解这可以称为通配符。

通配符与正则表达式是有区别的,简单来说:通配符是用来匹配文件名称的,正则表达式是用来匹配字符串的;
在文本过滤工具里,都是用正则表达式,比如像awk,sed,等,是针对文件的内容的
而通配符多用在文件名上,比如查找find,ls,cp,等等

通配符

字符 含义 实例
* 匹配0或多个字符 a*b a与b之间可以有任意长度的任意字符, 也可以一个也没有, 如aabcb, axyzb, a012b, ab。
? 匹配任意一个字符 a?b a与b之间必须也只能有一个字符, 可以是任意字符, 如aab, abb, acb, a0b。
[list] 匹配list中的任意单一字符 a[xyz]b a与b之间必须也只能有一个字符, 但只能是 x 或 y 或 z, 如: axb, ayb, azb。
[!list] 匹配除list中的任意单一字符 a[!0-9]b a与b之间必须也只能有一个字符, 但不能是阿拉伯数字, 如axb, aab, a-b。
[c1-c2] 匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z] a[0-9]b 0与9之间必须也只能有一个字符 如a0b, a1b… a9b。
{string1,string2,…} 匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z] a{abc,xyz,123}b a与b之间只能是abc或xyz或123这三个字符串之一。
阅读全文 »

搭建私有npm服务

发表于 2016-05-06 更新于 2017-07-02 分类于 npm
本文字数: 889 阅读时长 ≈ 1 分钟

需求

  • 构建私有npm服务
  • 公有npm和私有npm同时使用

解决方案

  • sinopia 搭建私有npm服务
  • 借助npm的scoped package功能实现私有公有npm共同使用

环境

node 5.6.0
system mac osx 10.10.5

阅读全文 »

iOS圆角

发表于 2016-05-05 更新于 2017-07-02 分类于 iOS
本文字数: 3.9k 阅读时长 ≈ 4 分钟

写在前面

菜鸡分享给菜鸟看的细小知识点,大神自动略过

需求

  • UIImageView:圆角+边框+阴影
  • UIView:圆角+边框+阴影
阅读全文 »
1…678…12
kivi

kivi

nodejs | server
58 日志
17 分类
32 标签
RSS
© 2019 kivi | 173k | 2:37
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Pisces v7.3.0
|