整理和总结:关于PHP架构设计的分享

1、产品的大部分需求:
(1)用户做了XX事情的时候给用户一个提示;
(2)用户的XX属性发送变化的时候给用户一个提示;
(3)用户做了XX事情的时候修改用户的YY属性值;
2、解决服务器面临的大数据量快速交互问题及海量并发数下的响应问题解决方法:
(1)接入与逻辑分离的进程模型;
(2)采用Epoll模型;
(3)接入层和逻辑层之间采用共享内存高速通信;
3、PHP架构分享-标准化配置
3.1标准化配置优点
(1) 使开发环境和生产环境分离
(2) 系统环境配置变更后,系统管理员更新资源配置文件即可
3.2运行环境配置
(1) 软件包、版本、路径、用户
(2) 常用配置文件统一管理:httpd.conf,php.ini,hosts
(3) Apache和Squid日志记录每个请求执行时长,MySQL打开慢日志
3.3资源配置
(1) 资源包括数据库账户、存储路径、Memcached、数据目录等;
(2) 数据库的IP和端口的资源变量名SINASRV_DB_HOST和SINASRV_DB_PORT
(3) 通过Apache环境变量取值:

$dbPort=$_SERVER["SINASRV_DB_PORT"]

(4) 通过解析配置文件获取

$SINASRV_CFG=parse_ini_file($_SERVER["DOCUMENT_ROOT"]."/system/SINASRV_CONFIG")

4、PHP架构分享-基本约定和限制
4.1 约定
(1) 数据库读写分离;
(2) 程序不允许写磁盘文件Cache,尽量使用Memcached
(3) 程序不允许使用绝对路径
(4) 程序目录可执行不可写,数据目录可写不可执行
(5) 访问MySQL和Memcached不使用长连接模式
(6) 数据库查询时间大于1秒的次数每分钟不超过1次
4.2 限制
(1)PHP中禁用一些危险函数
(2)程序的执行时长不能超过30秒
(3)程序调用外部网络服务超时小于30秒
(4)程序可用的内存限制在18M以内
(5)项目的域名虚拟主机有MaxClient限制
(6)项目的数据库账户有MaxConnection限制
5、PHP架构-关于性能
5.1 在保证高可用的前提下追求高性能
5.2 程序开发语言使用:如果系统中的性能瓶颈不在CPU上,选择解释性语言
5.3 每种软件都有最适合的环境,如Nginx/Lighttpd适合高并发高IO的服务
5.4 影响性能的软件因素:事件处理模型、请求处理时长、内存使用、CPU使用、磁盘使用
5.5网络中性能指标:每秒请求数、并发度、网络吞吐量

最后推荐一个公众号,一枚IT技术人成长路上关于生活和职场的思考,欢迎书友们前来交流和分享心得

在这里插入图片描述

福利~ 福利~ 福利~ 1块钱一次帮下CSDN资料

添加微信,备注下载资料~所需下载CSDN资料链接可通过微信发送。
在这里插入图片描述在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值