工具与技巧 基于 Git WebHook 自动部署实现

因为项目版本迭代比较快,而每次迭代都需要重复的上服务器进行部署,实在是有些繁琐。特别是对于频繁修改的 API 文档站点,一天可能有好几次更新推送,于是乎就有了自动部署的想法。本文主要记录怎么去实现自动部署的,对于更详细的概念只会给出参考链接,不会过多赘述。1、一个版本发布的一般过程(基于 Git 管理)1. git pull origin xxxx  将远程仓库分支拉取到本地2. 编写代...

工具与技巧 从 var_dump 到 Xdebug

这次的标题和文章内容似乎契合度不是很高,但管他什么标题呢,就是想写点东西,想把学到的记录下来1、PHP 调试使用 PHP 以来,基本调试都是靠 echo、var_dump、die 等搞定(接触的都是比较简单的流程...)介绍两个不常用的 debug 函数:debug_zval_dump():看到有 zval 应该就能猜到和 PHP 底层变量实现有关了,没错,这个函数输出的内容就是在 var_dum...

工具与技巧 Redis 内存数据库(二)

上文: Redis 内存数据库  提到 Redis 提供了丰富的数据类型,本文将好好记录下这些数据类型。1、对象首先得了解一点:Redis 数据库里面的每个键值对(key-value pair)都是由对象(object)组成的其中,数据键(key) 总是一个字符串对象(string object)而数据键的值(value)可以是字符串对象、散列对象(hash object)、列表对象(...

工具与技巧 Redis 内存数据库

学过了Memcached,怎么能放过 Redis 这个更加强大的内存数据库。1、Redis 简介 Redis 是一套性能非常高效的内存数据存储系统,Redis 把整个数据库全加载到内存当中操作,通过异步操作定期把数据库数据 flush 到硬盘上保存。本质上,Redis 是 Key-Value 类型的内存数据库,不过 Value 的类型更加丰富,可以是 String、List、Set、ZS...

工具与技巧 Memcached 之分布式布置方案

1、Memcached 分布式布置方案我们知道 Memcached 是内存缓存系统,而一台服务器内存肯定是有限的,当一台服务器不能满足我们的需求时,就需要布置多台 Memcached 服务器。但这样的话,怎么确定一个数据应该保存到哪台服务器上面呢?有两种方案,一种是普通 Hash 分布,另一种是一致性 Hash 分布。1.1 普通 Hash 分布普通 Hash 分布比较简单,首先通过 md5 把 ...

工具与技巧 Memcached 内存缓存系统

1、Memcached 简介Memcached 是一款高性能的分布式内存缓存服务器。只存放简单的 Key-Value ,查询时根据存放的 key 获取数据。Memcached 最大的特点就是数据存放于内存,这就会获得比传统文件系统更高效率的读写性能,所以适用于大型网站的缓存系统。一般来说,会使用 Memcached 缓存数据库查询结果,从而在一定程度上解决数据库高并发访问带来的问题。Memcach...

工具与技巧 编码简述

最近遇到一次编码问题,就想着了解一下各种编码方案,以为不难,实际上还是花了不短的时间才大致弄清楚了。(从CSDN博客迁过来的,后续还会将自己CSDN博客文章慢慢迁移过来)1、ISO-8859-1、GB2312、Unicode最初的计算机只需要表示字母,所以需要的空间很少。对应的一个标准就是 ISO-8859-1 ,这个标准是单字节的,向下兼容 ASCII,编码范围 0x00-0xFF,0x00-0...

工具与技巧 虚拟机搭建 Git 服务器

在虚拟机上搭建好了LAMP环境,接下来就需要将宿主机上的项目上传到虚拟机上去了,VirtualBox 提供了增强功能可以使 宿主机和虚拟机共享文件夹,然后还可以使用FTP上传文件,但前面一直在使用Git,也想更好的学习Git,就在虚拟机上搭建一个 Git 服务器吧。虚拟机系统:CentOS7.3-1611.MinimalGit版本:2.13.21、编译安装Git开始想直接通过 yum instal...

工具与技巧 创建虚拟网卡

创建虚拟网卡为了在没有网线的时候,实现虚拟机与宿主机通过桥接模式互ping,然后就了解了下如何创建虚拟网卡,在这里记录一下。主要是作为 VirtualBox 虚拟机网络连接之桥接网卡 一文的一个补充。直接上图:                ...