240 发简信
  • 120
    第四讲-缓存

    1.缓存适用场景 1.度密集型2.存在热点数据3.对响应时间要求高4.对一致性要求不严格5.需要分布式锁的时候 2.热点key 热点key,是指某个或者某些少量的key热度特...

  • 120
    第三讲-消息队列

    1.kafka知识点 1.1 生产者 1.提高生产者性能,可以使用异步发送。生产者宕机会导致消息丢失,需要生成者有机制保证驱动流程到终态2.生产者自己决定消息的重要性,配置不...

  • 120
  • 120
    jvm调优-几个实例

    1.young gc耗时陡增 日志现象是real time远远高于user time YGC实际的STW停顿时间包含两部分:GC时间(例如,young GC)和GC记录日志的...

  • 120
    java基础知识16-性能调优

    1.服务变慢了如何调优 1.1 观察机器资源情况,cpu,内存,磁盘1.2 观察GC情况,如果发现异常,使用JFR/JMC1.3 观察服务依赖是否有异常1.4 梳理服务链路,...

  • 120
    java-内存溢出

    1. java内存分布 说明一点:目前很多书籍还是基于JDK 7以前的版本,JDK已经发生了很大变化,Intern字符串的缓存和静态变量曾经都被分配在永久代上,而永久代已经被...

  • java基础知识15-类加载器

    1.类加载过程 加载、链接、初始化1.1 首先是加载阶段(Loading),它是Java将字节码数据从不同的数据源读取到JVM中,并映射为JVM认可的数据结构(Class对象...

  • 120
    java垃圾收集器-CMS G1 ZGC

    CMS CMS(Concurrent Mark Sweep)收集器是一种以获取最短回收停顿时间为目标的收集器。这是因为CMS收集器工作时,GC工作线程与用户线程可以并发执行,...

  • 120
    java基础知识14-线程

    1.进程和线程 进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。(进程是资源分配的最小单位)线程:同一类线程共享...

  • 120
    唯一单号

    1.调研 2. 设计原则 1.唯一性,一般冗余用户id或商户id,时间。保证唯一性2.安全性,避免直接使用用户id,避免直接使用递增序列3.趋势递增,保证存储性能 带有一定的...

  • 120
    RPC概述

    1 基本介绍 1.1客户端介绍: 1.1.1 客户端代理 RPC 要求像调用本地函数一样来调用远程函数,所以需要对调用方屏蔽调用细节。RPC中使用代理模式来实现。 1.1.2...

  • 120
    java基础知识12-ExecutorCompletionService

    1. 场景 假设现在有一大批需要进行计算的任务,为了提高整批任务的执行效率,你可能会使用线程池,向线程池中不断submit异步计算任务,同时你需要保留与每个任务关联的Futu...

  • 120
    java基础知识11-completeFuture

    1. callable runnable future Callable,有结果的同步行为,比如做蛋糕,产生蛋糕Runnable,无结果的同步行为,比如喝牛奶,仅仅就是喝Fu...

  • 120
    java基础知识10-AQS

    1.AQS核心思想 如果被请求的共享资源空闲,那么就将当前请求资源的线程设置为有效的工作线程,将共享资源设置为锁定状态;如果共享资源被占用,就需要一定的阻塞等待唤醒机制来保证...

  • 120
    java基础知识9-并发

    1. synchronize 1.1 Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现的。但是监视器锁本质又是依赖于底层的操作系统的Mutex...

  • 120
    java基础知识8-设计模式

    1.接口和抽象类区别 接口是对行为的抽象,抽象方法的集合。不能实例化,不能有任何非常量成员,没有非静态方法实现。接口增加方法所有实现类都需要实现抽象类是不能实例化的类,主要目...

  • 120
    java基础知识7-IO

    1.IO模型 对于一次IO访问(以read举例),数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间。所以说,当一个read操作发...

  • 120
    java基础知识6-map

    1.map类图 2.hashtable,hashmap,treemap区别 hashtable线程安全,key和value不能为空,concurrenthashmapkey和...

  • 120
    java基础知识5-队列

    1.Vector,ArrayList,LinkedList区别 Vector,ArrayList底层都是数组,Vector是线程安全的,arrayList不是。适合随机访问L...