- 博客(6)
- 资源 (5)
- 收藏
- 关注
原创 ORM选型—DataMapper VS ActiveRecord
在web后台开发领域,经常会遇到应用程序操作数据库的场景,目前市面上存在的数据库包括mysql、postgresql、oracle、sqlite等,为了屏蔽不同数据库的差异,产生了ORM(Object-Relation-Mapping),在实现层面,又分为DataMapper和ActiveRecord两种。
2017-07-30 09:13:07 6962
原创 自己动手实现promise
大家都知道,异步编程在web领域内越来越多地运用,但异步回调代码的写法十分恶心,逐层嵌套,不便于阅读。为了解决这个问题,js实现了promise模式,但大多数开发者只知道promise的表面用法,不知其底层实现逻辑。笔者采用PHP实现了自己的promise,借着此过程,与大家分享promise的实现原理。
2017-07-22 10:31:11 1143
原创 深入剖析nginx平滑重启
在服务器开发过程中,难免需要重启服务加载新的代码或配置,如果能够保证server重启的过程中服务不间断,那重启对于业务的影响可以降为0。最近调研了一下nginx平滑重启,觉得很有意思,记录下来供有兴趣的同学查阅。
2017-07-16 20:04:48 10292 1
原创 PHP开发web程序的两种模式
从执行流程上来看,所有程序可以分为同步程序和异步程序。众所周知,同步程序流程清晰,开发友好,容易上手,相比之下异步程序的优点在于程序并发度高,资源能够得到充分利用。于是出现了一些基于协程调度的框架,兼具同步程序和异步程序的优点。对应到php领域,除了传统的LAMP/LNMP同步开发模式,还出现了类似swoole的异步协程开发模式。本文通过对两种开发模式进行比较,旨在说明二者实现上的异同,供广大PHP程序员参考。
2017-07-16 19:58:32 6194
原创 PHP HTTP客户端-Guzzle原理解析
在PHP后台开发过程中,经常会遇到模块间需要通过HTTP通信的情形。PHP语言本身只提供了socket操作的接口,并未提供HTTP相关操作的接口。许多现有的实现采用curl扩展充当HTTP Client与HTTP Server通信,但仍需自己封装curl的接口。有鉴于此,本文介绍一款流行的PHP HTTP Client客户端---Guzzle(https://github.com/guzzle/guzzle/)的用法,深入分析其底层实现原理。
2017-07-16 19:55:59 8317 2
VIM配置文件
2015-07-05
putty_V0.63.0.0.43510830
2015-07-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人