摘要:
【IT老齐011】负载均衡器 作用 高可用 设备压力平均分配 支持故障发现和转移 种类 硬件负载均衡(F5) 软件负载均衡 4层代理(指网络7层模型(OSI)的传输层,TCP)LVS 7层代理(指网络7层模型(OSI)的应用层,HTTP)Nginx 负载均衡策略 LVS 轮询、加权轮询、最小连接、加 阅读全文
摘要:
【IT老齐010】CAP定理 分布式架构的基本理论。 指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。 C:更新操作成功后,所有节点在同一时间的数据完全一致。(复习:事务的一致性:事务前后的数据完整 阅读全文
摘要:
【IT老齐009】IP直连 问题 IP直连存在强耦合问题,因为业务更新可能发生代码修改,编译,部署,走流程等。 线上建议用域名代替ip地址。 解决方案 内部DNS 建立一个域名解析服务器,直接访问数据库ip对应的域名,域名解析服务器根据配置解析该域名对应的IP返回。 优点 IP地址迁移变得灵活,后续 阅读全文
摘要:
【IT老齐008】布隆过滤器 缓存穿透 绕过缓存服务器进入数据库查询 场景举例:正常redis有1000条缓存数据,忽然遭到爬虫/流量攻击攻击,大量不存在的于redis的数据批量查询,由于redis不存在这些数据,会到数据库进行查询。由于数据库对于瞬时高并发访问的承载能力弱,所以可能对数据库造成影响 阅读全文
摘要:
【IT老齐007】水平分表严禁自增主键 自增主键在分布式环境下不适用 由于自增主键必须连续,所以只能按照范围法进行分片。 引发问题 ID的数量已固定。无法进行动态扩展,会有资源浪费。 产生“尾部热点”效应,最后分片压力极大。 UUID不能替代自增主键 uuid,唯一无序。无序导致索引重排。主键有序的 阅读全文
摘要:
【IT老齐004】多级缓存架构 客户端、应用层、服务层、数据层 客户端缓存 主要对浏览器的静态资源进行缓存 通过在浏览器设置Expires或者Cache-control,时间段内以文件形式把图片保存在本地,减少多次请求静态资源带来的带宽损耗(解决并发手段) 浏览器只负责读取Expires或者Cach 阅读全文
摘要:
【IT老齐003】数据垂直分表 水平分表 范围法和hash法 针对数据量大的存储问题 垂直分表 将一张大表按列切分多张小表分别存储,通过主外键关联查询数据 基本情况 基本数据单位为行,管理数据单位为页(默认大小16k),保存页的单位为区(默认大小1m,最大64个页)。 根本原因 innodb1.0引 阅读全文
摘要:
【IT老齐002】MySQL集群模式与应用场景 单库模式 优点 简单粗暴 适合数据量干万以下小型应用 企业网站,创业公司首选 缺点 不具备可用性与并发性 读写分离集群模式 读写分离中间件 insert、update、delete负载均衡到从库 select路由到主库 MySQL主从复制 binlog 阅读全文
摘要:
【IT老齐001】单体架构升级问题 不谈场景的架构设计都是耍流氓 架构没有对不对,只有合不合适 架构是宏观设计的标准 框架是具体实现的规则 架构是取舍的艺术 场景举例 系统面临大量文件读写影响服务器磁盘IO导致数据库查询高延迟 初级解决方案 Redis 通过在内存中的高吞吐完成无事务的操作 问题 架 阅读全文
摘要:
HTTP连环问 什么是HTTP? HTTP协议是Hyper TextTransfer Protocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议。 HTTP特点? HTTP允许传输任意类型的数据。传输的类型由Content-Type加以标记。 无状态。对于客户端每 阅读全文