网站高并发解决方案(理论知识) 二

距离上篇 网站高并发解决方案(理论知识) 发布,已经过去了2年,在2年内,我懂了很多,不懂的也很多,就现在为止,写一篇最新的高并发解决方案理论知识,以记录自己的成长历程.cdn代理层在高并发下,为了解决带宽问题,全站必须做前后分离操作,所有前端资源都可进行cdn代理,进行缓存静态资源,分散服务器带宽压力.  同时,app端,小程序端等本地资源无需担心这个问题
阅读全文

优雅的输出错误-assert

在正常情况,我们会通过,if,else进行判断一个接口的条件是否满足,不满足则输出错误,例如在IM系统中,申请入群接口,需要以下判断:$param = $this->request()->getRequestParam(); $groupModel = new UserGroupModel(); //获取群信息 $groupInf
阅读全文

easyswoole实现线上更新代码

众所周知,easyswoole作为常驻内存的框架,修改代码并不能直接生效,而是需要重启服务,那么,当你的easyswoole项目上线之后,该如何保证旧请求的同时去更新代码呢?nginx reload和restart首先,我们需要了解到nginx reload和restart的区别.reloadnginx 执行reload命令后,将会重新加载一次配置文件,并且给其他worker进程发送信号,进程收到
阅读全文

nginx实现负载均衡

proxy_pass、upstream与resolverupstreamupstream将创建一个上游服务配置项,用于交给proxy_pass 转发ip.    upstream x.cn {         server 192.168.192.
阅读全文

关于接口幂等性

什么是幂等性HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同。总结来说:1:假如第一次请求没有对资源进行修改(增加,修改,删除),那么之后的请求同样不会对资源进行修改(get获取资源)2:假如第一次请求对资源有进行修改(增加,修改,删除),那么之后的请求只会跟第一次
阅读全文

redis集群环境配置

为什么需要集群redis是一个开源的 key->value 高速存储系统,但是由于redis单线程运行,在系统中,只能利用单核的性能当redis的调用越来越频繁时,可能会出现redis过于繁忙,无法处理数据的情况这时候,我们就需要使用redis集群去分散redis的压力,利用redis集群,去充分利用cpu核数redis集群简介1:redis集群采用p2p模式,也就是集群没有中心服务器,每个
阅读全文

linux安装php memcache扩展

安装依赖和memcached客户端yum install libmemcached libmemcached-devel yum install zlib zlib-devel如果没有libmemcached,将会出现以下错误:checking for libmemcached location… configure: error: m
阅读全文

linux安装memcache

之前为了测试easyswoole的memcache组件,特意安装了下memcache,现在就开始教程吧:安装基本编译工具sudo yum install gcc make cmake autoconf libtoollibeventmemcache依赖libevent,所以需要先安装libevent(已经安装过libevent的
阅读全文

easyswoole反向代理实现

Proxy由于 Swoole Server 对 HTTP 协议的支持并不完整,建议仅将 EasySwoole 作为后端服务,并且在前端增加 NGINX 或 APACHE 作为代理,参照下面的例子添加转发规则Nginxserver {     root /data/wwwroot/;     se
阅读全文

并发锁(二):共享锁和独占锁

在上篇的文章中,我们了解了为什么需要锁,以及锁的应用场景。那么,该怎么用锁来进行并发业务逻辑呢?在php中,已经提供了关于锁的函数 flockflock(file,lock,block)参数描述file必需。规定要锁定或释放的已打开的文件。lock必需。规定要使用哪种锁定类型。可能的值:LOCK_SH - 共享锁定(读取的程序)。允许其他进程访问该文件。LOCK_EX - 独占锁定(写入的程序)。
阅读全文
  • 本站由白俊遥博客程序搭建
    © 2017-1-17 php20.cn 版权所有 ICP证:闽ICP备17001387号
  • 本网站由: 提供cdn加速/云存储服务
  • 联系邮箱:1067197739@qq.com