zoukankan      html  css  js  c++  java
  • 2021年末总结

    • 写工作日志时,突然意识到我写下的是:2021-12-31,一年的时间又溜走了,一时间百感交集,回忆了一下这一年做了些啥、学了些啥,虽然做了不少事,但还是感觉怅然若失。

    回顾下这一年干了啥:

    一、先说学习上吧

    1. 上半年面了一家小公司给我打击的不行,买了本书花了俩月把spring源码撸了一遍。

    不敢说搞完吸收了多少,最起码使用起来的还是很熟练的,出了bug能快速定位问题,而不是拷一段异常信息去网上搜,以及对spring相关api更加熟悉了,得到了很多非常好用的轮子。
    存在的不足是,学习广度还是不够、也不够细致,只是学习了核心模块的主要逻辑,剩下的在使用中慢慢去拓展吧。

    2. 学习了一下设计模式:Head First设计模式。

    这本书讲得很浅,我愿意称为最适合设计模式入门的书;
    学习设计模式的初衷也是因为工作中碰到的问题,以前的代码设计很差,导致频繁修改代码,搞清楚设计模式有不小的帮助。

    3. mysql之Innodb

    由于工作中碰到一些性能问题,又花了俩月搞了一本Mysql-Innodb引擎存储的书,把mysql存储引擎撸了一遍。
    书确实很强,虽然实际应用到的场景不多,看完真的受益匪浅;核心内容:索引、锁、事务。

    4. 刷题

    letcode 刷了几道题,效率颇低。

    5. 学习&使用消息中间件RocketMQ,对底层的学习暂时留白;

    云印象:

    • 削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题)

    • 系统解耦(解决不同重要程度、不同能力级别系统之间依赖导致一死全死)

    • 提升性能(当存在一对多调用时,可以发一条消息给消息系统,让消息系统通知相关系统)

    • 蓄流压测(线上有些链路不好压测,可以通过堆积一定量消息再放开来压测)

    个人印象:

    • rocketmq 支持集群、自定义队列数;

    • 支持并发消费、顺序消费、延时消费,根据时间重置位点重新消费;

    • 单一topic支持,不同的消费者组同时消费,就是说一条消息可以被多个不同的任务消费;[数据交换利器啊,我司产品主要面向政府部门业务系统,往往涉及大量的数据交换,结构相似的数据同时推送多处]

    6. 学习&使用阿里开源中间件canal

    • 它的实现来自于对mysql二进制日志的监听并转发,canal模拟了mysql主从模式中的 "从"。

    • 它的好处之一是快速的数据交换。

    当然它也有不足

    • 当表结构发生变化时,我的建议是直接跳过这部分语句的监听;且,重启数据库,重启canal;

    我碰到过的问题是:

    1. 新增字段后,canal 无法监听到新的字段数,导致解析异常,重启mysql后得到解决;

    2. 主键属性变化后(变更类型,依然存在显式定义的主键),canal解析的消息里确实了主键属性的描述信息:pkNames

    7. 学习&使用 Elasticsearch

    • 对聚合查询支持非常好,核心概念是倒排索引(类哈希表的数据结构),它是典型的空间换时间内存开销较大,支持分布式集群。
    • 缺点是不支持事务(熟悉数据库事务的小伙伴应该知道它的后果),并发场景下容易丢失数据;对此es支持通过 版本号进行乐观锁控制。
    • 个人看法,它最大的缺点是数据的安全性;硬件开销倒是其次(可能是我们客户比较财大气粗,资源容易申请才让我有了这样的错觉)。

    8. 当当网开源分库分表中间件:shardingsphere

    apache 顶级项目之一,我们的产品中已经用上了,对于海量数据来说支持确实挺好;

    个人私以为,使用这类的中间件,非常考验程序的设计

    • 一个稀烂的程序设计 + shardingsphere = 噩梦

    • 某些场景下设计不当,将会导致实际查询sql的次数,变成参数和分表的笛卡尔积;必将带来灾难性的后果。

    • 对聚合、排序的支持存疑,实际执行应该会分发到所有的分库分表执行,最终由中间件去汇总执行结果;我们的产品结合了elasticsearch,排序分页相关的查询没有经过数据库进行,在根据分表键查询时才走库。

    • 对一些查询支持不足,具体参考官网:https://shardingsphere.apache.org/document/current/cn/features/sharding/use-norms/sql/

    二、再说生活

    1. 好像还是老样子,家和公司两点一线,2021的我还是没能脱单;倒是也有收获,为人处事上学到了很多。

    2. 这一年我学会了对领导说拒绝,组内就那么几个人,比我早来的几个老哥都非常明智了,之前组长有啥烂活都直接绕过他们,找我们几个新来不久的接盘;不过我算是看透了,接犯不着在这卷;
      工作分内的事,我可以尽120%的努力去做,但是你要让我接盘别人整的烂活,那我只能装聋作哑了,大家都是肉体凡胎,我特么都还没找到另一半,可不想突然哪天乘键盘西去不归。

    3. 用工作分外的事情卷别人的人,都是害人害己的大聪明。

    三、说说2022

    • 2021 除了默默学习武装自己外,就没别的更好的回忆了

    • 新的一年里希望有个更好的环境,最好是能上岸;

    • 希望能脱单;

    • 希望每天不要再这么累;

    • 希望能多出去走走;

    • 学习更多的知识,哈哈哈我自己卷起来了。

  • 相关阅读:
    【BZOJ 4151 The Cave】
    【POJ 3080 Blue Jeans】
    【ZBH选讲·树变环】
    【ZBH选讲·拍照】
    【ZBH选讲·模数和】
    【CF Edu 28 C. Four Segments】
    【CF Edu 28 A. Curriculum Vitae】
    【CF Edu 28 B. Math Show】
    【CF Round 439 E. The Untended Antiquity】
    【CF Round 439 C. The Intriguing Obsession】
  • 原文地址:https://www.cnblogs.com/bokers/p/15753228.html
Copyright © 2011-2022 走看看