Java专栏
tongyiyi
1、15年以上计算机行业从业经验,熟悉互联网、传统软件、人工智能等行业知识,擅长设计开发工作。
2、熟悉 Oracle.. MySQL 数据库,对数据库结构设计及性能优化具有丰富经验。
3、熟悉 Spring Boot、SpringCloud微服务架构,Mybatis中间件、Kafka/Emqx 消息中间件、Kettle数据ETL中间件。
4、具备从0-1产品和项目,曾多次主导项目开发满足千万级高并发。
5、熟悉智能硬件的对接如门禁机、考勤机、智能锁、灵性锁,熟悉银行领域智能业务库/四类库智能系统设计。
6、熟悉阿里云相关产品实际应用,如OSS服务、负载均衡服务、SSL证书服务。
展开
-
mybatis源码分析-概述
1.MyBatis源码导入step1.下载mybatis-3 step2.作为maven工程导入 step3.将源码的pom.xml中的<optional>true</optional>改为false step4.安装mybatis-parent和mybatis到本地仓库 mvn clean install -Dmaven.test.skip=true ste...转载 2019-11-07 12:59:20 · 352 阅读 · 0 评论 -
你的 Java 并发程序 Bug,100% 是这几个原因造成的
可见性问题可见性是指一个线程对共享变量进行了修改,其他线程能够立马看到该共享变量更新后的值,这视乎是一个合情合理的要求,但是在多线程的情况下,可能就要让你失望了,由于每个 CPU 都有自己的缓存,每个线程使用的可能是不同的 CPU ,这就会出现数据可见性的问题,先来看看下面这张图:对于一个共享变量 count ,每个 CPU 缓存中都有一个 count 副本,每个线程对共享变量 coun...转载 2019-11-01 10:01:37 · 350 阅读 · 0 评论 -
解决并发编程中原子性、可见性、有序性问题,既然synchronized是"万能"的,为什么还需要volatile呢?
Java并发编程中比较重要的两个关键字:synchronized和volatile我们简单回顾一下相关内容:1、Java语言为了解决并发编程中存在的原子性、可见性和有序性问题,提供了一系列和并发处理相关的关键字,比如synchronized、volatile、final、concurren包等。(再有人问你Java内存模型是什么,就把这篇文章发给他)2、synchronized通过加锁...转载 2019-11-01 09:39:37 · 805 阅读 · 0 评论