自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Coding Earth Engine

我有故事,你有酒,用你的酒浸泡我的每一个故事

  • 博客(140)
  • 资源 (8)
  • 收藏
  • 关注

原创 隔一段时间撸一次,特别香,HashMap中remove、getOrDefault源码,一遍一遍、又一遍

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。HashMap系列文章第一篇 HashMap源码中的成员变量你还不懂? 来来来!!!整理好的成员变量源码解析第二篇 撸啊撸,再次撸HashMap源码,踩坑源码中构造方法!!!每次都有收获第三篇 MoxiMoxi !!!你看过HashMap中的put方法的源码吗?第四篇 HashMap源码中的resize扩容方法除了扩容还有一个用途你真的知道吗?第五篇 留一半清醒、留一半醉!!!HashMap中

2020-07-13 18:09:12 13721

原创 项目中用的双重检查锁定是怎么回事

文章目录前言一、定义的Foo类二、 instance = new Foo()创建对象的步骤三、非线程安全的延迟初始化对象3.1、可能发生两种情况四、使用synchronized保证线程安全的延迟初始化对象五、为啥要引入双重检查锁定六、线程不安全的双重检查锁定实现延迟初始化对象七、基于volatile的解决方案八、基于类初始化的解决方案8.1、提前初始化8.1.1、提前初始化的代码实现8.1.2、验证类初始化时静态实例被初始化8.2、基于提前初始化改造的类的延迟初始化九、两种解决方案的对比前言开心一笑

2021-06-15 18:09:13 649

原创 公司发的小师妹问我java中的线程池,这么讲可还行?

合理使用线程池带来的三个好处线程池的实现原理线程池的使用关闭线程池合理的配置线程池

2021-06-13 16:32:28 4563 22

原创 记录一次使用virtualbox和vagrant在centos环境下安装docker以及解决tomcat镜像404的问题

进入到Vagrantfile文件的目录下cd centos7启动vagrantvagrant up查看vagrant的状态vagrant status进入centos7vagrant ssh切换到root权限下sudo -i卸载之前的docker sudo yum remove docker \ docker-client \ docker-client-latest \

2021-06-06 11:48:32 1735 11

原创 记录一次微信小程序getUserProfile的踩坑经历

一、新注册的微信用户怎么昵称都变成了微信用户了?最近我们公司的运营小姐姐反馈说小程序新注册的用户的昵称都是微信用户,而且头像也都是一张灰色的头像。以前能拿到的省市区也都没了。并且质问我们是不是我们开发人员在憋什么大招,搞出了一个BUG。之前前端一直使用的wx.getUserInfo方法获取到的encryptedData传给服务端是一直可以解析到用户信息的,最近发现新注册的用户都变成了微信用户,灰色头像。查看微信官方文档发现原来微信对getUserInfo接口做了调整,以及新增了一个getUs

2021-05-14 07:50:33 2455 3

原创 CSDN上大伙都在用的自定义设置

找到管理博客点击进入侧边栏找到博客名片进入设置博主名片的详细信息查看文章底部设置的博主名片

2021-04-11 12:13:41 545

原创 干了一下午的redis cluster集群的搭建

第一台机器【172.16.198.138】创建4个目录[root@emooco ~]# mkdir -p /etc/redis-cluster[root@emooco ~]# mkdir -p /var/log/redis[root@emooco ~]# mkdir -p /var/redis/7001[root@emooco ~]# mkdir -p /var/redis/7002/etc/redis-cluster:存放配置文件的redis.conf/var/log/redis:存放日志

2021-04-04 21:29:25 283

原创 记录一次部署一个三节点的哨兵集群踩坑经历

1、redis-mster节点【IP 172.16.198.135】1.1、建俩文件目录mkdir /etc/sentinelmkdir -p /var/sentinel/50001.2、在 /etc/sentinel下创建sentinel.conf文件vi sentinel.conf1.3、sentinel.conf内容port 5000dir /var/sentinel/5000sentinel monitor mymaster 172.16.198.135 6379 2sent

2021-04-02 15:20:10 257 2

原创 怎么配置一个读写分离的redis-replication主从架构?

1、主节点修改配置文件1.1、设置口令认证1.2、绑定主节点的ip2、从节点修改配置文件2.1、从节点配置主节点的IP和端口号2.2、从节点配置成只读,这个配置不用改默认就是只读2.3、主节点开启了认证口令,从节点要配置主节点的口令2.4、从节点绑定自己的IP3、主节点进入命令行命令[root@emooco init.d]# redis-cli -h 172.16.198.135图解4、主节点添加数据命令172.16.198.135:6379> set k4

