自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (1)
  • 收藏
  • 关注

原创 MySQL中Select+Update并发的更新问题

小知识补充首先,我们要知道在mysql中update操作都是线程安全的,mysql引擎会update的行加上***排他锁***,其他对该行的update操作需要等到第一个update操作提交成功或者回滚,才能获取这个***排他锁***,从而对该行进行操作。例子表结构小知识点:表必备三字段:id, create_time, update_time。说明:其中id 必为主键,类型为bigint unsigned、单表时自增、步长为 1。create_time, update_time 的类型均为 da

2020-06-24 16:29:03 2391

原创 MapStruct从入门到出门(二)

在平常的对象映射中,总会有很多类型不完全一致的情况,例如转,转或者两个自定义对象之间的转换等。在中定义了一些类型的自动类型转换或者说是隐形类型转换。例如在上节中提到的基本数据类型和其包装类型之间的转换,和数字类型的转换,和时间类型的转换等。在注解中还可以自定义转换格式。例如数字类型转类型,使用属性。使用属性本质上就是使用来实现转换的。下面是生成的方法代码在注解中也有属性,效果跟上面是一样的。dateFormat属性时间类型字段例如,,等转类型,可以使用指定转换格式。如果是类型和互相转换就是使用类

2022-06-15 10:44:35 505

原创 MapStruct从入门到出门(一)

相信大家,已经在各种地方都听过这个框架了,知道它是一个类似于的拷贝框架,那么下面让我们来看下官方的介绍翻译一下就是:MapStruct是一个基于Java编译期注解处理器来实现,用来高性能、类型安全的生成Java bean的映射器。可以避免我们手动写Getter/Getter等映射代码。在上面的介绍中可以发现一个词,翻译成中文就是,那么什么是Java编译期注解处理器呢?Java编译时期处理器可以简称为,它是的工具,最早出现在的版本中,随后在之后的版本不断新增相关API,开始流行起来。通过可以拿到注解和被注解对

2022-06-15 10:43:18 825

原创 go使用sqlite时报错:找不到gcc命令

(亲测)解决golang使用sqlite时,找不到gcc命令的错误

2022-05-09 15:55:21 1748

原创 Nacos+Spring Loadbalancer实现快速上下线

开发环境框架版本Springcloud2020.0.2Nacos2.2.1.RELEASE实现目标由于loadbalancer等负载均衡的缓存默认是30s,因此如果发生了服务上下线,服务消费端不能够第一时间知道获取,会产生调用远程服务失败等情况。因此我们想要实现当服务上下线时,能够第一时间通知到服务消费端,另其做出一系列操作。主要思路我的思路是利用Nacos的监听服务变换接口,修改loadbalance的缓存列表,来实现实时修改服务缓存列表阅读源码通过查看o

2022-03-08 15:33:09 2176

原创 服务器性能常用名词意义和计算

名词概念QPS(每秒查询率)(Queries Per Second),及每秒执行的查询总数。例如访问网站首页,不仅会返回首页的Html文件,还会放回内置的js、css、jpeg、png等文件。这些都算一个单独的查询次数。若一秒内返回了N个文件,则说该服务端的QPS为N。QPS反映系统的吞吐能力,更偏向于读取文件,查询数据。TPS(吞吐量)(Transactions Per Second),及每秒执行的事务总数。一个事务指的是***一个客户端向服务端发送请求,服务端进行反应的过程***。客户端

2020-11-01 15:41:47 185

原创 Zookeeper学习笔记(一)

zookeeper是什么?引用百科的一段话:ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务。zookeeper有什么用?分布式应用程序可以基于ZooKeeper实现数据发布与订阅、负载均衡、命名服务、分布式协调与通知、集群管理、Leader选举、分布式锁、分布式队列等功能。命名服务Zookeeper的命名服务功能主要是根据指定名字来获取资源或服务的地址,提供者等信息,依靠它的znode的特点和watcher机制,将其作为动态注册和获取服务信息的注册中心,统一管理服务名

2020-09-22 20:53:16 191

原创 java基础-包装类缓存池

拆箱和装箱自动装箱和拆箱从Java 1.5开始引入,目的是将原始类型值转自动地转换成对应的对象。自动装箱与拆箱的机制可以让我们在Java的变量赋值或者是方法调用等情况下使用原始类型或者对象类型更加简单直接。在一般情况下,java会帮助我们进行自动装箱和拆箱,例如下面得例子Integer integerValue = 100; //Integer integerValue = Integer.valueOf(100)int intValue = integerValue; //int intVa

2020-08-28 21:47:55 358

原创 关于实现视频预览缩略图功能

