摘要: 本文主要是介绍了NGINX Plus的相关功能,横跨了NGINX Plus R5/R6/R7/R9等各个不同版本的更新。涉及的是Nginx反向代理和负载均衡的更为高级的用法。主要包含:HTTP负载均衡,HTTP长连接,TCP和UDP的负载均衡,上游连接数限制,最短时间的均衡算法,Session一致性,实时健康检查,DNS重解析,访问控制,客户端连接数限制,客户端带宽限制,无缓冲上传文件,SSL/TLS优化,,缓存优化,API功能,配置的最佳实践等。 阅读全文
posted @ 2018-03-14 21:10 米粒人生 阅读(1354) 评论(2) 推荐(2) 编辑
摘要: 熟悉Nginx的小伙伴都知道,Nginx是一个非常好的负载均衡器。除了用的非常普遍的Http负载均衡,Nginx还可以实现Email,FastCGI的负载均衡,甚至可以支持基于Tcp/UDP协议的各种应用的负载均衡(比如MySQL,DNS等)。这些功能分别在Nginx的不同模块实现了。负载均衡可以看 阅读全文
posted @ 2018-03-13 09:45 米粒人生 阅读(1699) 评论(1) 推荐(10) 编辑
摘要: 工厂方法模式(Factory Method Pattern)定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类吧实例化推迟到子类。 阅读全文
posted @ 2019-01-02 09:52 米粒人生 阅读(846) 评论(0) 推荐(0) 编辑
摘要: 利用静态方法定义一个简单工厂,这是很常见的技巧,常被称为静态工厂(Static Factory)。静态工厂是 new 关键词实例化的另一种替代,也更像是一种编程习惯而非一种设计模式。和简单工厂相比,静态工厂通过一个静态方法去实例化对象。为何使用静态方法?因为不需要创建工厂实例就可以直接获取对象。 阅读全文
posted @ 2018-12-28 09:58 米粒人生 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 除了使用 new 操作符之外,还有更多的制造对象的方法。你将了解到实例化这个活动不应该总是公开进行,也会认识到初始化经常造成“耦合”问题。 阅读全文
posted @ 2018-12-24 09:57 米粒人生 阅读(410) 评论(0) 推荐(0) 编辑
摘要: PHP注册树模式主要用于创建对象的时候将我们的对象与相应的变量进行绑定,从这个角度上说,Yii2的Service Locator和DI Container都用到注册树模式。这二者都在内部维护一个数组(key => value),value为对象或者对象定义,在获取时通过唯一的key来获取,如果是定义再去容器里面实例化一下 阅读全文
posted @ 2018-12-20 16:22 米粒人生 阅读(420) 评论(0) 推荐(0) 编辑
摘要: Yii使用单例的场景非常多,比如请求开始创建的Application,Yii,Request,Response等对象功能都十分丰富且开销也很大,维持一个单例就可供请求的整个生命周期使用。在请求开始即创建,请求结束自行销毁,中间不销毁也不创建。这些对象使用了单例没有疑问,但是这些单例的产生、管理和使用却是有不同讲究的。 阅读全文
posted @ 2018-12-19 10:55 米粒人生 阅读(872) 评论(0) 推荐(0) 编辑
摘要: 负载均衡指令least_conn的含义,按照nginx文档的说法: Specifies that a group should use a load balancing method where a request is passed to the server with the least num 阅读全文
posted @ 2018-12-17 09:54 米粒人生 阅读(4525) 评论(0) 推荐(0) 编辑
摘要: Yii2框架的设计包含了哪些设计模式?用到了哪些设计原则,本文将概括地为您做下介绍 阅读全文
posted @ 2018-12-12 10:56 米粒人生 阅读(1003) 评论(0) 推荐(0) 编辑
摘要: 我们首先来思考一个问题:作为工程师,我们的价值是什么? 笔者认为是—— 解决用户问题 。 我们的任何知识和技能,如果不能解决特定的问题,那么就是无用的屠龙之术;我们的任何经验,如果不能对解决新的问题有用,那这经验就是过时的。工程师不是空谈者,也不是理论家,再好的理论,再好的设计,不能落地变成产品,不 阅读全文
posted @ 2018-12-10 10:08 米粒人生 阅读(511) 评论(0) 推荐(0) 编辑
摘要: 涉及到大输出或者碎片化响应的情况,最好还是采用nginx自带的upstream方式,简单方便,精确控制。而openresty提供的几种方式,无论是异步的ngx.say/ngx.print还是同步的ngx.flush,实现效果都不理想。 阅读全文
posted @ 2018-11-13 11:32 米粒人生 阅读(2707) 评论(0) 推荐(0) 编辑
摘要: 前段时间发表了一篇文章 面向对象的一小步:添加 ActiveRecord 的 Scope 功能 提到一种更加友好的方式做数据库查询。经小伙伴的建议,在满足同样条件下,可以有更为简洁的封装方法。 阅读全文
posted @ 2018-08-01 10:10 米粒人生 阅读(271) 评论(0) 推荐(0) 编辑