摘要:
一、特性对比 1. mongodb 开源数据库 弱结构性(BSON,JSON二进制,集合字段容易变更) 非ACID 天然分片,扩容,容量大 单文档查询db.collection.find() 授权认证 db.auth("user", "pwd") 2. mysqldb 开源数据库 强结构性(TABL 阅读全文
摘要:
1、创建一个线程池 2、分析线程池执行情况 So easy! corePoolSize:如果任务超过,固定运行5个线程这5个不会释放 linkedBlockingQueue:如果任务超过5个,比如1005个任务。这时候有5线程在corePoolSize跑,另外1000个被缓存在Queue里面等待运行 阅读全文
摘要:
一、应用场景 SQL未命中索引时,filesort所使用的算法 二、产生原因 filesort:当SQL含有order等排序执行,并且字段不命中索引;此时SQL执行文件排序”filesort“ 排序算法:4.1以前双路排序、4.1之后单路排序 双路排序:两次磁盘;取order字段和数据指针进内存,排 阅读全文
摘要:
一、6种限流方案 系统层:IP黑名单;(防爬虫、ddos) 代理层:tomcat最大连接数、nginx最大连接数和连接速率 业务层:时间窗口、沙漏算法、令牌桶 二、业务层限流 时间窗口: 利用redis的zset,每次请求到来,清除60s前的请求,然后统计当前请求数量; 缺点:百万并发数据量太大、非 阅读全文
摘要:
一、架构流程图 阅读全文
摘要:
一、应用场景 前置网关(外网进入内网) 负载均衡(Http协议负载均衡) 反向代理 二、调度算法 轮询:"server 192.168.0.100;";按时间顺序轮流分配,后端down时自动剔除; 权重:"server 192.168.0.100 weight=1;";按时间顺序和权重比例轮流分配, 阅读全文
摘要:
crontab定时任务,每小时执行一次以下脚本 点击查看代码 #!/bin/bash # clear the disk in $log_dir when disk is almost full # log_dir='/data_logs_bak/sytLog/' log_disk='/data_lo 阅读全文
摘要:
一、基本架构图 阅读全文
摘要:
一、应用场景 Spring自动解决循环依赖(构造依赖无法解决) 二、工作原理 根本原因:实例构造方法,因循环依赖而不能正常执行 根本解决:实例函数和依赖注入分离 三级缓存:singletonObject、earlySingletonObject、singletonFatories 三、用例 无法解决 阅读全文
摘要:
top发现CPU耗时太大进程 Linux, jdk1.8.0_272 JVM堆栈分析得到以下日志(ps -mp PID -o THREAD,time,tid) syt 0.2 19 - futex_ - - 00:40:58 64568 syt 0.2 19 - futex_ - - 00:40:5 阅读全文