ccx_rw_个人页

个人头像照片 ccx_rw
个人头像照片
0
10
0

个人介绍

暂无个人介绍

擅长的技术

  • Java
  • Python
  • 数据库
获得更多能力
通用技术能力:
  • Java
    高级

    能力说明:

    精通JVM运行机制,包括类生命、内存模型、垃圾回收及JVM常见参数;能够熟练使用Runnable接口创建线程和使用ExecutorService并发执行任务、识别潜在的死锁线程问题;能够使用Synchronized关键字和atomic包控制线程的执行顺序,使用并行Fork/Join框架;能过开发使用原始版本函数式接口的代码。

    获取记录:

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2019年10月

正在加载, 请稍后...
暂无更多信息
  • 回答了问题 2019-10-31

    键值对集合的区别

    键值对,是key-value的形式,而集合是多个元素集合在一起。最主要的区别是当进行等值查询时,键值对更有优势。然而进行范围查询是集合优势更大一些。
    踩0 评论0
  • 回答了问题 2019-10-31

    dubbo的原理?

    dubbo是分布式服务治理框架!设计图image.png 由生产者,消费者,注册中心,和监控构成。生产者注册自己的服务地址到注册中心,消费者从注册中心获取地址。
    踩0 评论0
  • 回答了问题 2019-10-31

    spring boot 事务是什么?

    spring boot 事务和Spring的事务是一样的都是利用spring框架来进行事务管理,本质是就是aop切面来开启事务,提交事务,回滚事务等。让事务控制与业务逻辑解耦。
    踩0 评论0
  • 回答了问题 2019-10-31

    解释 Java 堆空间及 GC?

    堆,它是java内存管理的核心区域,用来放置java对象实例,几乎所有创建的java对象实例都是被直接分配到堆上,堆被所有线程共享。对也是垃圾收集器(GC)重点照顾的区域,所以堆空间也会被不同的垃圾收集器细分。最有名的就是新生代,老年代的划分。 GC,垃圾收集器有很多种,如G1,CMS等。通俗的理解垃圾收集器的作用是对不在使用的对象进行内存回收和整理。常用的算法用标记清除,标记压缩等。
    踩0 评论0
  • 回答了问题 2019-10-31

    使用Redis作为数据缓存,当数据库的数据更新时Redis如何同步更新?

    最简单的做法就是在每次更新操作后,删去该数据的缓存,让下一次访问时找不到该缓存,从而读取数据库中的实时数据
    踩0 评论0
  • 回答了问题 2019-10-31

    幂等机制的实现方案?

    我们的幂等基于数据库实现,业务类型-加幂等id主键入口,insert如果成功,幂等通过,如果catch 主键冲突,则幂等失败。
    踩0 评论0
  • 回答了问题 2019-10-31

    数据库原子性怎么实现的

    将所有操作都写入日志,如果事务中的一部分已经成功,中途出现异常需要回滚,通过回溯日志将已经执行的操作撤销,从而达到全部操作失败的目的。
    踩0 评论0
  • 回答了问题 2019-10-31

    如何理解分布式锁?

    分布式锁主要是用来解决分布式系统下的一致性问题,可以类比数据库的事务,也是用来解决多客户端操作相同数据时的一致性问题。也可以类比多线程中的竞态条件。本质上都是共享资源进行操作,并且对访问顺序敏感时的解决方案。分布式锁实现方式有很多,通常用redis,zookeeper等实现。
    踩0 评论0
  • 回答了问题 2019-10-31

    两个名称一样全限定名一样的类是否可以被jvm用不同的类加载器加载,如果能,那用的时候会不会有问题

    可以加载,虽然类的全限定名一致,但是如果由不同的类加载器加载后,在jvm中会被认为是两个不同的类。这是由于类加载器的单一性,虽然父类型的加载器对于子类加载器是可见的,但是类加载器“邻居”之间,同一类型仍然可以被加载多次,因为相互不可见。
    踩0 评论0
  • 回答了问题 2019-10-31

    怎么抉择线程池中线程数量?

    任务一般可分为:CPU密集型、IO密集型、混合型,对于不同类型的任务需要分配不同大小的线程池,CPU密集型任务 尽量使用较小的线程池,一般为CPU核心数+1。 因为CPU密集型任务使得CPU使用率很高,若开过多的线程数,只能增加上下文切换的次数,因此会带来额外的开销。IO密集型任务 可以使用稍大的线程池,一般为2*CPU核心数。 IO密集型任务CPU使用率并不高,因此可以让CPU在等待IO的时候去处理别的任务,充分利用CPU时间。混合型任务 可以将任务分成IO密集型和CPU密集型任务,然后分别用不同的线程池去处理。 只要分完之后两个任务的执行时间相差不大,那么就会比串行执行来的高效。 因为如果划分之后两个任务执行时间相差甚远,那么先执行完的任务就要等后执行完的任务,最终的时间仍然取决于后执行完的任务,而且还要加上任务拆分与合并的开销,得不偿失。
    踩0 评论0
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息