原语 线程 基础知识 常见
lambda表达式相关知识
等价于匿名函数对象,又称为“闭包”(closure),更便捷,表达更直接。表达式要素包括: 1:捕获列表 2:参数列表 3:mutable修饰符,表达传值或传引用 4:noexcept 5:返回值类型声明 -> 6:表达式体{...} lambda表达式可接受参数,可返回值,可模板化,也可以通过传值 ......
几种常见的架构模式
本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址 如果访问不了Github,可以访 ......
Java SpringBoot Test 单元测试中包括多线程时,没跑完就结束了
如何阻止 Java SpringBoot Test 单元测试中包括多线程时,没跑完就结束了 使用 CountDownLatch CountDownLatch、CyclicBarrier 使用区别 多线程 ThreadPoolTaskExecutor 应用 Java BasePooledObjectF ......
day02-Java基础语法
day02 - Java 基础语法 1. 注释 注释是对代码的解释和说明文字。 Java 中的注释分为三种: 单行注释: // 这是单行注释文字 多行注释: /* 这是多行注释文字 这是多行注释文字 这是多行注释文字 */ 注意:多行注释不能嵌套使用。 文档注释(暂时用不到): /** 这是多行 ......
决战圣地玛丽乔亚Day48----Redis常见问题处理
热点数据倾斜是什么?如何解决和处理? 数据量倾斜和访问热点数据造成倾斜: 数据量倾斜:1.bigkey 2.hashtag不规范 3. 槽位分配不均 数据访问倾斜:1.拆key 2.扩容 3.本地缓存 如果是bigkey导致的倾斜: 在业务层生成数据时,要尽量避免把过多的数据保存在同一个键值对中。如 ......
NetSuite : SDF 基础指南
VS Code 使用 SDF SuiteCloud : Create Project SuiteCloud : Set Up Account (连接沙盒环境) SuiteCloud : Import Objects Objects 目录下会新增脚本 xml 文件,整体文件结构如下 建议:把脚本 xm ......
MYSQL基础知识之DCL语句
1、DCL概念 DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户、控制数据的访问权限 2、查询用户 语法:SELECT * FROM user; MySQL用户信息默认存储在mysql数据库中的user表中,所以只需要查询mysql数据库中的user表即 ......
1、分库分表基础理论(一)
在高性能系统的要求下,复杂的系统当单表数据量增加到几千万甚至上亿条记录时,查询延迟无疑是影响高性能系统的瓶颈。业内提供的解决的方案是分库分表,冷热数据分离。 一、分库分表: 1、垂直分片: 按照业务维度将表拆分到不同的数据库,专库专用,分担数据库压力 2、水平分片: (1)、水平分库 以字段为依据, ......
MYSQL基础知识之DQL语句
1、DQL概念 DQL英文全称是Data Query Language(数据查询语言),用来查询数据库中的表的记录 2、基本查询 语法: # 查询全部字段SELECT * FROM 表名; # 查询多个字段SELECT 字段1,字段2,字段3... FROM 表名; # 去重 语法:SELECT D ......
线程池之FutureTask、ThreadPoolExecutor源码分析
前言 在我们日常工作中,我们经常会用到多线程的来处理一些异步任务,提高系统吞吐量,但是线程毕竟是一种昂贵的系统的资源,我们不应该频繁的去申请销毁。在java的project loom还未正式release的时候,我们常用池化的方式来使用线程。所以了解线程池的设计思想能够有助于我们更好的使用它,所以本 ......
MYSQL基础知识之DML语句
1、DML概念 DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据进行增(INSERT)、删(DELETE)、改(UPDATE)操作 2、插入数据 语法: 2.1、 给指定字段添加数据INSERT INTO 表名 (字段1,字段2,...) ......
线程间数据传递之ThreadLocal、InheritableThreadLocal、TransmittableThreadLocal
前言 在JAVA中线程之间传输数据的方式有多种,而本文旨在探讨ThreadLocal及其衍生类的使用场景。 使用场景 业务系统的参数传递:在我们的业务系统中可能会用到许多公共参数,可能是用户的token信息,在我们链路中可能某一个方法需要用到它,那么我们又不想一层层的传递它。 分布式系统要打通各个系 ......
Java基础
本文是作者通过学习B站韩顺平老师2021年的《30天学会Java》和尚硅谷宋红康老师的《Java》视频写的Java学习笔记,也是作者写的第一篇关于编程开发语言的笔记,内容可能有些冗余,但是它可以作为你的在线Java”词典“查阅。关于文末的JDK新特性还会持续补充。如果文中有什么错误欢迎评论区留言,作... ......
day02-搭建微服务基础环境01
搭建微服务基础环境01 1.创建父工程,用于聚合其他微服务模块 1.1创建父项目 说明:我们先创建一个父项目,该父项目会去管理多个微服务模块(module),如下: (1)File-New-Project-Maven,选择如下: (2)输入项目名称等信息,然后next (3)选择Maven,然后Fi ......
多线程3
Lock锁 ReentrantLock lock=new ReentrantLock(); class TestLock2 implements Runnable{ int ticketName=10; //定义lock锁 private final ReentrantLock lock=new R ......
线程池
线程池 ExecutorService 和Executors public class TestPool { public static void main(String[] args) { //创建服务 //newFixedThreadPool 参数为:线程池大小 ExecutorService ......
多线程1
Thread //继承Thread类,重写run方法,调用start开启线程//注意:线程开启不一定立即执行,由CPU调度执行public class Demo01 extends Thread{// public void run(){ for (int i = 0; i < 20; i++) { ......
多线程2
Join //join线程强制执行(插队)public class TestJoin implements Runnable{ @Override public void run() { for (int i = 0; i < 100; i++) { System.out.println("我是v ......
多线程同步与安全
三大不安全线程 //模拟不安全的买票public class TestBuyTicket { public static void main(String[] args) { maiPiao maiPiao=new maiPiao(); new Thread(maiPiao,"小明").start ......
MYSQL基础知识之DDL语句
一、DDL概念 DDL(Data Definition Language)语言:数据定义语言,用来定义数据库对象,如数据库、数据表和数据字段,主要是进行定义/改变表的结构、数据类型、表之间的链接等操作。常用的语句关键字有 CREATE、DROP、ALTER 等。 二、数据库操作 2.1、linux环 ......
Shell基础
第一章 Shell基础 1 shell脚本介绍 什么是shell脚本? 什么是shell命令? $ ls $ cd $ pwd # 也就是liniux命令 shell脚本就是一系列shell命令的集合,还可以加入一些逻辑操作(if else for)将这些命令放到一个文件中。 文件 shell命令【 ......
【THM】Linux Fundamentals Part2(Linux基础知识2)-学习
本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/linuxfundamentalspart2 本文相关内容:继续你的 Linux 学习之旅,你将学习如何使用 SSH 登录到 Linux 机器,以及了解更多Linux命令。 简介 欢迎来到“Linux基础 ......
AF,RI,Rep exposure相关知识
在做Lab2的时候,开始试着去写每个类的Abstraction function,Representation invariant,Safety from rep exposure,即抽象函数AF,表示不变量RI和防止表示暴露。但感觉对它们的认知还不是很明确,因此,我将在这详细复习记录下它们都表示什 ......
Java多线程
1.可见性、原子性和有序性问题 多线程有三大特性,分别是可见性、原子性和有序性。 1.1可见性 在单核时代,所有的线程都是在一颗CPU上执行,CPU缓存与内存的数据一致性容易解决。因为所有线程都是操作同一个CPU的缓存,一个线程对缓存的写,对另外一个线程来说一定是可见的。一个线程对共享变量的修改,另 ......
Markdown基础语法与快捷操作
Markdown使用方法 0.介绍 Markdown是一种轻量级标记语言,排版语法简洁。 1.标题语法 创建标题,只需要在其前面添加'#'号即可。#的数量代表其级数,如'###'表示的是创建一个三级标题。 现在,我们让'Markdown使用方法'成为一个一级标题。让0、1序号及其章名设为二级标题。最 ......
2-Java基础语法
使用的技巧
如果我们要对代码进行解释,那么就可以使用注释。
当注释的内容比较少,一行就写完了,可以用单行注释。
如果注释的内容比较多,需要写在多行,那么可以使用多行注释。 ......
Service Mesh之Istio基础入门
服务网格概念源于Buoyant公司的CEO Willian Morgan的文章“What's a service mesh? And do I need one?”;是指专注于处理服务间通信的基础设施,它负责在现代云原生应用组成的复杂拓扑中可靠地传递请求;治理模式除了处理业务逻辑的相关功能外,每个微... ......
PL/SQL 基础---复杂数据类型和自定义类型
原文地址:https://blog.csdn.net/villare/article/details/53437924 PL/SQL 基础—复杂数据类型和自定义类型PLSQL中常用的自定义类型就两种: 记录类型、 PLSQL内存表类型(根据表中的数据字段的简单和复杂程度又可分别实现类似于简单数组和记 ......
git 、 github 相关理论知识
什么是git:是一个免费、开源的版本控制软件 问:什么是版本控制软件 答:是一种记录一个或者若干个文件内容变化,以便将来查阅特定版本修订情况的系统 什么是github:是一个网站,该网站可以创建仓库,存放项目代码 全球最大 社交编程 以及 代码托管 的网站 设置用户名 git config --gl ......