实现所需环境工具功能官方地址FFmpeg对视频音频处理的”瑞士军刀“http://ffmpeg.orgImageMagick在这里负责合并图片https://imagemagick.org/index.php需求分析实现哔哩哔哩视频缩略图的效果[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传猜想随着鼠标移动,请求对应封面图一次请求完毕,获得一张大图设置为背景,随着鼠标移动调整元素的background-position观察现

2020-08-27 11:57:52 3087

原创 docker学习笔记(二)

Docker常用命令今天我们继续来学Docker的命令/(ㄒoㄒ)/~~docker inspect语法:docker inspect ContainerId/NAME作用:获取容器/镜像的元数据例子: docker inspect elasticsearch:7.7.1 [ { "Id": "sha25

2020-07-02 14:40:28 164

原创 docker学习笔记

什么是DockerDocker 是一个开源的应用容器引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在本地编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。使用Docker好处简化配置虚拟机的最大好处是能在你的硬件设施上运行各种配置不一样的平台(软件, 系统), Docker在降低额外开销的情况下提供了同样的功能. 它能让你将运行环境和配置放在代码汇总然后部署, 同一个Docker的

2020-07-02 14:39:19 184

原创 fail-fast和fail-safe

fail-fast首先啥是fail-fast?下面引用别人的解释:在系统设计中,快速失效系统一种可以立即报告任何可能表明故障的情况的系统。快速失效系统通常设计用于停止正常操作,而不是试图继续可能存在缺陷的过程。这种设计通常会在操作中的多个点检查系统的状态,因此可以及早检测到任何故障。快速失败模块的职责是检测错误,然后让系统的下一个最高级别处理错误。他的意思就是写程序***先考虑异常情况***,如果遇到就直接抛出处理。public int divide(int divisor,int divide

2020-06-14 16:17:38 244

原创 java常用锁

java常用锁类型常见的锁大致可以分为:乐观锁,悲观锁,排他锁,共享锁,分段锁,自选锁,公平锁,非公平锁等。。今天来学基于CAS非加锁实现的乐观锁ReentrantLock锁ReentrantLock类是一种可重入,公平/非公平,独占锁,它于synchronized具有相同的功能和语义,但是它更强大,它支持中断,超时等操作。Sync是ReentrantLock的内部类,他的两个子类分别代表公平锁和非公平锁,ReentrantLock可以在构造方法选择是否公平。 public void

2020-06-13 14:04:33 290

原创 synchronized和volatile关键字

java内存模型java内存模型规定,将所有的变量都放在主内存,当线程使用变量时,会把该变量复制到线程的工作内存,因此线程读写变量操作的是自己工作内存中的变量。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MQ8nra7b-1592028132911)(/images/pasted-7.png)]下图是一个双核cpu的系统架构,每个核都有自己的控制器、运算器、一级缓存,其中控制器包含一组寄存器和操作控制器,运算器负责进行算术逻辑运算。在这个架构中cpu还共享一个二

2020-06-13 14:02:38 1714

原创 原子变量操作类

JUC简介在 Java 5.0 提供了 java.util.concurrent (简称JUC )包,在此包中增加了在并发编程中很常用的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步 IO 和轻量级任务框架。提供可调的、灵活的线程池。还提供了设计用于多线程上下文中的 Collection 实现等。在JUC并发包中包含有AtomicInteger,AtomicLong,AtomicBoolean等基于CAS操作的原子操作类。他们原理相似,下面讲解AtomicLong类。它可以原子性递

2020-06-13 14:01:20 456

原创 ArrayList源码分析

ArrayList简介ArrayList数据结构是基于数组,与java原本数组不一样的是它能够动态增长,继承于AbstractList,实现了List,Serializable,RandomAccess,Cloneable等接口。ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。ArrayList实现了Cloneable接口,表示覆盖了clone()方法,能被克隆。ArrayList实现了Serializab

2020-06-09 21:50:25 217

转载 springmvc converter介绍

Converter是一对一转换器package org.springframework.core.convert.converter;//转换器接口@param <S>原类型@param<T>目标类型public interface Converter<S,T>{ T convert(S source);}spring mvc中有很多转换器 能...

2019-03-18 20:59:33 730

原创 关于注解的学习

1.注解的认识注解的本质是一个继承了Annotation的特殊接口,具体类是在java运行时通过动态生成的代理类,当我们通过反射方法反射回来的是一个Proxy$1的代理对象,通过代理对象调用自定义注解(接口)的方法,会最终调用AnnotationInvocationHandler的invoke方法。该方法会从memberValues这个Map中索引出对应的值。而memberValues的来源是J...

2019-03-14 20:56:02 181

elasticsearch-analysis-ik-7.3.1.jar

Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和许多其他语言中都是可用的。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。 中文分词器

2020-06-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除