摘要:
转自:https://github.com/domnikl/DesignPatternsPHP 1 class Context 2 { 3 private Comparator $comparator; 4 5 public function __construct(Comparator $comp 阅读全文
摘要:
转自:https://github.com/domnikl/DesignPatternsPHP 1 final class Singleton 2 { 3 private static ?Singleton $instance = null; 4 5 public static function g 阅读全文
摘要:
转自:https://github.com/domnikl/DesignPatternsPHP 1 abstract class Journey 2 { 3 private array $thingsToDo = []; 4 5 final public function takeATrip() 6 阅读全文
摘要:
PHP 设计模式 B站视频 单一职责、开闭、里氏替换、依赖倒置、接口隔离、迪米特 阅读全文
摘要:
1、对现有业务造成冲击,可能导致整个网站瘫痪 秒杀系统独立部署,甚至使用独立的域名,和其他业务完全隔离。 2、用户会不停的刷新页面,对应用服务器和数据库服务器造成极大的压力 秒杀页面静态化 3、突然增加的带宽 租借服务器带宽,CDN也需要租借带宽 4、直接访问下单页面,提前下单 动态生成随机下单页面 阅读全文
摘要:
扩展性指的是各个模块高内聚低耦合,可以很容易地扩展新功能。 消息队列:各个模块不直接调用 纵向拆分业务:将大应用拆分成业务独立的小应用 横向拆分业务:将复用的业务拆分出来。 较复杂,涉及到:识别可复用的业务、设计服务接口、服务依赖关系、 分布式服务管理框架 阅读全文
摘要:
伸缩性指的是通过增加或减少机器的数量,来改变网站的处理能力。 负载均衡可以及时发现新上线或新下线的服务器,并向新上线的服务器分发请求,停止向已下线的服务器分发请求,那么就实现了应用服务器集群的伸缩性。 应用服务器负载均衡 特点:应用服务器没有状态,访问哪一台都行 DNS负载均衡: 优点:不需要维护负 阅读全文
摘要:
负载均衡:心跳检测,自动转移 解决负载均衡后的session问题: ip哈希,或根据cookie来转发。不满足高可用。 session服务器,利用分布式缓存、数据库等。引入了网络开销 session replication,即在服务器间同步session。同步开销、存储开销都很大 把session记 阅读全文
摘要:
XSS(Cross Site Script)跨站脚本攻击 持久型:黑客提交含有恶意脚本的请求,保存在被攻击的web站点的数据库中, 用户浏览网页时,恶意脚本被包含在正常页面中,被浏览器执行。 例如在博客里写一段js代码,把cookie发给黑客,里面可能含有sessionID 用户访问该博客,黑客就能 阅读全文
摘要:
前端优化: 减少http请求:合并css、js、img keep-alive复用tcp连接 浏览器缓存:css、js、img,设置http头Cache-Control、Expires。 如果要更新缓存的文件,可以改变文件名。 更新文件时,应当一个一个更新,避免浏览器缓存同时大量失效。 压缩:减少传输 阅读全文