摘要:
1 每个上游都保存了自己的配置文件 出现的问题:1)上游痛:扩容是下游,凭什么让我修改配置文件和重启,这就是反向依赖了 2) 下游痛:不知道谁依赖了自己。 解决办法: 1 全局配置文件: 存在的问题,不是动态的发现扩容,需要重启 为了解决这个问题 使用filemonitor,监控配置文件的修改 再结
阅读全文
posted @ 2020-11-06 15:57
一天的PHP之路
阅读(286)
推荐(0)
摘要:
缓存读写删除,要注意的几个点: 1 修改缓存时用删除,别用set,因为在特殊情况下会出现不一致 2 先改数据库再删除缓存 并发写时,写操作1,写操作2过来,但是写缓存2先执行,再执行的缓存1,这样就会导致缓存的数据是旧的 !!!谈谈缓存不一致 什么时候会出现缓存一致 答:主从同步或者主主同步时。比如
阅读全文
posted @ 2020-11-05 15:53
一天的PHP之路
阅读(88)
推荐(0)
摘要:
哪些扩展? 1 数据库结构改变,直接改结构的话,在并发量大时,会锁表 2 水平扩展,分多个库, 3 底层存储介质变更,比如从myqsl变到mongodb 解决方案: 1 停服务迁移 2 数据库结构变更可以用online-schema-change,不用停服就能修改的方案(注意在流量少的时候做) 3
阅读全文
posted @ 2020-11-05 13:44
一天的PHP之路
阅读(256)
推荐(0)
摘要:
当主从同步有延时时,怎么保证读的数据是最新的 比如主从同步的延时是1秒钟,把写操作的那条数据,操作的库+操作的表+操作的那条数据主键id,合起来设置为缓存的key,失效时间为1秒钟 这样读数据时,先查缓存,缓存有,就读写库,没有就读从库 主主不一致怎么解决? 两个主库同时对外提供服务时,会出现主主不
阅读全文
posted @ 2020-11-05 11:13
一天的PHP之路
阅读(3535)
推荐(0)
摘要:
如果自动载入新服务的节点配置 1 监控配置文件,重新载入 伪代码 2 配置中心回调,并重新载入
阅读全文
posted @ 2020-11-05 10:10
一天的PHP之路
阅读(78)
推荐(0)
摘要:
主要是通过客户端的连接池做负载昀衡 1 静态权重: 2 动态权重:比如,成功处理一个请求加1分,失败处理1个请求扣10分 3 过载保护:单台服务器达到极限之后把请求转移到其他节点,如果达到了集群的总极限值,就放弃多余的请求
阅读全文
posted @ 2020-11-04 14:59
一天的PHP之路
阅读(74)
推荐(0)
摘要:
核心思路是:冗余和服务机器的自动转移 1 客户端到反向代理 用keepalived +vip(虚拟ip) 2 反向代理到web_server层 nginx自带转移 3 web_server层到服务层(微服务) 通过微服务客户端的连接池自动转移 4 服务层到缓存 1)memache不支持集群,封装客
阅读全文
posted @ 2020-11-04 14:28
一天的PHP之路
阅读(216)
推荐(0)
摘要:
服务化不是你看别人公司用了,你就用 服务化的坏处 在没有服务化之间的痛点: 1 多个业务方,都写sql来调用数据, 2 底层数据库要扩展时,多个业务方都要改,比如我分库分表,比如我加了缓存了 3 如果用公共类库来解决呢,会出现耦合的问题,比如业务1的逻辑要放在公共库里面,业务2的逻辑也要放在公共库里
阅读全文
posted @ 2020-10-30 17:07
一天的PHP之路
阅读(99)
推荐(0)
摘要:
三大方案: 1 动静分离,包括生成静态文件 页面静态化适合:数据量不是特别大,返回结果集有限的场景 2 读写分离 读写分离解决读性能瓶颈的问题, 数据库水平切分,对架构的影响改动更大,解决的问题是数据量大 3 前后台分离 这种情况一般是后台写数据会对前端的数据有大的影响时,我们就把前后台分离,这样
阅读全文
posted @ 2020-10-30 14:50
一天的PHP之路
阅读(64)
推荐(0)
posted @ 2020-10-30 14:26
一天的PHP之路
阅读(132)
推荐(0)