04 2023 档案

摘要:#Docker与微服务实战 #Docker与微服务实战 2022 尚硅谷讲师 : 周阳 #1. 基础篇(零基小白) ##1.1. Docker简介 ###1.1.1. 前提知识+课程定位+开场闲聊 1.1.2. 是什么 ####- 问题:为什么会有docker出现 假定您在开发一个尚硅谷的谷粒商城, 阅读全文
posted @ 2023-04-21 17:17 城市幽灵 阅读(84) 评论(0) 推荐(0) 编辑
摘要:CentOS 7安装配置SSR客户端 ##1. 安装配置SSR客户端 #wget https://raw.githubusercontent.com/biutefo/dabaobei/main/ssr.sh 1.1 安装SSR客户端 由于博客平台对关键字过滤,如下SSR代替如下字符: 安装epel扩 阅读全文
posted @ 2023-04-21 17:10 城市幽灵 阅读(2226) 评论(0) 推荐(0) 编辑
摘要:征信报送系统数据库部分调优指南 此文档用于征信报送系统实施过程中数据库部分调优的 目 录 1.前言 2.数据库调优基本原理及内容 3.数据库的安装 4.数据库的基本设置 5.数据库的基本观测手段 6.实施过程中基本调优方法 7.报送系统数据库调优方法 8.实施过程中常见故障及排除 1.前言 东华征信 阅读全文
posted @ 2023-04-20 09:40 城市幽灵 阅读(195) 评论(0) 推荐(0) 编辑
摘要:Java架构师项目经验历史最详细版本 好的,以下是一个Java架构师在项目中的历史最详细版本的经验描述: 项目名称:XXX系统 项目描述:该项目是一个基于微服务架构的电商平台,涵盖了商品管理、订单管理、支付管理、会员管理等多个模块。作为Java架构师,负责系统的整体设计和开发工作。 项目职责: 1. 阅读全文
posted @ 2023-04-20 09:35 城市幽灵 阅读(185) 评论(0) 推荐(0) 编辑
摘要:Java架构师技术栈详细说明 作为一名Java架构师,我拥有广泛的技术栈,包括以下技术: Java及相关技术 作为一名Java架构师,我深入掌握Java语言的核心知识,熟练使用Java SE和Java EE的相关技术。我熟悉Java基础类库、多线程、反射、注解等技术,并掌握了Java 8及以上版本的 阅读全文
posted @ 2023-04-20 09:35 城市幽灵 阅读(306) 评论(0) 推荐(0) 编辑
摘要:Java架构师面试题 以下是一些Java架构师面试题的示例: 请谈谈你对Java多线程的理解,并介绍一下Java线程池的使用场景。 请谈谈你在项目中遇到的最困难的问题是什么,以及你是如何解决的? 请谈谈你对Spring框架的理解,并介绍一下Spring的核心模块和作用。 请简述一下你对RESTful 阅读全文
posted @ 2023-04-20 09:35 城市幽灵 阅读(575) 评论(0) 推荐(0) 编辑
摘要:好的,以下是一个更详细的Java架构师在项目中的经验描述: 项目名称:XXX系统 项目描述:该项目是一个基于微服务架构的电商平台,涵盖了商品管理、订单管理、支付管理、会员管理等多个模块。作为Java架构师,负责系统的整体设计和开发工作。 项目职责: 负责制定系统的整体架构和技术方案,根据业务需求设计 阅读全文
posted @ 2023-04-20 09:35 城市幽灵 阅读(47) 评论(0) 推荐(0) 编辑
摘要:以下是一个Java架构师在项目中的经验描述示例: 项目名称:XXX系统 项目描述:该项目是一个基于微服务架构的电商平台,涵盖了商品管理、订单管理、支付管理、会员管理等多个模块。作为Java架构师,负责系统的整体设计和开发工作。 项目职责: 设计并实现了整个系统的微服务架构,包括服务拆分、服务注册和发 阅读全文
posted @ 2023-04-20 09:35 城市幽灵 阅读(89) 评论(0) 推荐(0) 编辑
摘要:资深Java架构师简历 以下是一个资深Java架构师的简历示例: 姓名:李四 联系方式:12345678901 | lisi@email.com 职业目标:资深Java架构师 教育背景: 本科学位,计算机科学与技术专业,清华大学,2005年毕业 技能与经验: 15年以上Java开发经验,熟悉Spri 阅读全文
posted @ 2023-04-20 09:34 城市幽灵 阅读(515) 评论(0) 推荐(0) 编辑
摘要:以下是一个Java架构师的简历示例: 姓名:张三 联系方式:12345678900 | zhangsan@email.com 职业目标:Java架构师 教育背景: 本科学位,计算机科学与技术专业,清华大学,2010年毕业 技能与经验: 10年以上Java开发经验,熟悉Spring和Hibernate 阅读全文
posted @ 2023-04-20 09:34 城市幽灵 阅读(672) 评论(0) 推荐(0) 编辑
摘要:目标: 了解Java SE的发展历史 Sun公司在 1991 年成立了一个称为绿色计划( Green Project )的项目,由James Gosling(高斯林)博土领导,绿色计划 的目的是开发一种能够在各种消费性电子产品(机顶盒、冰箱、收音机等)上运行的程序架构。这个项目的产品就是 Java语 阅读全文
posted @ 2023-04-20 09:32 城市幽灵 阅读(57) 评论(0) 推荐(0) 编辑
摘要:JDK 8新特性 课程介绍 1. Java SE的发展历史 2. 了解Open JDK 和 Oracle JDK 3. JDK 8新特性 Lambda表达式 集合之Stream流式操作 接口的增强 并行数组排序 Optional中避免Null检查 新的时间和日期 API 可重复注解 适合人群 在校大 阅读全文
posted @ 2023-04-20 09:32 城市幽灵 阅读(6) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:其他功能 一、功能说明 其他功能:部门管理、岗位管理、日志管理(登录日志、操作日志) 1、部门管理 实现方式与菜单管理类似 2、岗位管理 实现方式与菜单管理类似 3、登录日志 3.1、页面效果 3.2、功能实现-登录成功添加日志 3.2.1、在spring-security模块创建 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(122) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:前端权限对接 一、菜单权限及按钮权限 按照下面步骤即可完成前端框架权限对接 1、修改request.js文件 2、store/modules/user.js 新增菜单及按钮处理 const getDefaultState = () => { return { token: getT 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(204) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:权限管理 一、权限管理 1、权限管理介绍 每个系统的权限功能都不尽相同,各有其自身的业务特点,对权限管理的设计也都各有特色。不过不管是怎样的权限设计,大致可归为三种:页面权限(菜单级)、操作权限(按钮级)、数据权限。当前系统只是讲解:菜单权限与按钮权限的控制。 1.1、菜单权限 菜 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(859) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:菜单管理 一、菜单管理需求 1、需求描述 不同角色的用户登录后台管理系统拥有不同的菜单权限与功能权限,我们前端是基于:vue-admin-template这个模块开发的,因此我们菜单表设计也必须基于前端模板进行设计。 前端框架vue-admin-template菜单其实就是我们配置 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(298) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:用户管理 一、用户管理 1、用户管理CRUD 1.1、mapper package com.atguigu.system.mapper; import com.atguigu.model.system.SysUser; import com.atguigu.vo.system.Sy 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(108) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:角色管理前端 一、前端框架 1、vue-element-admin vue-element-admin是基于Vue和Element-ui 的一套后台管理系统集成方案。 **功能:**https://panjiachen.github.io/vue-element-admin-sit 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(224) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:前端基础知识 一、前端开发和前端开发工具 1、前端开发介绍 前端工程师“Front-End-Developer”源自于美国。大约从2005年开始正式的前端工程师角色被行业所认可,到了2010年,互联网开始全面进入移动时代,前端开发的工作越来越重要。 最初所有的开发工作都是由后端工程 阅读全文
posted @ 2023-04-20 09:31 城市幽灵 阅读(56) 评论(0) 推荐(0) 编辑
摘要:硅谷通用权限系统:搭建环境 一、项目介绍 1、介绍 权限管理是所有后台系统都会涉及的一个重要组成部分,而权限管理的核心流程是相似的,如果每个后台单独开发一套权限管理系统,就是重复造轮子,是人力的极大浪费,本项目就是针对这个问题,提供了一套通用的权限解决方案。 项目服务器端架构:SpringBoot 阅读全文
posted @ 2023-04-20 09:30 城市幽灵 阅读(149) 评论(0) 推荐(0) 编辑
摘要:#尚硅谷Linux课程(大数据、JavaEE,Python通用版) 整理:韩顺平Linux课程笔记 ##第 1 章 LINUX 开山篇 ####1.1 本套LINUX课程的内容介绍 ###1.2 LINUX的学习方向 ####1.2.1 Linux运维工程师. ####1.2.2 Linux嵌入式开 阅读全文
posted @ 2023-04-19 15:25 城市幽灵 阅读(287) 评论(0) 推荐(0) 编辑
摘要:Spring 事物与传播行为 课程目标 : Spring事物概念、理解事物的传播行为 一、事物的概述 (1) 原子性( Atomicity ) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务 的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何 影响。 (2 阅读全文
posted @ 2023-04-19 10:25 城市幽灵 阅读(9) 评论(0) 推荐(0) 编辑
摘要:SpringAOP 编程 课程目标 代理设计模式 Spring的环境搭建 SpringIOC与AOP Spring事物与传播行为 一、代理模式 1.1 概述 代理(Proxy)是一种设计模式, 提供了对目标对象另外的访问方式;即通过代理访问目 标对象。 这样好处: 可以在目标对象实现的基础上,增强额 阅读全文
posted @ 2023-04-19 10:21 城市幽灵 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Mybatis 一、 课程目标 Mybatis介绍 Mybatis增删改查 SQL注入问题介绍 Mybatis xml与注解实现 Mybatis分页 二、 Mybatis 快速入门 2.1 Mybatis 介绍 MyBatis是支持普通 **_SQL_** 查询,存储过程和高级映射的优秀持久层框架。 阅读全文
posted @ 2023-04-19 10:21 城市幽灵 阅读(10) 评论(0) 推荐(0) 编辑
摘要:深入理解 Http 协议 一、 Http 协议入门 1 .1 什么是 http 协议 http协议: 对浏览器客户端 和 服务器端 之间数据传输的格式规范 二、查看 http 协议的工具 1 )使用火狐的firebug插件(右键->firebug->网络) 2 )使用谷歌的“审查元素” 2.1 ht 阅读全文
posted @ 2023-04-19 10:21 城市幽灵 阅读(32) 评论(0) 推荐(0) 编辑
摘要:Session与Cookie(自定义Session) 课程目标: # 熟悉Cookie、Session底层实现原理、自定义缓存、自定义Token、表单重复提交 # 解决方案、Servlet之Fileter解决XSS攻击。 一、. 会话管理入门 1 .1 生活中会话 我: 小张,你会跳小苹果码? 小张 阅读全文
posted @ 2023-04-19 10:21 城市幽灵 阅读(40) 评论(0) 推荐(0) 编辑
摘要:深入理解Servlet 课程目标 动态资源与静态资源区别 1. servlet 三及相关接口简介 2. servet 执行过程 3. servlet 路径映射 4. servlet 生命周期(重点) --理解(重点) 5. Servlet 自动加载 6. Servlet 线程安全 7. Servle 阅读全文
posted @ 2023-04-19 10:20 城市幽灵 阅读(27) 评论(0) 推荐(0) 编辑
摘要:Web开发入门 课程目标 熟悉B/S与C/S体系之间区别 熟悉Tomcat服务器 熟悉整个Http请求DNS解析过程 一、Web开发入门 1.1 引入 之前的程序: java桌面程序,控制台控制,socket gui界面。javase规范 现在和以后的程序:java web程序。浏览器控制。java 阅读全文
posted @ 2023-04-19 10:20 城市幽灵 阅读(66) 评论(0) 推荐(0) 编辑
摘要:Maven 一、课程目标 Maven 构建Maven多模块功能 二、什么是 maven Maven 是一个跨平台的项目管理工具,主要用于基于 java 平台的项目构建,依赖 管理。 如图为项目构建的过程。 解决的项目的问题: 1、如果有好几个项目,这好几个项目中,需要用到很多相同的 jar 包, 能 阅读全文
posted @ 2023-04-19 10:20 城市幽灵 阅读(12) 评论(0) 推荐(0) 编辑
摘要:Java 网络编程之 Socket 一、课程目标 网络模型 TCP 协议与 UDP 协议区别 Http 协议底层实现原理。 二、什么是网络模型 网络编程的本质是两个设备之间的数据交换,当然,在计算机网络 中,设备主要指计算 机。数据传递本身没有多大的难度,不就是把一个设备中的数据发送给两外一个设备, 阅读全文
posted @ 2023-04-19 10:20 城市幽灵 阅读(31) 评论(0) 推荐(0) 编辑
摘要:自定义注解与设计模式 课程目标 熟悉 注解 底层 实现 原理 完成 ORM 框架 底层 原理 常用 设计模式 单例、 工厂、 代理 一. 自定义注解 1.1什么是注解? Jdk1.5 新增新技术,注解。很多框架为了简化代码,都会提供有些注解。可以理解为插件, 是代码级别的插件,在类的方法上写:@XX 阅读全文
posted @ 2023-04-19 10:19 城市幽灵 阅读(32) 评论(0) 推荐(0) 编辑
摘要:数据交换格式与 SpringIOC 底层实现 一、 课程目标 XML 和 JSON Java 反射机制 手写 SpringIOC 二、 什么是数据交换格式 客户端与服务器常用数据交换格式xml、json、html 三、 数据交换格式用场景 移动端(安卓、IOS)通讯方式采用 http 协议+JSON 阅读全文
posted @ 2023-04-19 10:19 城市幽灵 阅读(19) 评论(0) 推荐(0) 编辑
摘要:深入理解 Java 多线程与并发编程 一、课程目标 多线程三大特性 Java 内存模型 Volatile ThreadLoca 线程池 二、线程三大特性 多线程有三大特性: 原子性、可见性、有序性 2.1 什么是原子性 即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不 阅读全文
posted @ 2023-04-19 10:19 城市幽灵 阅读(29) 评论(0) 推荐(0) 编辑
摘要:多线程之间实现通讯 一、课程目标 多线程之间如何通讯 wait、notify、notifyAll()方法 lock 停止线程 守护线程 Join 方法 优先级 Yield 二、多线程之间如何实现通讯 ####2.1 什么是多线程之间通讯? 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的 阅读全文
posted @ 2023-04-19 10:19 城市幽灵 阅读(68) 评论(0) 推荐(0) 编辑
摘要:多线程之间实现同步 一、课程目标 理解线程安全? synchronized用法 死锁 二、什么是线程安全? 2.1 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会 发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 案例 : 需求现 阅读全文
posted @ 2023-04-19 10:19 城市幽灵 阅读(21) 评论(0) 推荐(0) 编辑
摘要:多线程快速入门 一、课程目标 线程与进程 为什么要使用多线程? 多线程应用场景 多线程创建方式 练习题 线程生命周期 面试总结 练习题 二、线程与进程区别 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线 程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以 把它 阅读全文
posted @ 2023-04-19 10:18 城市幽灵 阅读(21) 评论(0) 推荐(0) 编辑
摘要:Mysql|Redis|Memcached|MongoDB面试题 Mysql面试题 1 、数据库存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供 不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 阅读全文
posted @ 2023-04-19 10:18 城市幽灵 阅读(161) 评论(0) 推荐(0) 编辑
摘要:String|Spring Boot|Spring Cloud面试题 String面试题 1 、不同版本的 Spring Framework 有哪些主要功能? 2 、什么是 Spring Framework? Spring 是一个开源应用框架,旨在降低应用程序开发的复杂度。它是轻量级、松散耦合的。它 阅读全文
posted @ 2023-04-19 10:18 城市幽灵 阅读(24) 评论(0) 推荐(0) 编辑
摘要:Java异常面试题 1 、Java中异常分为哪两种? 编译时异常 运行时异常 2 、异常的处理机制有几种? 异常捕捉:try...catch...finally,异常抛出:throws。 public class Box<T> { private T t; public void add (T t) 阅读全文
posted @ 2023-04-19 10:17 城市幽灵 阅读(54) 评论(0) 推荐(0) 编辑
摘要:Java反射|序列化|注解|多线程&并发|JVM面试题 Java反射面试题 1 、除了使用new创建对象之外,还可以用什么方法创建对象? 使用Java反射可以创建对象! 2 、Java反射创建对象效率高还是通过new创建对象的效率高? 通过new创建对象的效率比较高。通过反射时,先找查找类资源,使用 阅读全文
posted @ 2023-04-19 10:17 城市幽灵 阅读(52) 评论(0) 推荐(0) 编辑
摘要:Java中的IO与NIO面试题 1 、Java 中 IO 流? Java 中 IO 流分为几种? 按照流的流向分,可以分为输入流和输出流; 按照操作单元划分,可以划分为字节流和字符流; 按照流的角色划分为节点流和处理流。 Java Io 流共涉及 40 多个类,这些类看上去很杂乱,但实际上很有规则, 阅读全文
posted @ 2023-04-19 10:16 城市幽灵 阅读(100) 评论(0) 推荐(0) 编辑
摘要:Java集合/泛型面试题 1 、ArrayList和linkedList的区别 Array(数组)是基于索引 (index) 的数据结构,它使用索引在数组中搜索和读取数据是很快的。 Array获取数据的时间复杂度是O(1),但是要删除数据却是开销很大,因为这需要重排数组中的所有数据, (因为删除数据 阅读全文
posted @ 2023-04-18 10:07 城市幽灵 阅读(39) 评论(0) 推荐(0) 编辑
摘要:JavaOOP面试题 1 、什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Client/Server),客户端/服务端,桌面应用程序 2 、Java都有那些开发平台? JAVA SE:主要用在客户端开发 JAVA EE:主要用在web应用程序 阅读全文
posted @ 2023-04-18 09:58 城市幽灵 阅读(16) 评论(0) 推荐(0) 编辑
摘要:集群高并发情况下如何保证分布式唯一全局Id生成 问题 为什么需要分布式全局唯一ID以及分布式ID的业务需求 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识,如在美团点评的金融、支付、餐饮、酒店 猫眼电影等产品的系统中数据逐渐增长,对数据库分库分表后需要有一个唯一ID来标识一条数据或信息; 阅读全文
posted @ 2023-04-18 09:58 城市幽灵 阅读(95) 评论(0) 推荐(0) 编辑
摘要:Spring源码 Spring源码方面的知识 Spring bean的生命周期 Spring 工厂,Spring容器,上下文 Spring BeanPostprocessor Spring 和 主流框架的源码 Spring BeanFactory 和 FactoryBean的区别 谈谈你对Sprin 阅读全文
posted @ 2023-04-18 09:58 城市幽灵 阅读(217) 评论(0) 推荐(0) 编辑
摘要:Java NIO 概念 Java NIO(New IO),No Blocking IO 非阻塞IO,是从Java1.4版本开始引入的一个新的IO API,可以替代标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的,基于通道的IO操作。N 阅读全文
posted @ 2023-04-18 09:58 城市幽灵 阅读(123) 评论(0) 推荐(0) 编辑
摘要:NIO深入 BIO 概念 在提到NIO之前,我们说先看看BIO,也就是Blocking IO,阻塞IO,我们首先实现一个最基本的网络通信 /** * QQ客户端 * * @author: 陌溪 * @create: 2020-03-28-11:09 */ public class QQClient 阅读全文
posted @ 2023-04-18 09:58 城市幽灵 阅读(26) 评论(0) 推荐(0) 编辑
摘要:使用GithubAction构建蘑菇博客镜像提交DockerHub 前言 这阵子使用DockerCompose部署蘑菇博客, 但是还存在一些问题,就是每次我们需要下载 蘑菇博客 源码,然后进行编译,打包,部署。而因为蘑菇博客还是前后端分离项目,因此为了完成这一系列的操作,就需要在环境中安装maven 阅读全文
posted @ 2023-04-18 09:55 城市幽灵 阅读(105) 评论(0) 推荐(0) 编辑
摘要:使用DockerCompose制作蘑菇博客YAML镜像文件 前言 首先特别感谢群里的小伙伴 @touch fish 使用DockerCompose部署了蘑菇博客,并且提供了 搭建文档,本博客也是在上面的文档基础上进行修改~ 本文主要讲解的是,如果将蘑菇博客制作成多个Docker业务镜像,逐步讲解每个 阅读全文
posted @ 2023-04-18 09:55 城市幽灵 阅读(580) 评论(0) 推荐(0) 编辑
摘要:如何将镜像推送到阿里云容器镜像服务 前言 原来我都是将镜像推送到Dockerhub中的,因为Dockerhub是国外的软件,所以经常会各种超时的问题,这阵子研究了一下阿里云容器镜像服务,发现可以把一些常用的镜像推送到自己的容器镜像仓库里,然后就可以快速的进行拉取了~,所以我也打算将蘑菇博客的镜像也推 阅读全文
posted @ 2023-04-18 09:55 城市幽灵 阅读(70) 评论(0) 推荐(0) 编辑
摘要:对象存储MinIO入门介绍 常见的对象存储方式对比 直接将图片保存到服务的硬盘 优点:开发便捷,成本低 缺点:扩容困难 使用分布式文件系统进行存储 优点:容易实现扩容 缺点:开发复杂度稍大(尤其是开发复杂的功能) 使用nfs做存储 优点:开发较为便捷 缺点:需要有一定的运维知识进行部署和维护 使用第 阅读全文
posted @ 2023-04-18 09:54 城市幽灵 阅读(331) 评论(0) 推荐(0) 编辑
摘要:Docker图形化工具Portainer介绍与安装 介绍 Portainer是一款轻量级的图形化管理工具,通过它我们可以轻松管理不同的Docker环境。Portainer部署和使用都非常简单,它提供一个可以运行在任何docker引擎上的容器组成。Portainer提供管理docker的contain 阅读全文
posted @ 2023-04-18 09:54 城市幽灵 阅读(522) 评论(0) 推荐(0) 编辑
摘要:本文整理在 Ubuntu 16.04.x LTS 操作系统上容器相关部署手册 容器平台 Rancher Kubernetes Helm Docker 容器服务 prometheus grafana postgresql 1.Docker 1.1.apt source 更换apt源大多数情况下可以加快 阅读全文
posted @ 2023-04-18 09:54 城市幽灵 阅读(97) 评论(0) 推荐(0) 编辑
摘要:Docker操作系统之Alpine 前言 这阵子我发现只要带着alpine前缀的镜像,相比于其它的镜像,体积都相对较小,例如下面这些 java:alpine nginx:alpine 后面通过了解,发现了其实这些java镜像,或者nginx镜像都依赖于某个linux操作系统,我们常见的操作系统有 u 阅读全文
posted @ 2023-04-18 09:54 城市幽灵 阅读(297) 评论(0) 推荐(0) 编辑
摘要:DockerDesktop入门简介 参考 参考:https://segmentfault.com/a/1190000022059895 介绍 Docker Desktop是一款专门为Windows和Mac提供桌面化的容器开发环境,在Windows中,Docker Desktop使用了Windows的 阅读全文
posted @ 2023-04-18 09:53 城市幽灵 阅读(1133) 评论(0) 推荐(0) 编辑
摘要:Docker Compose入门学习 简介 我们之前操作Docker的过程是:DockerFile build run 进行手动操作,单个容器,如果假设我们有100个微服务,并行微服务之间还存在依赖关系。这个时候,我们就可以使用Docker Compose来轻松高效的管理容器,定义运行多个容器。 官 阅读全文
posted @ 2023-04-18 09:53 城市幽灵 阅读(147) 评论(0) 推荐(0) 编辑
摘要:乐观锁和悲观锁 乐观锁 概念 乐观锁:顾名思义,就是十分乐观,它总是认为不会出现问题,无论干什么都不去上锁~,如果出现了问题,再次更新值测试,这里使用了version字段。 也就是每次更新的时候同时维护一个version字段 乐观锁实现方式 取出记录时,获取当前的version 更新时,带上这个ve 阅读全文
posted @ 2023-04-18 09:53 城市幽灵 阅读(11) 评论(0) 推荐(0) 编辑
摘要:Github学习 使用Github优秀框架 + 源码 提升自己 常用词含义 watch:会持续收到该项目的动态 fork:复制某个仓库到自己的Github仓库中 star:可以理解为点赞 clone:将项目下载至本地 follow:关注你感兴趣的作者,会收到他们的动态 in关键字限制搜索范围 公式: 阅读全文
posted @ 2023-04-18 09:52 城市幽灵 阅读(14) 评论(0) 推荐(0) 编辑
摘要:死锁编码及定位分析 概念 死锁是指两个或多个以上的进程在执行过程中,因争夺资源而造成一种互相等待的现象,若无外力干涉那他们都将无法推进下去。如果资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。 产生死锁的原因 系统资源不足 进程运行推进的顺序不对 阅读全文
posted @ 2023-04-18 09:52 城市幽灵 阅读(11) 评论(0) 推荐(0) 编辑
摘要:线程池(Java中有哪些方法获取多线程) 前言 获取多线程的方法,我们都知道有三种,还有一种是实现Callable接口 实现Runnable接口 实现Callable接口 实例化Thread类 使用线程池获取 Callable接口 Callable接口,是一种让线程执行完成后,能够返回结果的 在说到 阅读全文
posted @ 2023-04-18 09:52 城市幽灵 阅读(13) 评论(0) 推荐(0) 编辑
摘要:Synchronized和Lock的区别 前言 早期的时候我们对线程的主要操作为: synchronized wait notify 然后后面出现了替代方案 lock await singal 问题 synchronized 和 lock 有什么区别?用新的lock有什么好处?举例说明 synchr 阅读全文
posted @ 2023-04-18 09:52 城市幽灵 阅读(12) 评论(0) 推荐(0) 编辑
摘要:阻塞队列 概念 队列 队列就可以想成是一个数组,从一头进入,一头出去,排队买饭 阻塞队列 BlockingQueue 阻塞队列,排队拥堵,首先它是一个队列,而一个阻塞队列在数据结构中所起的作用大致如下图所示: 线程1往阻塞队列中添加元素,而线程2从阻塞队列中移除元素 当阻塞队列是空时,从队列中获取元 阅读全文
posted @ 2023-04-18 09:52 城市幽灵 阅读(60) 评论(0) 推荐(0) 编辑
摘要:Semaphore:信号量 概念 信号量主要用于两个目的 一个是用于共享资源的互斥使用 另一个用于并发线程数的控制 代码 我们模拟一个抢车位的场景,假设一共有6个车,3个停车位 那么我们首先需要定义信号量为3,也就是3个停车位 /** * 初始化一个信号量为3,默认是false 非公平锁, 模拟3个 阅读全文
posted @ 2023-04-18 09:51 城市幽灵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:CyclicBarrier 概念 和CountDownLatch相反,需要集齐七颗龙珠,召唤神龙。也就是做加法,开始是0,加到某个值的时候就执行 CyclicBarrier的字面意思就是可循环(cyclic)使用的屏障(Barrier)。它要求做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被 阅读全文
posted @ 2023-04-18 09:51 城市幽灵 阅读(14) 评论(0) 推荐(0) 编辑
摘要:CountDownLatch 概念 让一些线程阻塞直到另一些线程完成一系列操作才被唤醒 CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,调用线程就会被阻塞。其它线程调用CountDown方法会将计数器减1(调用CountDown方法的线程不会被阻塞),当计数器的值变 阅读全文
posted @ 2023-04-17 16:55 城市幽灵 阅读(13) 评论(0) 推荐(0) 编辑
摘要:为什么Synchronized无法禁止指令重排,却能保证有序性 前言 首先我们要分析下这道题,这简单的一个问题,其实里面还是包含了很多信息的,要想回答好这个问题,面试者至少要知道一下概念: Java内存模型 并发编程有序性问题 指令重排 synchronized锁 可重入锁 排它锁 as-if-se 阅读全文
posted @ 2023-04-17 16:54 城市幽灵 阅读(50) 评论(0) 推荐(0) 编辑
摘要:Java锁之自旋锁 自旋锁:spinlock,是指尝试获取锁的线程不会立即阻塞,而是采用循环的方式去尝试获取锁,这样的好处是减少线程上下文切换的消耗,缺点是循环会消耗CPU 原来提到的比较并交换,底层使用的就是自旋,自旋就是多次尝试,多次访问,不会阻塞的状态就是自旋。 优缺点 优点:循环比较获取直到 阅读全文
posted @ 2023-04-17 16:54 城市幽灵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:可重入锁和递归锁ReentrantLock 概念 可重入锁就是递归锁 指的是同一线程外层函数获得锁之后,内层递归函数仍然能获取到该锁的代码,在同一线程在外层方法获取锁的时候,在进入内层方法会自动获取锁 也就是说:线程可以进入任何一个它已经拥有的锁所同步的代码块 ReentrantLock / Syn 阅读全文
posted @ 2023-04-17 16:54 城市幽灵 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Java锁之公平锁和非公平锁 概念 公平锁 是指多个线程按照申请锁的顺序来获取锁,类似于排队买饭,先来后到,先来先服务,就是公平的,也就是队列 非公平锁 是指多个线程获取锁的顺序,并不是按照申请锁的顺序,有可能申请的线程比先申请的线程优先获取锁,在高并发环境下,有可能造成优先级翻转,或者饥饿的线程( 阅读全文
posted @ 2023-04-17 16:53 城市幽灵 阅读(16) 评论(0) 推荐(0) 编辑
摘要:独占锁(写锁) / 共享锁(读锁) / 互斥锁 概念 独占锁:指该锁一次只能被一个线程所持有。对ReentrantLock和Synchronized而言都是独占锁 共享锁:指该锁可以被多个线程锁持有 对ReentrantReadWriteLock其读锁是共享,其写锁是独占 写的时候只能一个人写,但是 阅读全文
posted @ 2023-04-17 16:53 城市幽灵 阅读(14) 评论(0) 推荐(0) 编辑
摘要:值传递和引用传递 举例 /** * 值传递和引用传递 * @author: 陌溪 * @create: 2020-03-14-18:25 */ class Person { private Integer id; private String personName; public Person(St 阅读全文
posted @ 2023-04-17 16:53 城市幽灵 阅读(11) 评论(0) 推荐(0) 编辑
摘要:Collection线程不安全的举例 前言 1、当我们执行下面语句的时候,底层进行了什么操作 new ArrayList<Integer>(); 底层创建了一个空的数组,伴随着初始值为10 当执行add方法后,如果超过了10,那么会进行扩容,扩容的大小为原值的一半,也就是5个,使用下列方法扩容 Ar 阅读全文
posted @ 2023-04-17 16:53 城市幽灵 阅读(23) 评论(0) 推荐(0) 编辑
摘要:原子类AtomicInteger的ABA问题 连环套路 从AtomicInteger引出下面的问题 CAS -> Unsafe -> CAS底层思想 -> ABA -> 原子引用更新 -> 如何规避ABA问题 ABA问题是什么 狸猫换太子 假设现在有两个线程,分别是T1 和 T2,然后T1执行某个操 阅读全文
posted @ 2023-04-17 16:53 城市幽灵 阅读(54) 评论(0) 推荐(0) 编辑
摘要:CAS底层原理 概念 CAS的全称是Compare-And-Swap,它是CPU并发原语 它的功能是判断内存某个位置的值是否为预期值,如果是则更改为新的值,这个过程是原子的 CAS并发原语体现在Java语言中就是sun.misc.Unsafe类的各个方法。调用UnSafe类中的CAS方法,JVM会帮 阅读全文
posted @ 2023-04-17 16:53 城市幽灵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:Volatile的应用 单例模式DCL代码 首先回顾一下,单线程下的单例模式代码 /** * SingletonDemo(单例模式) * * @author: 陌溪 * @create: 2020-03-10-16:40 */ public class SingletonDemo { private 阅读全文
posted @ 2023-04-17 16:52 城市幽灵 阅读(9) 评论(0) 推荐(0) 编辑
摘要:Volatile禁止指令重排 计算机在执行程序时,为了提高性能,编译器和处理器常常会对指令重排,一般分为以下三种: 源代码 -> 编译器优化的重排 -> 指令并行的重排 -> 内存系统的重排 -> 最终执行指令 单线程环境里面确保最终执行结果和代码顺序的结果一致 处理器在进行重排序时,必须要考虑指令 阅读全文
posted @ 2023-04-17 16:52 城市幽灵 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Volatile不保证原子性 前言 通过前面对JMM的介绍,我们知道,各个线程对主内存中共享变量的操作都是各个线程各自拷贝到自己的工作内存进行操作后在写回到主内存中的。 这就可能存在一个线程AAA修改了共享变量X的值,但是还未写入主内存时,另外一个线程BBB又对主内存中同一共享变量X进行操作,但此时 阅读全文
posted @ 2023-04-17 16:52 城市幽灵 阅读(10) 评论(0) 推荐(0) 编辑
摘要:JUC(java.util.concurrent) 进程和线程 进程:后台运行的程序(我们打开的一个软件,就是进程) 线程:轻量级的进程,并且一个进程包含多个线程(同在一个软件内,同时运行窗口,就是线程) 并发和并行 并发:同时访问某个东西,就是并发 并行:一起做某些事情,就是并行 JUC下的三个包 阅读全文
posted @ 2023-04-17 16:52 城市幽灵 阅读(15) 评论(0) 推荐(0) 编辑
摘要:Java8新特性 主要特性 Lambda表达式 函数式接口 方法引用与构造器引用 Stream API 接口中默认方法与静态方法 新时间日期API 最大化减少空指针异常(Optional) 。。。。 HashMap1.7 在JDK1.7 到 JDK1.8的时候,对HashMap做了优化 首先JDK1 阅读全文
posted @ 2023-04-17 16:49 城市幽灵 阅读(53) 评论(0) 推荐(0) 编辑
摘要:Lambda表达式 为什么要用Lambda表达式 Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码,将代码像数据一样传递,这样可以写出更简洁、更灵活的代码,作为一个更紧凑的代码风格,使Java语言表达能力得到了提升 实例代码 Lambda表达式最先替代的就是匿名内部 阅读全文
posted @ 2023-04-17 16:49 城市幽灵 阅读(16) 评论(0) 推荐(0) 编辑
摘要:方法引用与构造器引用 方法引用 概念 若Lambda体中的内容有方法已经实现了,我们可以使用“方法引用”,可以理解为方法引用是Lambda表达式的另外一种表现形式 格式 对象::实例方法名 类::静态方法名 类::实例方法名 注意 Lambda体中,调用方法的参数列表与返回值类型,要与函数式接口中抽 阅读全文
posted @ 2023-04-17 16:49 城市幽灵 阅读(8) 评论(0) 推荐(0) 编辑
摘要:Stream API 了解Stream Java8中有两个比较大的改变 Lambda表达式 Stream API (java.util.stream.*) Stream是Java8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找,过滤和映射数据等操作。使用Strea 阅读全文
posted @ 2023-04-17 16:49 城市幽灵 阅读(8) 评论(0) 推荐(0) 编辑
摘要:并行流与顺序流 并行流 并行流就是把一个内容分成多个数据库,并用不同的线程分别处理每个数据块的流 Java8中将并行流进行了优化,我们可以很容易的对数据进行并行操作,Stream API可以声明性的通过parallel() 与 sequential() 在并行流与顺序流之间进行切换 Fork/Joi 阅读全文
posted @ 2023-04-17 16:49 城市幽灵 阅读(48) 评论(0) 推荐(0) 编辑
摘要:Optional类 概念 Optional类是一个容器类,代表一个值存在或者不存在,原来null表示一个值不存在,现在Optional可以更好的表达这个概念,并且可以规避空指针异常 常用方法 Optional.of:创建一个Optional实例 Optional.empty:创建一个空的Option 阅读全文
posted @ 2023-04-17 16:49 城市幽灵 阅读(10) 评论(0) 推荐(0) 编辑
摘要:通俗理解多种IO模型 前言 我们以故事来讲我们经常遇到的多种IO模型,首先故事的情节是 老李去买火车票,三天后买到一张退票,其中往返车站耗时1小时。 里面主要包含的人员有:老李,黄牛,售票员,快递员 多种IO模型 阻塞IO模型 老李去火车站买票,排了三天队买到一张退票 耗费:在火车站等了三天,其它一 阅读全文
posted @ 2023-04-17 16:48 城市幽灵 阅读(23) 评论(0) 推荐(0) 编辑
摘要:Redis中的跳跃表 前言 跳跃表是一种有序的数据结构,它通过在每个节点维持多个指向其他节点的指针,从而达到快速访问节点的目的。 什么是跳跃表 对于单个链表来讲,即便链表中存储的数据是有序的,如果我们要向在其中查找某个数据,它只能从头到尾遍历链表。这样查找效率就会很低,时间复杂度会很高,达到了O(n 阅读全文
posted @ 2023-04-17 16:47 城市幽灵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:Redis中的数据结构 前言 Redis是一个高性能的分布式内存数据库,在国内外个大互联网公司中都有着广泛的使用,即使是一些非互联网公司也有着非常重要的使用场景。 Redis提供了五种主要的数据类型,它提供了强大且实用的功能,然而实际开发中,有大多数的开发者仅仅只会使用简单的 Redis Strin 阅读全文
posted @ 2023-04-17 16:46 城市幽灵 阅读(23) 评论(0) 推荐(0) 编辑
摘要:#公积金查询机构跳转公积金小程序授权线上培训 中国人民银行征信中心 2023 年 3 月 为协助金融机构开展线上授信业务,经与住建部沟通,机构小程序/App可与 全国住房公积金小程序进行跳转,客户可一次性完成缴存信息查询授权和线 上授信。 01优化业务流程 02一次性完成授权和授信 03提升公积金缴 阅读全文
posted @ 2023-04-14 10:50 城市幽灵 阅读(242) 评论(0) 推荐(0) 编辑
摘要:#Cent OS 7 安装海峰、极点五笔输入法 作为五笔输入法的玩家,输入不使用五笔比较难受;最近安装了 Cent OS 7 (带 GNOME、 KDE桌面)系统,默认安装的是拼音输入法,这那受得了,赶紧上车找五笔输入法。 在此之前我查阅了百度得到以下的命令: yum remove ibus yum 阅读全文
posted @ 2023-04-07 17:44 城市幽灵 阅读(128) 评论(0) 推荐(0) 编辑