11 2020 档案

摘要:成规模后的业务系统,一般都会走到微服务拆分的阶段。虽然这种方式有各种弊端,但也有显而易见的好处。 先说好处: 业务按从属范围可以做到内聚较高,仅在边界处通过接口耦合 资源的管控更细腻,提升资源利用率 团队职责更明晰,成员技能更深入专注,进而更好的反馈业务价值 多业务线协作更顺畅,敏捷模式有一个良好的 阅读全文
posted @ 2020-11-27 16:48 飞昂之雪 阅读(245) 评论(0) 推荐(0)
摘要:在业务上,对于热点key的定义一般有如下特征: 访问频次较大 访问在时间维度有稠密稀疏等明显区别 key的数量规模可大可小 数据可能有一定的刷新需求 那什么场景下会存在这种热点key呢? 典型场景如: 缓存读: 首页 商品详情 一般打开应用或者小程序之类的,默认会跳转到首页,故而这个页面的数据日常流 阅读全文
posted @ 2020-11-26 00:22 飞昂之雪 阅读(201) 评论(0) 推荐(0)
摘要:高并发场景下,如果需要锁的存在,可以视对锁的需求来处理,比如仅做数值统计,条件翻转,严格串行,逻辑唯一,允许重试等。不同的情况有不同的处理方式。 数值统计&条件翻转 针对数值统计,可以依赖Atomic下的各种计数器来实现。但是,如果竞争线程非常多,竞争激烈的场合,还可以进一步使用比如LongAdde 阅读全文
posted @ 2020-11-10 16:22 飞昂之雪 阅读(304) 评论(0) 推荐(0)
摘要:Synchronized是jvm提供支持的锁,和Lock有很多区别。 针对Synchronized,jvm支持不同层次的实现。按竞争烈度来说,Synchronized会有偏向锁,轻量级锁,重量级锁等3种类型。 针对对象而言,在对象头上的Mark word上会存储锁信息(包括:偏向线程ID、偏向时间戳 阅读全文
posted @ 2020-11-10 15:30 飞昂之雪 阅读(139) 评论(0) 推荐(0)