自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Charon博客站

Something For Nothing

  • 博客(13)
  • 收藏
  • 关注

原创 Redis常见面试题(一)

1、为什么使用redis?主要有两个考虑角度:高性能、高并发。(PS:Redis大多数情况下用在缓存上,或者共享Session上面。如果只是为了分布式锁这些其他功能,还有其他中间件 Zookpeer 等代替,并非一定要使用 Redis。)我们在碰到需要执行耗时特别久,且结果不频繁变动的 SQL,就特别适合将运行结果放入缓存。这样,后面的请求就去缓存中读取,使得请求能够迅速响应。例...

2019-03-07 18:59:31 3550

原创 Synchronized 看一篇就够了

原文:《Synchronized 看一篇就够了》使用场景:修饰实例方法,作用于当前实例加锁,进入同步代码前要获得当前实例的锁。 修饰静态方法,作用于当前类加锁,进入同步代码前要获得当前类的锁。修饰代码块,指定加锁对象,对给定对象加锁,进入同步代码库前要获得给定对象。synchronized:解决的是执行控制的问题,它会阻止其它线程获取当前对象的监控锁,这样就使得当前对象中被synchronized关键字保护的代码块无法被其它线程访问,也就无法并发执行。更重要的是,synchronize

2021-12-03 19:56:05 572

原创 Volatile 看一篇就够了

原文:《Volatile 看一篇就够了》著名的缓存一致性问题:计算机的内存模型:CPU在摩尔定律的指导下以每18个月翻一番的速度在发展,然而内存和硬盘的发展速度远远不及CPU。这就造成了高性能能的内存和硬盘价格及其昂贵。然而CPU的高度运算需要高速的数据。为了解决这个问题,CPU厂商在CPU中内置了少量的高速缓存以解决I\O速度和CPU运算速度之间的不匹配问题。为了解决这个问题CPU厂商采用了缓存的解决方案,直到目前我们正在使用的多级的缓存结构。上图中的CPU Cache就是下图中的..

2021-12-03 19:48:49 142

原创 BitMap:一个文件中有20亿个数字,对这20亿个数字进行去重并按照从小到大排序。

BitMap简介BitMap是一种基于位的映射算法,它的基本思想就是用一个bit位,来记录某个元素的状态,而bit位所在的下标,通过该元素可以计算得到。举个例子假设有这样一个需求:一个文件中有20亿个随机正整数,对这20亿个数字进行去重并按照从小到大排序。20亿个数字大于0并小于2147483647,计算机的内存1G。在Java中,int占4字节,1字节=8位(1 byte = 8 bit)。如果每个数字用int存储,那就是20亿个int,因而占用的空间约为 (2000000000*

2021-12-03 19:31:35 2199

原创 Eureka注册服时报错:Root name (‘timestamp‘) does not match expected (‘applications‘) for type `org.springfr

搭环境时搭建Eureka的集群版,EurekaServer启动都正常,服务注册时报错:Root name ('timestamp') does not match expected ('applications') for type `org.springframework.cloud.netflix.eureka.http.EurekaApplications`2021-11-25 22:23:35.013 INFO 2248 --- [ restartedMain] c.n.d.s.t..

2021-11-25 22:44:58 4599 7

原创 Java-AES加密

//相关引用类import javax.crypto.Cipher;import javax.crypto.spec.SecretKeySpec;import java.net.URLEncoder;import java.nio.charset.StandardCharsets;import java.util.Base64;import java.util.Map;//data为要加密的数据,secret为加密的密码(解密时也需要用到该密码)。public static...

2020-12-09 19:06:44 243

原创 GoogleChrome浏览器关闭后无法退出当前已登录网页,无法删除session。

问题描述:服务器后端设置Session生命周期为关闭浏览器时删除,谷歌浏览器在设置后无法删除session cookie,导致当前登录的网页依旧处在登录态。问题原因:当谷歌浏览器的处在“继续浏览上次打开的网页”时,此时即使关掉谷歌浏览器,Cookie依然会维持,原因在于设计时就是为了保证浏览器崩溃时帮助保持工作流程。解决方式:当然也就是不使用“继续浏览上次打开的网页”选型相关问题:https://bugs.chromium.org/p/chromium/issues/detail?id=1285

2020-11-23 19:24:44 1238

原创 Redis轻入门教程

Redis:介绍:redis是一种非关系型数据库,支持Key-Value等多种常用格式存储,适用于高并发高读取类型应用(如:做会话缓存 ps:这个是redis用的最多的场景,做高速队列 ps:支付等,红包削锋等等),该应用使用C语言编写(小知识:C语言直接与硬件接轨,因为运行效率极高,仅次于汇编语言,而Java等其他类型语言大多数都无法与硬件直接交互,且java与系统底层还有着一层虚拟机...

2019-03-07 11:37:34 188

原创 SpringBoot启动报错:HikariPool-1 - Exception during pool initialization.

2018-09-25 16:16:16.264 INFO 15528 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...Tue Sep 25 16:16:16 CST 2018 WARN: Establishing SSL connection without serve...

2018-09-25 16:42:04 77253 8

原创 Java--System.getProperty使用方式

   在标准SDK中提供了java.lang.System类,这个类定义了一个对系统设备(包括系统属性和系统输入输出数据流)的、与平台无关的接口。如果我们想获取JVM的系统属性,就需要用到该类的getProperty()方法。该方法可以获取系统(JVM)的配置信息。但是我们怎么知道JVM有哪些属性呢?查阅JAVA官方API。(中文版API地址:System.getPropertys()所获...

2018-08-24 11:36:18 2160

原创 Java中集合类中List、Map、Set的区别

区别:List:1.可以允许重复的对象。    2.可以插入多个null元素。       3.是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序。       4.常用的实现类有 ArrayList、LinkedList 和 Vector。ArrayList 最为流行,它提供了使用索引的随意访问,而 LinkedList 则对于经常需要从 List 中

2017-10-15 19:59:54 440

原创 Java中sleep()和wait()的区别

区别:1、这两个方法来自不同的类分别是Thread和Object2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用(使用范围)4、sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常

2017-10-15 19:56:31 261

原创 关于java的重载(overload)和重写(override)的区别

Overload是重载的意思(发生在同一个类中)。Override是覆盖的意思,也就是重写(发生在父类与子类)。 Overload(重载)发生在同一个类中,方法参数必定不同。因为发生在同一个类中,所以JVM想要分辨你想要调用的是哪个方法就必须限定你的这些方法是有区别的,该限定的方式就是方法的参数必定不同,参数不同指的是参数的个数或者类型不同或者顺序不相同。  注意:如果几个重载

2017-10-15 19:44:41 640

空空如也

空空如也

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

TA关注的人

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