2021-03-31 21:30:12 173

原创 如何在linux虚拟机上进行redis的RDB和AOF快照的定期备份

1、RDB快照配置1.1、在redis.conf配置文件中配置rdb快照图解上图红色圈住的就是rdb快照生成的相关注释。save 60 10 意思就是每60秒生成一份快照,但是前提条件是这60秒要至少有10个key发生变化。rdb快照的相关配置rdb快照默认是开启的,这个配置要根据公司的实际情况进行调整,比如我是用来测试生成快照的,那我就调整为 save 60 102、AOF快照配置2.1、在redis.conf配置文件中配置aof快照图解如上图所示,aof快照默认是关闭的。设置ap

2021-03-31 16:07:09 382 1

原创 一个解决linux系统下没有chkconfig命令导致的command not found: chkconfig问题

抛出问题➜ ~ sudo chkconfig --listzsh: command not found: chkconfig解决办法第一步sudo apt-get update第二步sudo apt-get install sysv-rc-conf执行第二步出现问题Unable to locate package sysv-rc-conf解决办法第一步:打开sources.list文件do vi /etc/apt/sources.list第二步:在sources.list

2021-03-29 13:24:51 7536 8

原创 最近,我在生产环境配置redis跟随系统自动启动以及redis环境变量,我就是这么搞得,你看如何?

1、Redis开机自启1.1、查看redis的安装目录➜ ~ cd /usr/local/redis-6.2.1图解1.2、开机自启动的脚本位置开机自启动的脚本其实就在我们安装的redis的解压包里面,就在utils包里面,redis_init_script这个文件就是自启动的脚本文件,我们不用去百度找这个脚本,用这个官方的就可以。图解utils包位置图解redis_init_script文件位置图解查看脚本并解释1.3、将redis_init_script脚本拷贝到/etc/

2021-03-29 13:15:38 355 2

原创 Linux环境下如何修改文件的所有者和组

1、修改文件的所有者1.1、图解1.2、命令格式:sudo chown root【文件】➜ local sudo chown root redis-6.2.1.tar.gz1.3、图解2、修改文件的组2.1、图解2.2、命令格式: sudo chgrp root【文件】➜ local sudo chgrp root redis-6.2.1.tar.gz2.3、图解3、一键修改文件所有者和组3.1、图解3.2、命令格式 : sudo chown root:roo

2021-03-26 10:58:21 237

原创 阿里云Code 仓库如何设置公钥详解版本

1、阿里云代码仓库管理平台网站https://code.aliyun.com/2、点击设置进入个人设置页面3、获取个人的公钥3.1、进入ssh目录cd ~/.ssh3.2、查看公钥cat id_rsa.pub3.3、整个复制公钥从 ssh-rsa 开始复制完整的4、将复制公钥配置到阿里云代码仓库...

2021-01-07 11:34:16 1164

原创 枚举的简单用法根据值查找名称

