最近一直很忙,感觉压力很大。
我要随便写写缓解压力。
代码反复重构,然后又要忙着做查服性能优化。并且要准备参加一个考试,非常的烦恼。给我非常大的压抑。
想想具体有什么了,
第一个是代码重构,重构代码,很久之前就逐渐对于代码的重构热度不高了,因为都知道优秀的代码可以保持好的扩展性,维护性,健壮性。但是没人关注。所以逐渐放下,现在又开始重新拿起。第一次是我是有点反感的。因为非常多的任务,dead line又很紧张,所以给我非常大的压力。但是最后重新写了好几遍代码,的确进步很大。
以前对于设计模式,那叫做看了就束之高阁,谈理论的时候就拿出来讲讲。代码里面应用并不多。
以前为了学TDD,看了两本书。然而发现并没什么用,还不如这次高强度的代码编写。以高的要求,保证代码的可测性,TDD一下就出来了。
第二个是性能优化,我们产品有部分查服务,非常慢,要平均1s,有的时候要到2s.
然后有一部分的原因是有一段查询的性能是400ms左右,那么希望优化到100ms以内。从数据库的角度去优化,我觉得可以做到。做宽表,拆表。
但是以前拆了很多次。我都感觉数据库没法看了。各种拆分。维护性,扩展性,让我担忧。虽然我决定今年一定会离开公司,但是我还是希望把产品做好。希望能如愿去自己心怡的公司,面试的很难过啊,每次几面,每面1个小时,最后没过,感觉特别心累。都不想面,点想放弃了。
那么现在我考虑很久,当时一直在 redis/内存/es,里面思考做哪个更好。
讲道理,现在数据才大概10个G不到,这次做,大概5个G左右。我想直接把数据写到内存,然后读内存。但是这样子写的话,比较复杂了,并且维护性不好。虽然性能肯定非常好。
使用redis了,考虑的是搜索分页问题,但是最后跟我说,现在阶段有流程是查出所有,然后把查询结果缓存,放redis进行分页,我就差点吐了。不过后面肯定还是要整个一起做聚合的。
最后还是使用es做验证,做多维度拆分,性能表现还行,但是测试维度不够,并且其他项目都是并行,所以给我非常大的紧张感觉,因为非常害怕最后去生产表现不好,感觉也是心里素质的问题。但是给人成长也大。因为不停的思考方案。
从存储,查询,网络请求,各种方面去思考方案来推动。
突然发现什么是最难的。最难的就是,你不知道未来是怎么样的,你做的东西是同组了解不够多,但是希望把它优化的。
第三个是考试
努力把,奥立根,心痛。难受。并不能让我成长,只有不断的学习才可以。
forever believe happy thing is happen.