Yii源码解读-环境&配置

2016-03-18
阅读 1 分钟
2.6k
如,当你的应用采用分布式架构提供服务,同时运行在多个节点的时候。 有的负载均衡策略会将同一用户的先后2次请求随机分配给不同的节点进行处理。 而如果这两个节点的cookieValidationKey不一致,那么就会出现用户就会收到很奇怪的错误信息。

Yii源码解读-类自动加载

2016-03-18
阅读 1 分钟
2.5k
Yii的类自动加载,依赖于PHP的spl_autoload_register(), 注册一个自己的自动加载函数(autoloader),并插入到自动加载函数栈的最前面,确保Yii的autoloader会被最先调用。

我所了解的Libevent和SEDA架构

2016-03-18
阅读 1 分钟
3.2k
参考 [链接] [链接] [链接]

总结|成为架构师的一些思考与经验

2016-03-17
阅读 1 分钟
2.2k
1. 体系化的学习 每天的时间使有限的,而接触的信息是无穷无尽的。在熟悉了工作之后,最重要的事情就是如何提高学习的效率,最好的办法是: 体系化的学习 拥有了体系化结构知识之后,再去了解别人的观点,阅读独立的文章、知识,理解就会更透彻。 2. 再学习 在理解,熟悉工作之后,在构建了完整的知识体系之后,虽然你的...

工具|PHP格式化输出数组

2016-03-16
阅读 1 分钟
8.4k
{代码...} 参考: [链接]

Yii源码解读-别名

2016-03-16
阅读 1 分钟
2.6k
Alias 设置别名的目的:特殊的变量常量 yii\BaseYii::$aliases保存整个Yii应用的所有别名。 在yii\base\Application的构造函数__construct()中调用preInit方法,该方法预定义了5个别名: {代码...} 在Web应用,yii\base\Web\Application中又定义了2个别名: {代码...} 最后一个藏有别名的地方: {代码...} 这一部分的别名...

Yii源码解读-行为

2016-03-15
阅读 4 分钟
1.9k
行为(behavior)可以在不修改现有类的情况下,对类的功能进行扩充。 通过将行为绑定到一个类,可以使类具有行为本身所定义的属性和方法,就好像类本来就有这些属性和方法一样。 而且不需要写一个新的类去继承或包含现有类。

Yii2源码分析辅助记录

2016-03-14
阅读 1 分钟
2.4k
get_called_class get_class call_user_func strncmp method_exists property_exists array_unshift get_class

Yii源码解读 - 事件

2016-03-14
阅读 2 分钟
2.1k
Yii基础 事件 event 使用事件,可以在特定的时点,触发执行预先设定的一段代码,事件既是代码解耦的一种方式,也是设计业务流程的一种模式。 事件的相关要素 这是一个什么事件? 谁触发了事件? 谁负责监听这个事件? 事件怎么处理? 事件的相关数据是什么? 事件的引入 事件是从yii\base\Component类开始出现的。与事件...

Yii源码解读-属性

2016-03-14
阅读 2 分钟
1.6k
Yii基础 属性 property 属性用于表征类的状态,从访问的形式上看,属性与成员变量没有区别。但是,成员变量是就类的结构构成而言的概念,而属性是就类的功能逻辑而言的概念 Q: 属性和成员变量有什么区别吗? 成员变量是一个“内”概念,反映的是类的结构构成。属性是一个“外”概念,反映的是类的逻辑意义。 成员变量没有读...

记一次git clone的报错以及对CentOS上的git版本更新

2016-03-08
阅读 1 分钟
20.3k
操作 {代码...} 报错 {代码...} 哦,原来是401。 嗯,百度了一下,有一个答案说是git的版本不行,嗯,看一看 {代码...} 系统告诉我git version 1.7.1,哦,是CentOS自带的git版本,那就先升级一下看看吧。 先安装依赖 {代码...} 卸载老版本 {代码...} 依次执行 {代码...} 如果需要的话,那么就 {代码...} 尝试 {代码...}...

记一次PHP扩展的报错

2016-03-08
阅读 1 分钟
2.2k
Yii2.0尝试添加新用户,发邮件时报错: {代码...}

信任

2016-03-08
阅读 1 分钟
1.5k
大部分“外人”并不懂得你一个技术人口中的东西,实际上,很多时候他们也不关心技术细节与抽象出来的东西,他们更关心的事是你能不能把事情做好,能不能达到最终的目的。

PHP的优化Tips

2016-03-06
阅读 5 分钟
2.5k
Celebrate what you've accomplished, but raise the bar a little higher each time you succeed.

Keigo

2016-03-06
阅读 1 分钟
1.3k
究竟爱一个人,可以爱到什么地步? 究竟什么样的邂逅,可以舍命不悔? 逻辑的尽头,不是理性与秩序的理想国, 而是我用生命奉献的爱情。

日常使用指令总结

2016-03-06
阅读 1 分钟
1.9k
各种日常命令一点一点学习总结 Git生成KEY {代码...} MySQL中选出一列里不重复的值 {代码...} 后台执行一个脚本,并且写到nohup.out文件中 {代码...} 在配置Yii2的路由规则,Nginx的Rewrite配置 {代码...} 查看Nginx状态 {代码...} 打包 {代码...} 为全系统设定alias {代码...} 为单用户设定alias(Mac下,Linux略有不同)...

