学习笔记
文章平均质量分 57
周虽旧邦其命维新
剑气纵横三万里 一剑光寒十九洲
展开
-
echarts学习笔记(vue项目中使用)
echarts使用笔记,vue项目中使用echarts,echarts在vue项目中封装成组件模板使用原创 2021-12-27 15:40:26 · 401 阅读 · 0 评论 -
IaaS,PaaS,SaaS 的区别
越来越多的软件,开始采用云服务。云服务只是一个统称,可以分成三大类。IaaS:基础设施服务,Infrastructure-as-a-servicePaaS:平台服务,Platform-as-a-serviceSaaS:软件服务,Software-as-a-service它们有什么区别呢?SaaS 是软件的开发、管理、部署都交给第三方,不需要关心技术问题,可以拿来即用。普通用户接触到的互联网服务,几乎都是 SaaS,下面是一些例子。客户管理服务 Salesforce团队协同服务 Goog转载 2021-10-28 09:34:58 · 169 阅读 · 0 评论 -
java NIO学习笔记上(尚硅谷)
1、java NIO概述Java NIO(New IO 或 Non Blocking IO)是从 Java 1.4 版本开始引入的一个新的IO API,可以替代标准的 Java IO API。NIO 支持面向缓冲区的、基于通道的 IO 操作。NIO 将以更加高效的方式进行文件的读写操作。1.1阻塞IO通常在进行同步 I/O 操作时,如果读取数据,代码会阻塞直至有可供读取的数据。同样,写入调用将会阻塞直至数据能够写入。传统的 Server/Client 模式会基于 TPR(Thread per原创 2021-10-14 16:50:48 · 298 阅读 · 0 评论 -
juc并发编程学习笔记下(尚硅谷)
5 多线程锁5.1锁的八个问题演示class Phone { public static synchronized void sendSMS() throws Exception { //停留4秒 TimeUnit.SECONDS.sleep(4); System.out.println("------sendSMS"); } public synchronized void sendEmail() throw原创 2021-10-13 18:15:58 · 488 阅读 · 0 评论 -
juc并发编程学习笔记上(尚硅谷)
1、什么是JUC1.1JUC简介JUC就是java.util .concurrent工具包的简称。这是一个处理线程的工具包,JDK 1.5开始出现的。1.2进程与线程进程(Process) 是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。 在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的原创 2021-09-13 15:22:49 · 358 阅读 · 0 评论 -
mysql学习笔记
一、mysql体系结构从上到下,连接层,服务层,引擎层,存储层不同存储引擎对比二、索引优化分析mysql索引分类单值索引:即一个索引只包含单个列,一个表可以有多个单列索引唯一索引:索引列的值必须唯一,但允许有空值复合索引:即一个索引包含多个列哪些情况需要创建索引主键自动建立唯一索引频繁作为查询条件的字段应该创建索引查询中与其它表关联的字段,外键关系建立索引where条件里用不到的字段不创建索引单键/组合索引的选择问题,who?(在高并发下倾向创建组合索引)查询中排序的原创 2021-09-05 20:39:59 · 294 阅读 · 0 评论 -
k8s集群部署mysql笔记
一、简化yaml文件apiVersion: v1kind: Podmetadata: labels: app: mysql name: mysql-10.1-67b46fcb75-qctkm namespace: xxx-devspec: containers: - env: - name: MYSQL_ROOT_PASSWORD value: mypassword - name: MY_DEPLOY_NAME value: mys原创 2021-05-13 17:44:07 · 381 阅读 · 0 评论 -
java实现链表集合并使用链表实现队列
1、自定义链表集合package com.study.datastructure.linked;/** * @author lyz * @Title: SingleLinked * @Description: * @date 2021/3/4 9:36 */public class SingleLinked<E> { private int max; private int count = 0; private Node<E> head;原创 2021-05-10 12:39:55 · 139 阅读 · 0 评论 -
redis学习笔记
常用数据类型string,list,set,hash,zset(sorted set)string底层数据结构是动态字符串,capacity为字符串所占的内存空间,如果字符串长度小于1M时,每次扩容都是加倍现有空间,即扩容后空间为现在的2倍,如果超过1M,每次扩容1M,最大长度为512M,冗余空间避免频繁的内存分配list底层数据结构为双向链表,数据量较少时使用ziplist存储,数据量较多时将多个ziplist使用链表的方式连接起来set底层数据结构为哈希表hash底层数据结构为哈希表,原创 2021-05-06 12:40:57 · 124 阅读 · 0 评论 -
java数组两种方法实现循环队列
通过空置一个元素区分队列满和队列空public class ArrayQueueEmptyOneElement<T> { private int size = 0; private int startIndex = 0; private int endIndex = 0; private Object[] array = null; public ArrayQueueEmptyOneElement(int size) { //因为原创 2021-03-02 14:35:00 · 152 阅读 · 0 评论 -
稀疏数组学习小demo
public class ArrayDemo { public static void main(String[] args) { int[][] commonArray = new int[11][10]; commonArray[3][4] = 1; commonArray[4][5] = 2; for (int[] row : commonArray) { for (int value : row) {原创 2021-02-27 21:54:00 · 78 阅读 · 0 评论 -
docker和k8s常用命令
docker ps -a显示所有的容器,包括未运行的。docker ps显示运行的所有容器docker start 容器name:启动上个命令下列出的容器docker run -d --name myredis -p 6379:6379 redis --requirepass "xxx密码":创建容器启动并添加密码docker rm 容器id:删除镜像容器docker logs --tail="400" es查看es日志,或者docker logs -f es,或者docker logs .原创 2020-07-22 10:36:01 · 761 阅读 · 0 评论 -
深入理解java虚拟机学习笔记一(java内存区域与内存溢出异常)
1、java虚拟机运行时数据区域所有线程共享的数据区:Heap、Method Area线程隔离的数据区:VM Stack、Native Method Stack、Program Counter Register1.1在概念模型里,字节码解释器工作时就是通过改变当前线程的程序计数器的值来选取下一条要执行的字节码指令1.2虚拟机栈为虚拟机执行java方法服务,每个方法被执行的同时都会创建一...原创 2020-04-17 10:36:23 · 194 阅读 · 0 评论 -
BeyondCompare3提示许可密钥过期完美解决方法
这是个存在时间很长的问题了,网上转载最多的方法是删除“”C:\Users\[Your User Name]\AppData\Roaming\Scooter Software“文件夹再重新注册。这种方法能解决3281-0350,但之前的历史记录和各种配置全部丢失,对于做代码维护类工作损失巨大,今天介绍一种以最小代价修复3821-0350的方法:用任意文本编辑软件打开“C:\Use...转载 2019-11-05 10:32:27 · 542 阅读 · 0 评论 -
工作中实用maven命令(工作中用到随手记录)
mvn dependency:tree > xxx.txt将当前项目的依赖树打印输出到xxx.txt文件mvn clean package -U(-U强制从远程仓库重新拉一次)mvn clean install -P production -Dmaven.test.skip=true使用-P传参触发不同的profile配置...原创 2019-04-06 22:37:23 · 248 阅读 · 0 评论 -
dos工作中常用命令(工作中用到随手记录)
由于不常使用,忘记了很多dos命令,工作时涉及到脚本内容中有一些不懂的,查询后记录在这里备忘echo:输出echo后面的字符串cp:复制文件tar -xzf:-x(解压),-z(有gzip属性(即tar.gz格式)的压缩文件),-f指定文件名telnet 127.0.0.0 8083测试8083端口是否可用...原创 2019-04-11 10:15:06 · 196 阅读 · 0 评论 -
工作中实用git命令(工作中用到随手记录)
git rm -r --cached ./springModules通过删除缓存commit、push后直接删除远程仓库文件,本地文件不会被删除原创 2019-04-15 13:39:29 · 252 阅读 · 0 评论 -
java工作编码规范(工作中持续更新)
VO:值对象、视图对象,controller返回前端的视图对象,用在controller和service层,dao层不应该出现PO:持久对象,数据库查询返回结果,只存在于数据库和dao层交互,controller和service层不应该出现DTO:数据传输对象,查询参数...原创 2019-05-10 18:10:43 · 195 阅读 · 0 评论 -
Java并发——Synchronized关键字和锁升级,详细分析偏向锁和轻量级锁的升级
这里写自定义目录标题 原 Java并发——Synchronized关键字和锁升级,详细分析偏向锁和轻量级锁的升级 2018年03月22日 17:01:42 tongdanp...转载 2020-04-16 14:57:12 · 195 阅读 · 0 评论 -
Java并发锁相关面试知识整理
java锁有悲观锁和乐观锁,乐观锁通过cas实现,悲观锁有ReentrantLock和synchronized。ReentrantLock特性:时间锁等候、可中断锁等候、无块结构锁、多个条件变量或者锁投票等。synchronized只有一个好处,使用方便简单,不用主动释放锁。ReentrantLock和synchronized都是可重入锁。一、synchronized锁1、锁升级锁的4中...原创 2019-05-30 15:52:37 · 295 阅读 · 0 评论 -
mysql锁知识笔记
mysql锁问题在面试时被问到数次,之前也看过相关博客,但是单纯看过总是很容易遗忘,这里做一个mysql锁面试的知识点整理。一、存储引擎(常见两种MyISAM和InnoDB)MyISAM:只支持表级锁,用户在操作myisam表时,select,update,delete,insert语句都会给表自动加锁,如果加锁以后的表满足insert并发的情况下,可以在表的尾部插入新的数据。Inno...原创 2019-05-29 15:35:09 · 126 阅读 · 0 评论 -
单例模式
一、懒汉式package com.ed.singleton;/** * @author lyz * @Title: Singleton * @Description: 懒汉式,newInstance方法加synchronized避免多线程问题 * @date 2019/5/308:20 */public class Singleton{ private static ...原创 2019-05-30 08:29:08 · 119 阅读 · 0 评论 -
kafka和rabbitmq对比
业界对于消息的传递有多种方案和产品,本文就比较有代表性的两个MQ(rabbitMQ,kafka)进行阐述和做简单的对比,在应用场景方面,RabbitMQ,遵循AMQP协议,由内在高并发的erlanng语言开发,用在实时的对可靠性要求比较高的消息传递上。kafka是Linkedin于2010年12月份开源的消息发布订阅系统,它主要用于处理活跃的流式数据,大数据量的数据处理上。1)在架...转载 2019-06-10 16:38:14 · 799 阅读 · 0 评论 -
mysql实现读写分离
面试时常被问到aop在你们项目中哪些地方用到了,我的回答是事物、日志,再问就回答不上来,最近看了读写分离的视频,发现读写分离也是aop的应用场景之一。spring提供的AbstractRoutingDataSource会在方法afterPropertiesSet中,将数据源从targetDataSources属性中取出来,put进Map<Object, DataSource>re...原创 2019-04-05 10:29:42 · 426 阅读 · 2 评论