
系统运维
文章平均质量分 77
蓝色心灵-海
我是一名软件架构师,从事过开发、运维、设计、前端等工作,有自己的项目。
展开
-
高并发下缓存失效问题(缓存穿透、缓存雪崩、缓存击穿)
一、缓存穿透1、描述指查询一个一定不存在的数据,由于缓存是不命中,将去查询数据库,但是数据库也无此记录,我们没有将这次查询的null写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。2、风险利用不存在的数据进行攻击,数据库瞬时压力增大,最终导致崩溃3、解决null结果缓存,并加入短暂过期时间;做好参数校验,包括前端和后端,尽量在系统上有对无效参数进行过滤。二、缓存击穿1、描述对于一些设置了过期时间的key,如果这些key可能会在某些时间点被超高并发地访问,是一原创 2021-07-18 22:13:38 · 248 阅读 · 0 评论 -
docker安装postgresSQL和设置自定义数据目录
一、docker的安装这里使用的是linux centos7以上的版本作为示例讲解直接安装使用命令:yum install docker启动命令:systemctl start docker查询安装的docker版本信息:docker -version指定版本拉取postgressql的镜像docker pull postgres:10.9使用docker images查询下载的镜像文件二、接下来就是运行postgresSQL镜像的步骤了先创建你要指定的数据目录:原创 2021-01-18 13:09:28 · 3489 阅读 · 1 评论 -
JavaWeb项目导致Linux服务器CPU过高的解决方案
最近我部署在centos7上的一个项目出现了CPU达到了100%+的状态,导致项目崩溃,起初没重视,直接重启项目解决,后面项目运行了几天服务器又报警100%+了,这个时候我才意识到项目问题的严重性。然后开始查找原因,查看数据库连接池,发现数据库连接已经爆满,超过了最大连接数,review代码,发现很多数据库操作的时候没有释放连接,改代码,重新部署。这个时候项目运行算比较稳定了,但是...原创 2019-04-16 19:24:22 · 1975 阅读 · 0 评论