【4.2.3】服务器安装 Docker Swarm中搭建 别拿
时间:2021-09-27
拿redis作为备份的数据库,这事不知道大家怎么看,反正我感觉脑子嗡嗡的,不然想不出来这样的骚操作。
记得前单位领导也有过这样想法,被我拒绝了,他们以为拿到内存中计算快,节省了io从数据库中读取到内存的消耗,但是redis是没有计算能力的,要自己写方法去实践,当时我比较懒,坚决不同意,既然数据库已经帮我们实现了方法,为什么还要自己写,重复造轮子不是程序员该干的事情。最后前单位采用动态建库建表将数据抽取成小库小表的基础上做求和求平均数中位数。现在想想幸好我没自己去实现,简直是深渊。
现在单位遇到大神,居然也有这样的想法,而且亲自实践,我感觉他是不信任别人的产品,经常提出问题质疑solr和redis这样东西准确性,安全性,既然不信任当初为何要选用。还用的比谁都多,前半个月老兄的代码出现第一个问题,执行太慢,我一查好家伙,查询一个企业信息在500万以下注册资本的取前10条和数据量,这老兄从redis中取200每次 挨个判断,出一次结果3分钟。这只是查出来没办法改吧。老兄框框修改了三天,之后执行了半个月数据导入后,昨天 redis 终于吃满服务器,3个节点分别占用内存71G ,72G,74G , 好家伙,好家伙,我惊叹啊直呼好家伙,单位资源都被一个人用了,还怪服务器变慢了,真是无语啊,这花活玩的真遛,没办法加加班帮他处理下服务器上redis的环境,如此折腾到半夜,两台机器200G内存用虚拟平台动态分配下,还有一台机器只有100G内存不够了,只能申请购买新的插上,现在回家睡觉了,这些都轮不到我插手,今天机器装好让我去调下redis ,二十分钟后redis启动了,测试下集群间联通,掉了的手动添加上,问题是全抛到加内存上了,还好剩下数据不多,跑完内存也够了,就怕下次数据大量更新后,问题还是没有解决。 之前和老兄聊过两句,虽然程序员都不爱说话,但是从简短的几句话我了解老兄以为redis可以设置最大内存限制的,又开启了写盘的操作,redis可以达到最大值时去写盘操作,于是我们经过5分钟百度了下,redis写盘是对内存的一个缓存备份的作用,当redis故障重启时加载盘里的数据达到和故障前一样的数据效果,最大内存限制是对使用的上限做限制了,如果超出要不清理出一些key要不就直接抛出异常OOM。
早上来老兄说要用hbase,hbase是key-value的确实符合则相对复杂点的结构,我心想多么复杂啊,用solr存,用mysql存都一样,何必再加一个hbase,也行,反正也是你改,代码,我也可以学学搭建hadoop那一套东西了,you can you up,反正我不会动你的东西,出了问题依然是你的锅,我接不住。
最后需要注意两点,
这个东西
image.png image.png
version 2021.3月版本 对就是这个小东西,如果遇到服务器没有问题,测试连接正常的,这个工具就是无法测试连接上,麻烦您点击右上角的 红色的 × ,重新打开,相信我你会成功的。
这个东西 redisclient-win32.x86_64.2.0.jar java版本的 不支持集群,强行连接会提示错误MOVED 这个东西不必管。
image.png
常说专业的事交给专业的人,让redis当数据库使用的这事你们怎么看。先说我的观点,我不同意这是个好方法,redis可以存一些字典,菜单栏,导航,token,任务数据啊,这些需要经常使用,数据量不是很大。涉及到计算查找,让redis当数据库怎么看都不是一个专业程序员能想的事情。
点波关注 系统搭建(docker)