最近朋友用shell写自动化测试脚本, 请求接口并处理一些逻辑。我写的也不多,只能边查边给他提供帮助。
以下就是这个过程形成的知识点【发现shell又强大,又弱小[笑哭]】
0、把数组转成字符串
本以为像其他语言,有现成的方法直接转换,比如PHP的implode(), Golang的strings.Join(strSlice, “,”)
结果发现Shell并没有,沮丧~
继续阅读
最近朋友用shell写自动化测试脚本, 请求接口并处理一些逻辑。我写的也不多,只能边查边给他提供帮助。
以下就是这个过程形成的知识点【发现shell又强大,又弱小[笑哭]】
0、把数组转成字符串
本以为像其他语言,有现成的方法直接转换,比如PHP的implode(), Golang的strings.Join(strSlice, “,”)
结果发现Shell并没有,沮丧~
继续阅读
2年前用过一段时间Go语言,最近用map测试一些功能的时候,编译各种报错。时间长了语法有些陌生是一个原因,另一个主要原因是之前没有全面掌握。
这里就简单小结map的声明和初始化的方法。
你可能也知道map的声明和初始化方法有两种, 直接初始化和使用make,如下
var m1 map[int]int = map[int]int{1: 100, 2: 200} var m8 map[int]int = make(map[int]int, 10)
第一部分 描述
这里重点对全局map变量和局部变量展开说明,分三种情况
继续阅读
一直使用WordPress的插件SyntaxHighlighter Evolved支持各种语言的高亮显示。但是并不支持Golang和Lua。特整理如下,希望能对你有所帮助。
继续阅读
0、问题描述
遇到了一个很奇怪的问题,微信发朋友圈,选择相册中的图片,识别不出来,发送提示失败。
图片是通过手机客户端生成后,保存在本地相册的。Android手机有这个问题,iOS没有。
Android保存逻辑:
0.0、传递给客户端的如果是url,客户端会获取url中的文件名,然后保存在本地。
0.1、传递给客户端的如果没有文件名,比如是base64格式的图片,客户端会生成一个文件名。
iOS保存逻辑:
0.2、客户端不管什么情况都会通过md5加密生成文件名,是系统本身的功能。(据说传了文件名对文件名md5, 没传文件名会有系统默认的算法)
存储引擎是数据如何存储到文件,如何更新、查询,如何建立索引的一种机制。
MySQL核心两点就是存储引擎和索引。
继续阅读
把2年前整理的笔记放在这里,仅供查阅。
一、Redis安装
此为CentOS、Mac下安装参考第三部分
0、下载
在Redis官网的下载页面,我们只能下载最新的版本。
如果要查看下载历史版本,可以进入官网的这个页面http://download.redis.io/releases/(没有在官网找到这个链接的入口)
wget http://download.redis.io/releases/redis-5.0.5.tar.gz tar xzf redis-5.0.5.tar.gz
TCP是一个面向连接的协议,通信双方传输数据之前,必须建立连接。TCP建立连接和断开连接的策略,可以分不同层次的掌握,这里大致分4层。
一、通俗化的描述
建立TCP连接
服务器A和服务器B通信,建立连接比较好理解的比喻:
服务器A:你好服务器B,我是服务器A。
服务器B:你好服务器A,我是服务器B。
服务器A:服务器B,你好。
断开TCP连接
设定服务器A是主动结束方
服务器A:你好, 我的数据发送完毕了,我要进入准备断开的状态了。(此时它虽然不再发送数据了,但是可以接受数据)
服务器B:我知道了,我还没有发送完毕的,你等着吧。
服务器B:我也发送完毕了,可以断开连接了。(此时它也进入准备断开的状态)
服务器A:好的,那断开吧。
继续阅读
今天遇到了一个线上问题,具体是啥就不细说了。
思考了很久,重新梳理了下解决问题的思路:
0、出了问题,观察分析日志,是基本手段,是大家都知道的。此外,往往我们需要增加一些日志,打印出运行中的参数。观察新增日志的时候,尽量用真实的环境是触发生成日志,并且你的动作跟你的日志要对应起来,而不是模拟请求。比如客户端内H5页面的问题,用PC浏览器去模拟请求。
1、对于偶现的问题,有一定概率是集群中部分机器的问题,不要轻易推给网络,说是网络问题。要跟踪一个请求,从头到尾往下捋,一环一环排除。
本篇主要记录git删除文件/分支常用操作
今天准备加入一个PHP内核QQ群,申请条件是回答PHP生命周期的5个阶段,一时间还需要去查。特整理如下
0、模块初始化阶段
PHP框架、Zend引擎初始化操作。入口函数为:php_module_startup()。主要进行操作如下: