自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 中台战略=微服务+服务治理+组织架构

前言本文是对《企业IT架构转型之道——阿里巴巴中台战略思想与架构实战》的读书总结。不会涉及太多技术具体点,而是将本书的逻辑脉络和结论梳理出来,方便大家阅读(带有个人理解,请批判性的阅读)。已经读过该书或者在各种渠道了解中台后,本文可以帮忙梳理一下思路。没有读过该书或不了解中台,本文可以作为读书路线,不迷路。接下来我将按以下路线解读该书:问题 —— 方案 —— 实现—— 总...

2019-05-24 15:16:03 2564

原创 优雅地实现定时任务——记住这三点就够

前言定时任务=调度+执行调度有很多框架实现:elastic-job、quartz等执行需要程序员实现任务队列。实现任务队列有很多方式:数据库、redis、kafka实现任务队列虽然很简单,但稍有不慎,也很容易出问题。代码实现首先把问题简单化,假如需要在单库实现定时任务,我们逐步实现优化代码第一次实现public void execute1() { List&l...

2019-05-04 18:57:36 1461

原创 跳槽6个月后的一些感悟

薪资1.跳槽给你的涨幅,是依赖你定级时的薪资范围,大多时候跟你上家公司薪资不太相关。2.在级别的薪资范围内,争取高区间,一依赖你的上家工资,二是看HR留你的意愿层度。如果HR意愿很强,此时手上有几个对比offer就很好了。职场1.从P6到P9,每个人都很忙,压力大。只要你一天在工薪阶级,老板们就不会让你舒服起来。2.职场真正关心你的人几乎没有,因为个个都是泥菩萨过江。3.大厂求职的考察点:大厂背景>稳定性>项目>学历...

2020-11-19 21:00:52 211

原创 lambda$groupingBy 空指针问题

开发功能时,用到了stream的collect(Collectors.groupingBy)方法,一直报NullPorintException,废了一些时间来定位问题,虽然最后其实比较简单。记录一下,以下代码会报空指针 public static void main( String[] args ) { List<Student> list=new ArrayList<>(); list.add(new Student("A",

2020-10-14 17:42:00 3012

原创 成长记录:三年工资翻三倍

学了七年机械,17年硕士毕业。毕业其实也不知道自己能做什么,在找工作的时候提前三月将一本JAVA入门看了几遍,要说自己懂JAVA,我自己都不好意思。投过机械设计岗、产品岗、JAVA岗等,最后只有一个中厂(某个行业的NO1)要了我,从事JAVA开发。入职三年,我一直想找到当初面试我技术的面试官,问问他是看重我哪一点,让我通过了面试。记得当时面试官问我问题,我直接回答不知道,说我就知道几个从书上背下来的答案,什么面向对象,AOP啥的。看我很多不知道,面试官就开始问一些譬如你在硕士做得最成功的一件事是什么?如

2020-08-16 21:38:52 1271

原创 Redis分布式锁项目实践

实现方案:1. setNx(set if not exist),这个是原子操作;2. 加锁了之后如果机器宕机那么这个锁就不会得到释放,所以要加入过期时间,而且加入过期时间需要和setNx同一个原子操作;在Redis2.8之前我们需要使用Lua脚本达到我们的目的,但是redis2.8之后redis支持nx和ex操作是同一原子操作。3. 使用ShardedJedis实现。加锁: ...

2020-01-09 13:00:16 264

原创 MYSQL分区表如何保证数据唯一性

背景:由于业务数据量大,采用了分库分表(Mycat);为了提高查询效率,使用了时间来分区;分区之后表的唯一索引必须带上分区字段。假设有一张订单表(table_order)业务字段为order_no(订单号),分区字段为create_tm(创建时间);唯一索引就是联合索引order_no+create_tm。问题:分布式系统中多个节点,对同一订单并发处理,发现table_order中...

2019-12-19 11:31:57 2366

原创 一次Mycat聚合排序问题定位

背景:Mycat+Mysql实现分库分表;功能需要遍历表,数据量有点大,于是通过id排序分页查询。问题:在实现过程中发现有部分id查不出来,功能排期只能被迫延后。定位第一阶段:在确认了代码和SQL语句没有问题后,目光转至Mycat与Mysql排序逻辑上来。定位第二阶段:确认了Mycat与Mysql排序逻辑有问题,至少Mycat与Mysql排序逻辑表现不一致。1.执行...

2019-11-20 14:20:56 779

翻译 Guava Cache官网个人翻译

示例LoadingCache<Key, Graph> graphs = CacheBuilder.newBuilder() .maximumSize(1000) .expireAfterWrite(10, TimeUnit.MINUTES) .removalListener(MY_LISTENER) .build( ...

2019-10-17 21:01:51 294

原创 架构设计方法之一:分析系统复杂度

书名:《从零开始学架构》最主要是提出了一种观念,架构是为了应对系统复杂度;以及一个先分析系统复杂度来指导架构设计方法。下图是书本脑图PS:本书涉及的其它点CAP理论Consistency 一致性 Availability 可用性 Partition tolerance 分区容忍性Eric Brewer 说,这三个指标不可能同时做到。这个结论就叫做 CAP 定理。...

2019-05-30 19:02:20 512

原创 “要不你来改?”——多么痛的领悟

项目小组一个新项目做了差不多一年,从第三个月开始,我就发现代码设计层面的漏洞。如果我觉得有必要,我就会指出来。但是每次向团队研发人员指出,他们总是说“时间紧、任务重,下次再改。”——绝望后来如果我认为代码问题比较严重,影响到后期维护,研发人员还是说“要不你来改?”。我就会当着研发人员的面向研发负责人提出我的想法和疑问,让研发负责人定夺。再后来,研发负责人也不太管了。为了项目进度,甚至代码评...

2018-12-12 11:47:31 351

原创 CXF报错解决

NoSuchMethodError-&gt;JaxWsServiceFactoryBean.isWrapperPartQualified报错堆栈:Caused by: java.lang.NoSuchMethodError: org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.isWrapperPartQualified(Lorg/ap...

2018-12-05 15:16:46 1921 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除