PHP Apns 推送

PHP 通过Apns给Ios设备推送Notification

前几天折腾Gopush,是没有通过Apns推送IOS实现的,找了几个Golang的实现都有问题,转而寻找PHP的实现方法,发现还是蛮简单的 Apns推送的原理懒得看,基本就是通过Http请求Apns然后苹果去给IOS设备发推送,所以只要请求苹果的服务器就好了.先弄证书 开发给我的都是p12结尾的证书,openssl搞一下 openssl pkcs12 -clcerts -nokeys -out

PHP

(伪)异步实现加速PHP接口的返回速度

App的服务端采用PHP开发,接口返回通常都是使用echo输出json来与App通讯.最近遇到一个问题: App通过微信登录后,需要回调服务器保存相关数据,等待服务器返回后才显示登录成功.服务器需要处理用户相关的信息,把微信返回的头像地址保存到本地图片使用.这个图片是微信的一个url,在获取的时候速度比较慢,经常超过5秒,导致微信登录非常之卡. 为了解决这个问题,首先想到,把这个保存头像的方法

PHP的多线程Curl,rolling Curl实现与坑

最近需要做群发推送,之前的推送只有单发的API,因为分IOS跟安卓平台,最简单的实现还是塞到队列去一个一个发,毕竟用户不多也就几万个.之前的请求队列没用多线程请求,每次一个.然而这个推送接口速度太挫,ios经常要2-3s才返回,几万个单线程请求得等死了.于是开始研究PHP的多线程Curl 之前知道有mutil_curl可以实现,以为很简单.实际操作起来,坑还是相当多的. php手册参考:

PHP CLI

用PHP-CLI在SHELL中输出颜色

刚才找PHP的手册,发现一个评论挺有意思.在PHP的CLI模式,也就是SHELL中,输出颜色. 写简单的脚本,Log什么的时候,有个颜色 ,看起来舒服多了.一直黑白的看的脑袋晕乎乎的. <? $_colors = array( 'LIGHT_RED' => "[1;31m", 'LIGHT_GREEN' => "[1;32

经验

python中使用import加载目录中全部文件

最近准备换用Flask,于是开始研究Python了.py的包导入机制,没有PHP那么直观,直接写文件名字就行.虽然学习起来有一些难度,不过能够有效的避免大型项目的命名空间问题,相比PHP 等到实在不行了引入一个namespace反而更乱了. 关于import 的基本用法就不说了,这个教程很多了.想要从其他文件夹里面import文件,需要在文件夹中建立一个init.py的文件用于初始化和声明,这个

QueryPath 中文 UTF8

QueryPath中文乱码问题,UTF8乱码问题解决

最近研究Spider,找到了PHP的QueryPath库.之前用Python的BeautifulSoup也挺方便,这个跟Python的那个库还是蛮像的. 但是用起来的时候就蛋疼了,发现UTF8的中文总是乱码.研究了好久,尝试了mb_convert_encoding各种姿势,还是不能解锁 最终在github的一个issue里发现了,这个issue有人提出来了.按着lz的参数配置,传给qp()方法

react PHP lumen

reactPHP + lumen性能简测

工作需要,新项目用Lumen框架来做.因为后端API,用Laravel感觉更大了,用Lumen还能轻量一点.接口写的差不多了,就研究捣鼓一下性能.Lumen本身的性能还是很捉鸡,不光Composer载入一大坨依赖,自己的框架就很复杂,虽然容器的思路真的很棒,对于工程而言是非常好的设计,但是性能比简单框架还是差一些的. 开始想着上Swoole,有第三方的lumen-swoole的包: compo

PHP WorkerMan Bug

WorkerMan的restart命令的一个Bug修复记录

最近一个项目更新之后总是出问题,守护进程总是自己会挂掉,日志显示重启失败,之前一直好好的.周末一个下午DEBUG,终于搞定了.记录一下. 前情提要: 用PHP的WorkerMan写了一个Worker进程,监听Redis队列,另外的项目往队列里塞URL然后异步执行.很简单,一直运行稳定.但是以防万一,最近上线写了一个watcher,通过crontab每分钟监控这个队列往队列写入一个任务,如

README

Rainyluo's Blog 90后,PHP码农 喜欢思考,阅读,旅行 .目前玩摩托车骑行~ Follow me @rainyluo(Sina)