艾逗笔

IT工程师 | 设计师

Mysql百万级数据迁移实战笔记

Posted on  

背景 上个月跟朋友一起做了个微信小程序,趁着5.20节日的热度,两个礼拜内迅速积累了一百多万用户,我们在小程序页面增加了收集formid的埋点,用于给微信用户发送模板消息通知。 这个小程序一开始的后端逻辑是用douchat框架写的,使用框架自带的dc_mp_fans表存储微信端授权登录的用户信息,使用dc_mp_tempmsg表存储formid。截止到目前,收集到的数据超过380万,很大一部分fo ...

小程序源码反编译实战笔记

Posted on  

最近在做微信小程序开发,看到一些做的比较有意思的小程序,想看一看他们的源码,于是研究了一下小程序源码反编译相关的技术。结合本次经历,总结如下。 手机root 要拿到小程序在手机上的源码包,需要有一台越狱的iphone或者一台拥有root权限的android机,正好我手里有一台闲置的小米4,就拿来用了,试过很多种方式给小米4root,差点搞成板砖机,一直在recorvy模式启动不了,最后尝试了小米官 ...

golang实现RPC的几种方式

Posted on  

什么是RPC 远程过程调用(Remote Procedure Call,缩写为 RPC)是一个计算机通信协议。 该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。 如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用。维基百科:远程过程调用 用通俗易懂的语言描述就是:RPC允许跨机器、跨语言调用计算机程序方法。打个比方,我用g ...

从wordpress到hexo博客迁移记录

Posted on  

我从2013年起,使用wordpress搭建了自己的个人博客,四年的时间写了将近50篇文章,记录了自己在日常开发中遇到的一些问题和解决办法,同时做了几个系列的技术分享。虽然博文数量不算很多,但每一篇文章都花了很多的心思在写,最近也一直在思考把写博客坚持下去并保持博客频繁更新的问题。 wordpress是phper最喜欢的博客系统,也是全世界范围内非常流行的CMS管理系统,它的优点是更新迭代频繁 ...

开发一个自己的composer包

Posted on  

php的composer类似于node的包管理机制,都是可以通过一些命令操作下载开发者发布的功能包,并且包之间可以互相依赖,管理起来比较方便。下面根据自己踩过的坑总结一下如何创建一个自己的composer包。 创建一个composer包 在packages目录下面创建一个自己的composer包:mikephp-db,composer.json里面填写包的基本信息,src目录下面是包的功能代码 ...

在php中使用curl多线程下载图片

Posted on  

遇到一个需求:要下载这个网站http://www.laredoute.com/上面的商品图片到本地。 分析了一下,这个网站是一个国外的站点,受cdn节点的影响,在国内打开的速度比较慢。另一方面,要下载的商品图片较大,单张图片的大小有超过200kb的。 现在的需求是,要在短时间内批量下载该网站上面的商品图片到本地,鉴于这两点考虑,如果使用php来做的话,单纯的用file_get_contents可 ...

聊一聊微信开发那些事儿

Posted on  

Programming make the world a better place, anyone can be anything 前言 微信公众号2012年正式推出,至今已走过5个年头,在这五年的时间内,很多微信第三方企业迅速崛起,典型代表有微盟、微客来这些以公众号托管为主的企业。而今天我想跟大家聊的是微信公众号开发这个领域的一些事情。 经历 我是2013年末接触微信开发的,那时候还在上学, ...

AES加解密在php接口请求过程中的应用

Posted on  

在php请求接口的时候,我们经常需要考虑的一个问题就是数据的安全性,因为数据传输过程中很有可能会被用fillder这样的抓包工具进行截获。一种比较好的解决方案就是在客户端请求发起之前先对要请求的数据进行加密,服务端api接收到请求数据后再对数据进行解密处理,返回结果给客户端的时候也对要返回的数据进行加密,客户端接收到返回数据的时候再解密。因此整个api请求过程中数据的安全性有了一定程度的提高。 今 ...

浅谈shtml与html的区别

Posted on  

遇到有人咨询 shtml 与 html 的区别,顺手查了一波资料,根据我的理解整理一下与大家分享。 何为shtml? shtml跟html类似,也是一种用于网页设计的标记型语言,区别在于:html是一种纯静态的标记型语言,在html文档里面写的内容是什么,用户打开浏览器看到的就是什么,而shtml是一种半静态半动态的标记型语言,在shtml里面可以包含SSI命令,当用户在浏览器浏览shtml ...

git常用命令整理

Posted on  

拉取分支代码:git clone -b [branch_name] [remote_url] 查看所有远程分支:git branch -a 查看本地分支:git branch 创建分支:git branch [branch_name] 切换到分支:git checkout [branch_name] 删除本地分支:git branch -d [branch_name] 删除远程分支:git pu ...