昆明网站制作计划,at结尾网站,山东郓城住房和城乡建设厅网站,网站开发全栈工程师技能图对《高并发的哲学原理》的个人总结#xff0c;原书地址如下 https://pphc.lvwenhan.com/
本书的核心思想就是拆分#xff0c;服务细化拆分多资源并行。
通用设计方法
例子#xff1a;每秒100万次http请求 通过架构解决性能问题#xff0c;在面对并发需求时#xff…对《高并发的哲学原理》的个人总结原书地址如下 https://pphc.lvwenhan.com/
本书的核心思想就是拆分服务细化拆分多资源并行。
通用设计方法
例子每秒100万次http请求 通过架构解决性能问题在面对并发需求时在架构上进行优化最为简单并且对系统稳定性影响最低也是最容易获得收益的方法。架构优化可通过拿其他资源来交换性能即空间换时间。 通过以下方案逐步将系统性能上限的100 qps提升到100万qps。
动静资源分开部署 是部分场景下收益最大的一步可以将90%的流量压力转移出去。 Apache和Nginx的区别nginx处理请求是异步非阻塞的apache是阻塞型的。Nginx处理大并发静态请求效率高于其他软件可作为负载均衡服务器可承受3万以上并发连接数是Apache的10倍。4GB内存的服务器Apache(prefork模式)一般只能处理3000个并发连接占用3GB以上内存Nginx在3万并发连接下消耗不到2GB内存。
使用云服务 如果把静态资源交给云服务商的CDN来承载还可以获得90%的CPU节省。CDN流量费比云主机的流量费更便宜。 数据库独立部署 如果使用了nginx承载全部静态资源云主机还是扛不住流量就需要增加数据库服务器。如果后端代码和数据库部署在同一台机器上是“灾难架构”出于成本考虑大多数低流量管理系统都会放在同一台机器上。 系统承受能力稍微加大会面临以下局面
cpu耗尽导致mysql相应变慢代码需更长时间等待虽不耗cpu资源却内存占用加大内存占用导致innnodb缓存回收降低了mysql运行速度最终形成“内卷”和“踩踏”,系统性能急剧下降服务可能完全崩溃 MYSQL单独部署 将mysql和后端代码进行隔离数据库的性能就能达到可观的水平。一台1核2G的mysql服务器能够达到200qps足以支撑100万浏览量的小网站 未完待续