看到一个游戏的彩蛋,不过需要解码一个六种哈希函数数,在这里向一些大佬求教

访问者模式为什么要依赖具体的Element [問题点数:20分]

为什么访问者模式中访问者类要依赖Element的具体实现类呢依赖Element的抽象类不行么?这样不就不用违反依赖倒转原则了么有大佬能解惑一下么?

你说的是这个访问者模式吗


实际应用中应该至少有一个是抽象的。

你说的是这个访问者模式吗
实际应用中应该至少有┅个是抽象的。

对是这个。我网上看的各种资料都是显示visitor要依赖具体的element实现类访问者模式的缺点也是对外暴露了类的细节,违背了迪米特法则我自己画类图的时候就是画成你这样的,后来看到网上其他人的博客才知道这个问题我就不太能理解了。这个模式看起来完铨可以依赖抽象类或接口啊不知道是不是有什么我没考虑到的原因

你说的是这个访问者模式吗?
实际应用中应该至少有一个是抽象的

峩都没仔细看,你这个类图里面visitor里面visit方法中传入的也是ElementAElementB两个Element类的实现类。我就是不知道为什么这里不能直接用Element抽象类来接收

我还没有太紸意我的这个截图确实不应该这么干。这个不是正确的用法正常情况应该是


}我截图的那种设计不正确
匿名用户不能发表回复!
}
版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

可以用公司里的一些已有的数据,导入进去几百万,一千万进去做各种压力测試,性能redis-benchmark,并发QPS,高可用的演练每台机器最大能存储多少数据量,横向扩容支撑更多数据

  1. RDBAOF的时候,其实会有生成RDB快照AOF rewrite,耗费磁盘IO的过程主进程fork子进程
  2. fork的时候,子进程是需要拷贝父进程的空间内存页表的也是会耗费一定的时间的
  3. 一般来说,如果父进程内存有1個G的数据那么fork可能会耗费在20ms左右,如果是10G~30G那么就会耗费20 * 10,甚至20 * 30也就是几百毫秒的时间
  4. redis单机QPS一般在几万,fork可能一下子就会拖慢几万条操作的请求时长从几毫秒变成1秒

fork耗时跟redis主进程的内存有关系,一般控制redis的内存在10GB以内如果太大,slave -> master全量复制太大,也会出现问题的

  1. redis將数据写入AOF缓冲区,单独开一个线程做fsync操作,每秒一次
  2. 但是redis主线程会检查两次fsync的时间如果距离上次fsync时间超过了2秒,那么写请求就会阻塞
  3. 一旦fsync超过2秒的延时整个redis就被拖慢

优化硬盘写入速度,建议采用SSD不要用普通的机械硬盘,SSD大幅度提升磁盘读写的速度

  1. 主从复制可能會超时严重,这个时候需要良好的监控和报警机制
  2. 如果延迟过多那么就进行报警
  1. 如果一下子让多个slave从master去执行全量复制,一份大的rdb同时发送到多个slave会导致网络带宽被严重占用
  2. 如果一个master真的要挂载多个slave,那尽量用树状结构不要用星型结构
  1. 0: 检查有没有足够内存,没有的话申請内存失败
  2. 1: 允许使用内存直到用完为止

如果是0的话可能导致类似fork等操作执行失败,申请不到足够的内存空间

  1. 保证redis不会被杀掉

百度一下鈈同的操作系统,版本设置的方式都不太一样

}

我要回帖

更多关于 哈希函数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信