记一次PHP扩展-ZipArchive安装

2016-03-06
阅读 1 分钟
6.2k
make install之后会告诉你这个.so文件安装到了哪里,我这里告诉我是安装在了/usr/local/lib/php/extensions/no-debug-non-zts-20131226/zip.so。记录下来。

Rethink of "Stay Hungry"

2016-03-06
阅读 1 分钟
1.9k
书中讲到了无论什么时刻,都要以用户体验为第一要义,而非技术或其他的东西为基准。作者在讲到这里的时候,还举例了乔帮主的stay hungry, stay foolish来进行阐述讲解。每一个人,无论是老板还是底层接收命令的worker,都要stay foolish,这其中的意思也不是保持愚蠢,而是要让自己设身处地地站在用户的角度去考虑问题,...

记一次.so文件的安装吧

2016-03-03
阅读 1 分钟
2.1k
简单的查了一下解决方案,大部分都说可以重新编译php,在./configure的时候加上参数就可以了。Actually, 毕竟非科班野生的菜,这几天又有一些重要且紧急的事情,要是某些别的地方搞挂了,忘记了,启动不起来了,就又要加班加点的解决了。权衡了一下,决定另寻出路。

记一次MySQL字符集冲突导致的报错

2016-03-02
阅读 1 分钟
2.9k
Yii2查看日志发现报错 {代码...} 瞬间蒙蔽了,没遇到过啊,那就百度一下吧,然后参考了一个人的帖子后,在console中输入 {代码...} 然后再输入 {代码...} 发现结果集里面很乱,utf8和latin都有。恍然大悟。 在报错之前,刚刚添加Yii的rbac的组件模块mdm-admin,我是用了他现有的mysql表结构直接建表,但是他的这个create...

MySQL创建表时遇到的几个错误

2016-02-29
阅读 2 分钟
14.4k
Q1 创建表时的表结构如下: {代码...} 从console导入进去的时候,报错 {代码...} 然后打出变量 {代码...} Variable_name Value sql_mode ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION 发现是这两个变量导致了报...

终于理解了编译是怎么回事!

2016-02-23
阅读 2 分钟
5.6k
看完这篇文章之后,终于明白了编译到底怎么回事。 1 对于同一个语句,有如下三种:高级语言、低级语言、机器语言的表示 C语言 a=b+1; 汇编语言 mov -0xc(%ebp),%eax add $0x1,%eax mov %eax,-0x8(%ebp) 机器语言 8b 45 f4 83 c0 01 89 45 f8 我们都知道,机器是只能做数字计算的,能够让机器去运算的、数字的语言就是机...

总结|日志纪录方法总结

2016-01-23
阅读 1 分钟
1.9k
7月30日日常工作学习记录 AIM: troubleshooting show status 怎样记日志方便troubleshooting 对外部的调用封装 对外部系统与模块的依赖调用前后记下日志,方便接口调试 LOG.debug('calling external system' + parameters); LOG.debug('called successfully. param is' + param); LOG.warning('failed at calling x syst...

总结|高质量代码的一些要素

2016-01-23
阅读 2 分钟
7.1k
7月28日的日常学习记录 高质量代码三要素:可读性,可维护性,可变更性 可读性强: 不要编写大段代码 将段落封装成一个又一个函数 在编写代码的工程中养成不断重构的习惯 函数设计遵循的原则:职责驱动设计 从上往下的编写:每个被分出去的程序,可以暂时只写一个空程序而不去具体实现功能,当主程序完成以后,再一个个...

[Re] Get that job at Google

2016-01-23
阅读 23 分钟
2k
I've been meaning to write up some tips on interviewing at Google for a good long time now. I keep putting it off, though, because it's going to make you mad. Probably. For some statistical definition of "you", it's very likely to upset you.

[Re] ABC: Always Be Coding

2016-01-23
阅读 7 分钟
2.1k
Be honest. Are you a good engineering candidate? How are you measuring yourself? How many companies have you interviewed at? What is your onsite-interview to offer ratio? Try the following formula (that I’ve totally made up in a vacuum and ultimately means nothing):

Git pull error

2016-01-21
阅读 1 分钟
2k
Your local changes to the following files would be overwritten by mergeerror: Your local changes to the following files would be overwritten by merge:

5 years - David Cannon

2016-01-20
阅读 3 分钟
1.9k
What can I start doing now that will help me a lot in about five years?

Redis实现任务队列、优先级队列

2016-01-12
阅读 1 分钟
6.3k
生产者与消费者的代码故事。 任务队列 Method 1 读取任务队列中的内容 {代码...} 每一秒都有调用命令来查看是否有新任务,实际上这种方式的效率是很低的。 可否建立消息通知功能,每有新的任务,通知消费者来执行任务。 借助BRPOP就可以实现这样的功能。 BRPOP: 当列表中没有元素时,BRPOP命令会一直阻塞住连接,直到有...

Redis实现访问频率限制

2016-01-11
阅读 1 分钟
10.3k
通过key记录IP:rate.limiting:$IP,同时初始时设置期限为60秒,如果超时则重新设置,否则进行判断,当一分钟内访问超过100次,则禁止访问。