前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP备战面试知识参考(备忘)

PHP备战面试知识参考(备忘)

作者头像
泥豆芽儿 MT
发布2019-05-15 11:05:02
6000
发布2019-05-15 11:05:02
举报
文章被收录于专栏:木头编程 - moTzxx

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://cloud.tencent.com/developer/article/1426185

★ 前言

  • 如果你是一个已经拥有 3-5年开发经验的PHPer了,那么所需要的技能掌握就格外重要,理论上讲应向着管理层方向迈进,同事所掌握的知识点就不能仅仅在于代码上了
  • 下面,只是我在面试中着重整理的重要点,仅供参考…

★ 数据库

数据库知识包含面比较广,涉及到 常用的 MySQL,NoSql,Redis,Memcache

♘① mysql 知识点

记住:永远不要在MySQL中使用"utf8",请使用"utf8mb4"

♘② nosql

【是否使用过Redis集群,集群的原理是什么?】

  1. Redis Sentinal 着眼于高可用,在m aster 宕机时会自动将 slave 提升为master,继续提供服务。
  2. Redis Cluster 着眼于扩展性,在单个 redis 内存不足时,使用 Cluster 进行分片存储

★ 秒杀系统

①. 秒杀系统设计中的业务性思考

秒杀系统只允许接受同一个账户的1个请求,其他请求统统过滤掉。在程序入口加锁,同一个账户,同一时刻只有一个线程在被处理。不仅解决了同一个账号,发送多个请求的问题,还保证了后续的逻辑流程的安全,确保了只有一个线程能更新账户的状态。

②.谈谈秒杀系统的落地方案

  • 秒杀系统要解决的技术挑战
  • 短时间内的超高访问量对后台服务的冲击。秒杀期间,来自外部请求产生的QPS会是平时的10~100倍。
  • 数据库的读写压力陡增。大量的并发写,会造成数据库的行锁处于无法释放的状态,大量的线程排队进而造成服务请求超时失败。
  • 网络带宽资源会因为秒杀被大量占据掉。假设秒杀页面的大小为150K,如果最大并发连接数为20000,那么应用服务器至少需要支持的带宽>3G。

③.秒杀系统设计中的数据处理

  1. 通过CDN,把大量静态不需要检验的数据放在系统之外的地方;减少不必要的流量到服务器端。
  2. 预加载用户静态信息,在前端读系统中检验一些基本信息,如用户是否具有秒杀资格、商品状态是否正常、秒杀是否已经结束等;过滤大量无效请求。
  3. 在写数据系统中再校验一些如是否是非法请求,写的数据一致性如检查库存是否充足等;
  4. 最后在数据库层保证数据最终准确性,避免超卖。

♘ 算法

  • 杨辉三角
  • 无限级函数

♘ 内置函数介绍

代码语言:javascript
复制
array_merge()函数用于将一个或者多个数组的单元合并起来,返回结果为数组。
//①如果合并的数组中有相同的字符串键名,则后面的值覆盖前面的值,键名不变
//②如果合并的数组中有相同的数字键名,则后面的值不覆盖前面的值,而是依次附加到后面
//③如果只有一个数组,并且该数组是数字索引的,则键名会以连续方式重新索引。

array+array是数组的联合运算
//①如果合并的数组中有相同的字符串键名,则取最先出现的值而把后面拥有相同键名的那些值“抛弃”
//②如果合并的数组中有相同的数字键名,则取最先出现的值而把后面拥有相同键名的那些值“抛弃”
//③如果只有一个数组,并且该数组是数字索引的,则键名会以连续方式重新索引。

♘ 减少资源浪费

♘ 正则表达式

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ★ 前言
  • ★ 数据库
    • ♘① mysql 知识点
      • ♘② nosql
      • ★ 秒杀系统
        • ①. 秒杀系统设计中的业务性思考
          • ②.谈谈秒杀系统的落地方案
            • ③.秒杀系统设计中的数据处理
            • ♘ 算法
            • ♘ 内置函数介绍
            • ♘ 减少资源浪费
            • ♘ 正则表达式
            相关产品与服务
            云数据库 Redis
            腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档