package com.fansunion.cloud.luckids.enums;import lombok.AllArgsConstructor;import org.apache.commons.lang3.StringUtils;import java.util.HashMap;import java.util.Map;/** * 关卡难度级别 */@AllArgsConstructorpublic enum GameDifficulty { /** * 4

2021-01-03 20:38:50 745

原创 我有两把枪,一把叫射,另一把叫啊!!手机可以玩英雄联盟手游了,重新拾起大学时代的记忆

1、拳头账号1.1、注册URLhttps://signup.oce.leagueoflegends.com/en/signup/index#/1.2、图解1、如上图,要注册账号一共需要3步,但是目前就离我们比较近的日服才有体验资格。就连香港目前也没体验资格。2、如果要想注册其他服务区的,比如日服、韩服、美服,就需科学上网,让自己的网络切换到相应的节点,然后在该节点下注册,就可以注册成该节点所在的国家的账号。这个就是很多人注册账号能注册成功,但是登陆的时候就是不可以玩,提示region不匹配。

2020-11-07 14:46:38 457 1

原创 Mac环境下安装MAT分析内存快照的踩坑过程

1、下载压缩文件并解压出mat.app1.1、官方下载链接https://www.eclipse.org/mat/downloads.php2、将解压的mat.app移动到/ApplicationsMacBook-Pro  ~/Applications $ mv /Users/fenke/Downloads/mat.app .3、直接运行报错并解决3.1、错误提示如果直接点击mat应用,会启动失败,并弹窗提示我们去查看日志文件.eclipse/1005214708_macosx_coco

2020-10-21 19:44:45 1024 1

原创 “遇见”国庆在家搞最新版kibana安装教程

安装文件kibana-7.8.1-linux-x86_64.tar.gz安装包链接:https://pan.baidu.com/s/1Ncd2Z5FVZ815-5JVpaM2nQ 密码:9ns5将我们下载好的kibana上传解压到/usr/local/下命令[root@emooco ~]# tar -zxvf kibana-7.8.1-linux-x86_64.tar.gz -C /usr/local/在config目录下修改配置文件命令[root@emooco kibana-7.8.

2020-10-09 15:37:16 251

原创 Big Old都是这么看JVM的Young GC日志的吗?

1、示例程序代码package com.jvm.jvmdemo.gs;/** * @author :mq * @date :2020-10-09 10:15 */public class JvmGcTest { public static void main(String[] args) { byte[] arr1 = new byte[1024 * 1024]; arr1 = new byte[1024 * 1024]; arr1 =

2020-10-09 15:34:04 220

原创 Minor GC、Young GC、Full GC、Old GC、Major GC、Mixed GC傻傻分不清

1、Minor GC和Young GCMinor GC 和 Young GC,“新生代”也可以称之为“年轻代”, 这两个名词是等价的。那么在年轻代中的Eden内存区域被占满之后,实际上就需要触发年轻代的gc,或者是新生代的 gc。此时这个新生代gc,其实就是所谓的“Minor GC”,也可以称之为“Young GC”,这两个名词,就专门针对新生代的gc。2、Old GC老年代gc,称之为“Old GC”。3、Full GC对于Full GC指的是针对新生代、老年代、永久代的全体内存

2020-09-29 18:22:15 4662

原创 一个list分割成若干个指定长度list的方法

1、测试数据@Testpublic void test_split(){ List<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); list.add(6); list.add(7); list.add(8);}2、方法一使用google guava包下的

2020-09-09 20:06:06 3415

原创 ElasticSearch使用别名进行索引数据迁移

ElasticSearch 版本为 7.8.1。Kibana 版本为 7.8.1。这些命令都是在Kibana下的控制台进行测试的。关于ElasticSearch集群的搭建和Kibana的使用可以看我的其他文章。1、动态创建索引my_68_idx并添加数据PUT /my_68_idx/_doc/1{ "title":"2020-09-01"}添加日期字符串2、再次添加一条数据PUT /my_68_idx/_doc/1{ "title":"this is a string.

2020-09-01 20:52:25 938

原创 如何优雅的从一个逗号分隔的字符串中获取第一个元素

1、转成数组直接获取0位置的元素// it.getBannerPics() 获取到的是一个英文都好分割的字符串String[] strArr = it.getBannerPics().split(","); bo.setItemsPic(strArr[0]);2、使用增强for循环,获取到第一个元素然后直接跳出循环String[] strArr = it.getBannerPics().split(",");for(String p : strArr){ bo.setItemsPic(p);

2020-09-01 14:11:43 2687 1

原创 官方给的方法没啥乱用,加个参数解决unless the include_type_name parameter is set to true问题

1、测试的三条商品信息#新增第一个商品PUT /ecommerce/product/1{ "name":"高露洁牙膏", "desc":"高效、美白、好用", "price":33.5, "producer":"高露洁生产厂家", "short":"gljyg", "tags":["防止蛀牙","美白"]}#新增第二个商品PUT /ecommerce/product/2{ "name":"佳洁士牙膏", "desc":"高效、好用", "price":25,

2020-08-18 20:46:15 1877

原创 查询不同年龄的平均分数和将学生分为三个年龄段并求平均分

1、表结构CREATE TABLE `stu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(10) COLLATE utf8mb4_0900_as_ci DEFAULT NULL, `score` int(11) DEFAULT NULL, `age` int(11) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHA

2020-08-10 19:08:40 1230

原创 这真是是个天坑呀!!!启动zookeeper集群报org.apache.zookeeper.server.quorum.QuorumPeerMain异常

发生错误的图解错误的原因根据上图的异常提示,Caused by: java.lang.NumberFormatException: For input string: "zk_3",【数字转换异常】可以知道我们定义的myid为zk_3,实际上需要的是数字类型的数据。解决办法命令[root@emooco data]# vi myid[root@emooco data]# cat myid3图解...

2020-08-10 10:31:02 896

原创 最新版的elasticsearch7.8.1集群的搭建,一路踩坑,一路爬

安装包elasticsearch-7.8.1elasticsearch-analysis-ik解压到指定文件夹遇到了 tar: /usr/local:归档中找不到 的问题错误命令[root@emooco ~]# tar -zxvf elasticsearch-7.8.1-linux-x86_64.tar.gz /usr/local/错误图解正确命令[root@emooco ~]# tar -zxvf elasticsearch-7.8.1-linux-x86_64.tar.gz -C /

2020-08-04 13:38:29 1700 1

原创 Linux系统使用scp命令在两台主机间进行文件传输

1、文件所在的主机命令[root@emooco ~]# ll图解2、文件要被传到的主机命令[root@emooco ~]# ll图解3、两台主机间传输文件命令命令[root@emooco ~]# scp elasticsearch-7.8.1-linux-x86_64.tar.gz [email protected]:/root/这里的传输的目的地是根目录。图解4、查看接受文件的主机是否接受成功命令[root@emooco ~]# ll图解...

2020-08-03 19:54:25 552

原创 elasticsearch最新版详细安装教程【新手入门篇】

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。官网官方网站:官方安装步骤中文版API网站:中文版API下载并安装公共签名密钥:命令[root@emooco ~]# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch图解从RPM存储库安装安装脚本命令[root@emooco ~]# vim /etc/yum.repos.d/elasticsearch.r

2020-07-31 18:00:12 567

原创 ruby版本升级的问题!!!Error installing redis-4.2.1.gem: redis requires Ruby version >= 2.3.0

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。下载redis-4.2.1.gem网址网址下载redis-4.2.1.gem官网图解安装redis-4.2.1.gem出现Ruby版本问题[root@emooco redis-cluster]# gem install redis-4.2.1.gemERROR: Error installing redis-4.2.1.gem: redis requires Ruby version

2020-07-29 18:18:14 618

原创 小白都能看的懂……redis最新版本redis6.0.6集群搭建!!!详细入门案例

下载最新redis压缩包链接最新redis压缩包的下载地址【https://redis.io/download】图解创建redis文件夹命令[root@emooco local]# mkdir redis图解复制redis压缩包到/usr/local下命令[root@emooco ~]# cp redis-6.0.6.tar.gz /usr/local/[root@emooco ~]# cd /usr/local/ && ll图解解压最新版的redis-6

2020-07-29 17:39:32 1766

原创 centos7环境下安装redis最新版本redis6.0.6的详细入门案例

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。1、环境配置1.1、Redis是c开发的,因此安装redis需要c语言的编译环境,即需要安装gcc。1.1.1、查看当前系统的gcc命令[root@emooco redis-6.0.6]# gcc -v1.1.2、查看结果如下[root@emooco redis-6.0.6]# gcc -v使用内建 specs。COLLECT_GCC=gccCOLLECT_LTO_WRAPPER=/u

2020-07-28 16:29:21 2081 3

原创 啥,编译redis6.0.6的时候爆了……struct redisServer错误

错误提示server.c:4259:19: 错误:‘struct redisServer具体提示server.c:4260:19: 错误:‘struct redisServer’没有名为‘rdb_child_pid’的成员 server.rdb_child_pid != -1, ^server.c:4261:29: 错误:‘struct redisServer’没有名为‘lastsave’的成员 (intm

2020-07-28 11:22:06 3110 3

原创 redis也可以根据经纬度查询附近的元素以及计算两个经纬度的距离???

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。使用场景业界比较通用的地理位置距离排序算法是 GeoHash 算法,Redis 也使用 GeoHash 算法。比如,我们的外卖员送快递的时候需要定位要配送的地点的距离。比如我们找工作的时候,需要查一下面试的公司的位置,以及距离有多远。以及我们在查询附近的共享单车????‍♀️最近的有几公里。内容概括方法概述Long add(K key, Point point, M membe

2020-07-20 14:10:32 2834

原创 二叉树!!!数据结构与算法,大学期间没学会,现在终于搞明白了

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。树定义树(Tree) 是n(n>=0)个结点的有限集。n=0时称为空树。在任意一颗非空树中:有且仅有一个特定的称为根(Root)的结点;当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1、T2、…、Tn,其中每一个集合本身又是一棵树,并且称为根的子树。此外,树的定义还需要强调以下两点:n>0时根结点是唯一的,不可能存在多个根结点,数据结构中的树只能有一

2020-07-15 16:51:37 378

原创 面试官:讲一下HashMap中的get方法,最好可以详细的讲一下getTreeNode方法的具体实现

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。HashMap系列文章第一篇 HashMap源码中的成员变量你还不懂? 来来来!!!整理好的成员变量源码解析第二篇 撸啊撸,再次撸HashMap源码,踩坑源码中构造方法!!!每次都有收获第三篇 MoxiMoxi !!!你看过HashMap中的put方法的源码吗?第四篇 HashMap源码中的resize扩容方法除了扩容还有一个用途你真的知道吗?第五篇 留一半清醒、留一半醉!!!HashMap中

2020-07-14 19:58:42 687 2

原创 HashMap中哈希碰撞大于8真的会将链表转为红黑树吗?

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。HashMap系列文章第一篇 HashMap源码中的成员变量你还不懂? 来来来!!!整理好的成员变量源码解析第二篇 撸啊撸,再次撸HashMap源码,踩坑源码中构造方法!!!每次都有收获第三篇 MoxiMoxi !!!你看过HashMap中的put方法的源码吗?第四篇 HashMap源码中的resize扩容方法除了扩容还有一个用途你真的知道吗?第五篇 留一半清醒、留一半醉!!!HashMap中

2020-07-13 12:08:42 1008

原创 记录9个hashCode相同的字符串,用于测试集合的哈希碰撞

记录9个hashCode相同的字符串案例演示@Testpublic void test_hash_map_hash() { ArrayList<String> list = new ArrayList<>(); list.add("3Qj"); list.add("2pj"); list.add("2qK"); list.add("2r,"); list.add("3RK"); list.add("3S,"); list.add("42j"); list.ad

2020-07-10 12:20:52 1424

原创 撸啊撸,再次撸HashMap源码,踩坑源码中构造方法!!!每次都有收获

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。HashMap系列文章第一篇 HashMap源码中的成员变量你还不懂? 来来来!!!整理好的成员变量源码解析第二篇 撸啊撸,再次撸HashMap源码,踩坑源码中构造方法!!!每次都有收获构造方法构造一个空的 HashMap ,默认初始容量(16)和默认负载因⼦(0.75)源码解析// 构造一个无参数的构造方法public HashMap() { // 将默认的加载因子0.75赋值给lo

2020-07-09 22:52:21 91236

原创 HashMap源码中的resize扩容方法除了扩容还有一个用途你真的知道吗?

前言点赞在看,养成习惯。点赞收藏,人生辉煌。点击关注【微信搜索公众号:编程背锅侠】,防止迷路。HashMap系列文章第一篇 HashMap源码中的成员变量你还不懂? 来来来!!!整理好的成员变量源码解析第二篇 撸啊撸,再次撸HashMap源码,踩坑源码中构造方法!!!每次都有收获第三篇 MoxiMoxi !!!你看过HashMap中的put方法的源码吗?.mdfinal HashMap.Node<K,V>[] resize()扩容源码源码解析final Node<K

2020-07-09 19:19:06 461

最新版本的redis-4.2.1.gem

在搭建redis集群的时候,我们需要下载redis-4.2.1版本的gem文件,这里提供官网最新版本的下载文件。

2020-07-29

spring5.x最新源码.zip

Spring5.2.3最新jar,刚刚下载的最新jar包,亲测可用。对Springjar包有需要的可以下载。

2020-03-23

spring-framework5.2.2.zip

spring5.2.2官方最新版源码,官方最新版源码, 官方最新版源码 spring5.2.2官方最新版源码,官方最新版源码, 官方最新版源码 spring5.2.2官方最新版源码,官方最新版源码, 官方最新版源码

2020-01-07

2019最新版省市县乡村五级联动MySQL文件json文件.zip

省市县乡村五级联动MySQL文件,省市县乡村五级联动MySQL文件,最新版

2019-10-29

docker for mac 最新安装包.txt

最新版的docker for mac 下载,可以更加快速的下载docker

2019-08-26

Netty最新jar包

Netty最新jar包,里面有源码,需要的朋友可以下载。。。

2018-07-20

spring最全约束文件

spring的最全约束文件,适用于本地导入约束文件,需要的可以下载

2018-07-20

Spring4.x最新jar包

Spring4.x2018年最新jar包,包含源码在里面。需要的可以下载

2018-07-20

空空如也

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

TA关注的人

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