ZendFramework3事件驱动架构核心模块zend-eventmanager

前几天看到一个知乎的网友提问如何在业务中避免出现复杂的if...else...逻辑,其中一个答友回答需要去看大型框架的实现.由于个人认为ZF3(ZendFramework3的简写)的事件驱动模块实现的很优雅,有很多值得借鉴的地方,并且恰好解决了这位网友的疑问.以下就是ZF3事件驱动模块的详细介绍.0x00. 什么是事件驱动一句话解释:先绑定,后触发的逻辑实现.举个栗子:小明是个厨师.如果他工...

继续阅读 »

SESSION机制及其安全管理

很多关于PHP的书都会介绍SESSION机制.但是往往介绍如何去使用,很少提及SESSION安全性雷区,如何正确的使用SESSION?SESSION机制为什么要有SESSION机制?因为,HTTP协议是无状态的,SESSION是用于维持访问状态,区分访问者的机制.比如在没有SESSION机制的前提下,想让服务器完成每个访问者的个性化定制是不可能是事情.你可能会想到使用IP和UA等信息区分客户...

继续阅读 »

更简单的schu-database

简介schu-database是SchuEngine中的数据库模块,可以独立使用,也可以利用zend-servicemanager驱动.与上个版本的schu-database不同,这个版本完全脱离zend-db,依托于使用最广泛的PDO扩展,实现与数据库的交互.之所以弃用zend-db作为底层,是因为其高昂的学习成本,直接导致了schu-database更加高昂的学习成本,需要不停的查阅手册...

继续阅读 »

Kafka简介及其集群特性

Apache Kafka™ is a distributed streaming platform.这是官方的介绍.Kafka由于其效率,易扩展性,高容错性,被广泛运用.以下我们粗略了解Kafka,进而探讨其集群的一些基本特性,包括高容错的实现.除了能了解Kafka外,还能将其思路运用到别处.1. 术语解释为了便于理解这些术语,每段开头都会有总结性的一句话(黑体),这个解释是不精确的,但是有...

继续阅读 »