启动容器不报错,后台也没运行

启动了2--8,但是7和8没报错,后台运行只运行了2--6

 [root@localhost~]#dockerstartredis-nade-2
 redis-nade-2
 [rootalocalhost~]#dockerstartredis-nade-3
 redis-nade-3
 rootalocalhost~]#dockerstartredis-nade-3
 redis-nade-3
 [root@localhost~]#dockerstartredis-nade-4
 redis-nade-4
 [root@localhost~]#dockerstartredis-nade-5
 redis-nade-5
 [rootalocalhost~]#dockerstartredis-nade-6
 redis-nade-6
 [root@localhost~]#dockerstartredis-nade-7
 redis-nade-7
 [root@localhost~]#docker startredis-nade-8
 redis-nade-8
 [root@localhost~]#dockerps
                IMAGE                COMMAND                             CREATED                 STATUS                   PORTS  CONTAINER ID                                                                                                           NAMES
                                "docker-entrypoint.s.                             19 hours  007e97176c40                 redis:6.0.8                                                             Up7seconds  ago                                      redis-nade-6
                 redis:6.0.8                "docker-entrypoint.5.                            19 hours                 Up9  4f418f8aec24                                                                                  seconds  aq0                                     redis-nade-5
                                "docker-entrypoint.S."                                             Up 1e  47a460ccf600                  redis:6.0.8                                            19 hours                       seconds  aq0                                     redis-nade-4
                redis:6.0.8                "docker-entrypoint.s'                            19 hours  c4f77bd739d5                                                                              Up  13     seconds  agc                                     redis-nade-3
                redis:6.0.8                "docker-entrypoint.s'                            19hours                   14  968C86257986                                                                      ago         Up       seconds                        redis-nade-2
 f365ca153590                                 "docker-entrypoint.S.  redis:6.0.8                                            20 hours                 Up 33       seconds  ag0                                     redis-nade-1
  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/665181
  • 你也可以参考下这篇文章:【架构师面试-缓存与搜索-2】-基于布隆过滤器解决缓存穿透
  • 除此之外, 这篇博客: 面试连环炮之分布式缓存中的 8、如何应对缓存雪崩、缓存穿透,缓存击穿 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  •   缓存雪崩就是 指缓存由于某些原因(比如 宕机、cache服务挂了或者不响应)整体crash掉了,导致大量请求到达后端数据库,从而导致数据库崩溃,整个系统崩溃,发生灾难。
    缓存数据的过期时间设置随机,防止同一时间大量数据过期现象发生。
    如果缓存数据库是分布式部署,将热点数据均匀分布在不同搞得缓存数据库中。
    设置热点数据永远不过期。
    保证缓存层服务高可用性
    对缓存访问进行 资源隔离、降级
    Redis数据备份和恢复
    快速缓存预热
    对于系统A,假设一秒 5000 个请求,结果其中 4000 个请求是黑客发出的恶意攻击。
    黑客发出的那 4000 个攻击,缓存中查不到,每次你去数据库里查,也查不到。
    举个栗子。数据库 id 是从 1 开始的,结果黑客发过来的请求 id 全部都是负数。这样的话,缓存中不会有,请求每次都“视缓存于无物”,直接查询数据库。这种恶意攻击场景的缓存穿透就会直接把数据库给打死。
    ,每次系统 A 从数据库中只要没查到,就写一个空值到缓存里去,比如 set -999 UNKNOWN。然后设置一个过期时间,这样的话,下次有相同的 key 来访问的时候,在缓存失效之前,都可以直接从缓存中取数据。
    缓存击穿,就是说某个 key 非常热点,访问非常频繁,处于集中式高并发访问的情况,当这个 key 在失效的瞬间,大量的请求就击穿了缓存,直接请求数据库,就像是在一道屏障上凿开了一个洞。
    解决方式也很简单,可以将热点数据设置为永远不过期;或者基于 redis or zookeeper 实现互斥锁,等待第一个请求构建完缓存之后,再释放锁,进而其它请求才能通过该 key 访问数据。
    缓存并发竞争

  • 您还可以看一下 Laura Dong老师的备考:亚马逊云科技认证解决方案架构师 – 助理级课程中的 备考解决方案架构师 - 模块 2 - 第 9 节 - 样题 6小节, 巩固相关知识点