juc-02-栈与栈帧
摘要:
每个线程有一个自己的栈帧,存储自己的东东: 程序计数器 局部变量表 返回地址 操作数栈 锁记录 线程上下文切换: 被动: 线程的cpu时间片用完了 发生垃圾回收了 系统把时间片给优先级更高的线程了 主动: sleep、yield、wait、join、park、synchronized、lock等 上
juc-01-多线程基本知识
摘要:
进程与线程的关系:一个进程由一到多个线程组成。 线程是cpu最小的调度单位。 进程是资源分配的最小单位。 并行与并发: 并行:同一时刻执行多个任务。 并发:同一时刻,微观串行,宏观并行,cpu极速切换执行线程。 单核cpu,如果没有并发,则不能同时执行多个任务 同步与异步: 同步:方法的调用需要返回
Docker-01-环境准备-centos7/docker安装
摘要:
学习视频:02.Docker的安装_哔哩哔哩_bilibili 资料地址:Linux环境搭建 - 飞书云文档 centos7下载镜像地址:centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 踩坑记录:【 yum-utils阿里云镜像已经不可用,使用腾讯云可以20250223】 #
Sharding-JDBC:实现数据库的读写分离?
摘要:
简介 轻量级Java框架,在Java的JDBC层提供额外服务,以jar包的形式提供服务(增强版数据库连接驱动)。 适用于基于JDBC的ORM框架、支持第三方数据库连接池、支持实现了JDBC规范的数据库。 读写分离:基于已配置好主从复制的多个数据库。 使用步骤 在springboot项目中使用。 一、
MySQL:如何实现主从复制?
摘要:
简介 MySQL主从复制是一个异步的复制过程,底层是基于MySQL数据库自带的二进制日志功能。 指一台或多台MySQL数据库(从库,slave)从另一台数据库(主库,master)进行日志的复制、日志解析,最终实现从库数据与主库数据保持一致。 原理 1、master将 改变 记录到二进制日志中。 2
SpringBoot:如何使用不同环境的配置信息?
摘要:
一、准备不同环境的配置文件 通用:application.yml 一定会被使用的配置信息,存放通用的配置。 #通用配置 server: port: 8080 生产环境:application-prod.yml 存放生产环境的配置信息,如生产数据库的连接配置。 #生产环境,配置数据库连接信息 spri
Spring Cache:如何使用redis进行缓存数据?
摘要:
简介 Spring Cache是一个缓存框架,实现了基于注解的缓存功能。 它提供了一层抽象,底层可以切换不同的cache实现,通过CacheManager接口统一不同的缓存技术。 使用不同的缓存技术只要实现对应CacheManager的接口即可,若不指定,则使用内置的基于Map的缓存。 使用 在sp
CentOs7:如何安装jdk、mysql、redis、gti、maven?
摘要:
一、JDK 使用压缩包安装,jdk-8u361-linux-x64.tar.gz。 //1、解压 tar -zvxf ....tar.gz //2、配置环境变量 vim /etc/profile //新增内容 JAVA_HOME=/soft/jdk1.8.0_361 PATH=$JAVA_HOME/
Jmeter:快速上手?
摘要:
一、点击新建线程组 配置线程数量、运行时间、是否循环...... 二、配置HTTP请求 三、HTTP具体配置 配置、ip、端口、请求....... 四、配置监听器 用来观看请求与响应数据。 五、点击绿色箭头运行
Redis:手写一个Redis工具类,解决缓存穿透、击穿问题?
摘要:
核心原理 1、使用空缓存解决缓存穿透问题。 2、使用逻辑过期解决缓存击穿问题。 实现代码 package com.lurenjia.pets_adoption.utils; import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONO