自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 资源 (5)
  • 收藏
  • 关注

原创 开源的数据库版本管理工具

在真实的项目开发中,我们每个人都会有一个应用软件和与其相联系的数据库。对于个人开发来说,这样就够了。但是,项目开发一般都不止一个人,因此一定会出现我在我的本地有一套软件和相应的数据库系统,我的另一个同事会在他的本地有一套他自己的软件和相应的数据库系统。我们需要面临的第一个问题就是我们两个人如何集成我们的数据库系统,之后还要处理如何将数据库系统迁移到测试环境和生产环境当中去。Yyjzy 专注开发,专注为开发者造轮子。基于注解可以很快的实现建库建表和数据库版本管理。目前主推在项目启动时自动的创建好数据库和表。

2022-12-29 17:04:15 470

原创 RSA非对称加密

5.公钥字符串构建PublicKey对象。

2024-10-03 13:47:00 266

原创 数据结构与算法之---滑动窗口

题目:给定一个整数数组,计算长度为k的连续子数据的最大总和。当区间发生变化时,可以通过旧有的计算结果对搜索空间进行剪枝。求和:减左侧出窗值,加右侧新入窗值 减少重复运算。解法:创建一个大小为k的窗口,窗口从左向右滑动。从而减少重复计算,降低时间复杂度。用于解决数组/字符串的子元素问题。查找满足一定条件的连续区间的问题。

2023-01-12 21:02:50 253 1

原创 数据结构之--图

【代码】数据结构之--图。

2022-10-29 14:32:05 493

原创 二叉树 广度优先遍历

也叫层序遍历,顾名思义,就是二叉树按照从根节点到叶子节点的层次关系,一层一层横向遍历各。二叉树同一层次的节点之间是没有直接关联的,利用队列可以实现。

2022-10-01 15:23:02 362

原创 多路查找树

多路查找树(muitl-way search tree),其每一个节点的孩子数可以多于两个,且每一个节点处可以存。B树(BalanceTree)是对二叉查找树的改进。它的设计思想是,将相关数据尽量集中在一起,以便一。非叶子结点的子树指针P[i],指向关键字值属于[K[i], K[i+1])的子树。非叶子结点的子树指针与关键字个数相同。次读取多个数据,减少硬盘操作次数。为所有叶子结点增加一个链指针。所有关键字都在叶子结点出现。MySQL索引B+Tree。

2022-10-01 12:15:07 711

原创 红黑树的概念

就是当前节点与父节点、叔叔节点同为红色,这种情况违反了红黑树的规则,需要将红色向祖辈上传,父节点和叔叔节点红色变为黑色,爷爷节点从黑色变为红色(爷爷节点必为黑色,因为此前是符合红黑。这样每条叶子结点到根节点的黑色节点数量并未发生变化,因此都其他树结构不产生影响。这种二叉查找树就退化成了链表,由于树的深度变得多了,查找的效率也会大幅下降。所以需要对这种二叉树进行自平衡,红黑树就是一种自平衡的二叉查找树。

2022-10-01 12:10:59 435

原创 二叉树的存储

一个父节点的下标是n,那么它的左孩子节点下标就是2×n+1、右孩子节点下标就是2*(n+1)对于一个稀疏的二叉树(孩子不满)来说,用数组表示法是非常浪费空间的。二叉树属于逻辑结构,可以使用链表和数组进行存储。所以二叉树一般用链表存储实现。二叉树的每一个节点包含3部分。指向右孩子的right指针。指向左孩子的left指针。存储数据的data变量。

2022-10-01 11:50:18 670

原创 docker-compose方式安装skywalking (分布式)

服务端安装docker-compose文件```yamlversion: '3.3'services: elasticsearch: image: elasticsearch:7.9.0 container_name: elasticsearch restart: always ports: - 9200:9200 environment: discovery.type: single-node TZ: Asia/Sh

2022-03-27 15:43:59 3413

原创 jdk8的stream流使用

Collectors.collectingAndThen()注:第一个参数为要处理的数据,第二个参数为第一个参数的结果接着处理 List<YyjzyBO> yyjzyBOList = new ArrayList<>(); YyjzyBO yyjzyBO1 = new YyjzyBO(); yyjzyBO1.setProductId("123"); yyjzyBO1.setTradeuse("111"); Yyjzy

2022-03-19 09:23:05 483

原创 gitlab安装

容器化安装基础镜像英文版docker pull gitlab/gitlab-ce:12.7.6-ce.0运行容器运行镜像:运行时间比较长,大约需要3-10分钟。可以查看日志情况。挂载目录如果没有docker run 会自己创建docker run -itd --name gitlab -p 443:443 -p 80:80 -p 222:22 --restart always -m 4GB -v /data/gitlab/config:/etc/gitlab -v /data/gitlab/l

2022-03-17 19:55:45 898

原创 Jenkins环境搭建

安装jenkins使用docker安装需要挂载目录给映射目录授权mkdir -p /data/jenkins && chown -R 1000:1000 /data/jenkins拉取最新镜像注意 由于镜像里面的许多插件在国外需要科学上网 否则启动会失败docker pull jenkins/jenkins:latestdocker run -itd --name jenkins -p 8080:8080 -p 50000:50000 -u root -v/data/

2022-03-15 21:09:32 2238

原创 harbor 私有镜像仓库安装

安装harbor私服harbor官网地址: https://goharbor.io/ github官网地址: https://github.com/goharbor/harbordocker-compose验证docker-compose docker-compose -v安装harbor1.解压软件 cd /data tar zxf harbor-offline-installer-v1.9.4.tgz 2.进入安装目录 cd harbor 3.修改配置文件 vi harb

2022-03-10 13:29:37 933

原创 使用kubeadm安装k8s

1.系统yum源配置centos下载地址:推荐大家使用centos7.6以上版本。http://mirrors.aliyun.com/centos/7/isos/x86_64/查看centos系统版本命令:cat /etc/centos-release配置阿里云yum源1.下载安装wgetyum install -y wget2.备份默认的yum mv /etc/yum.repos.d /etc/yum.repos.d.backup3.设置新的yum目录 mkdir -p /

2022-02-01 17:21:36 2592

原创 安装docker compose

1.下载https://github.com/docker/compose2.授权mv /data/docker-compose-Linux-x86_64 /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose 开发环境可以授予最高权限 chmod 777 /usr/local/bin/docker-compose3.检查安装情况以及版本docker-compose -v docker-compose --

2022-01-20 11:58:35 497

原创 docker-compose文件详解

Compose和Docker兼容性: Compose 文件格式有3个版本,分别为1, 2.x 和 3.x 目前主流的为 3.x 其支持 docker 1.13.0 及其以上的版本常用参数: version # 指定 compose 文件的版本 services # 定义所有的 service 信息, services 下面的第一级别的 key 既是一个 service 的名称 build

2022-01-19 11:27:02 2339

原创 flink集群搭建

1.1 基础环境jdk1.8及以上【配置JAVA_HOME环境变量】ssh免密码登录【集群内节点之间免密登录】(教程:https://blog.csdn.net/qq_19520877/article/details/119490098)1.2 安装包下载https://archive.apache.org/dist/flink/flink-1.7.2/flink-1.7.2-bin-hadoop27-scala_2.11.tgz1.3 集群规划linux9527JobManage

2022-01-04 19:58:48 2076

原创 git回滚到指定分支

首先找到你想要回退的版本,在命令行中执行:git log上述命令执行后会看到 Git 提交的历史记录列表。在列表中找到要回退的版本,复制它的提交 SHA,然后执行下述命令回滚到该版本:git checkout 版本号 .注意:上述命令中结尾的点(.)是必需的。把当前的修改提交到暂存区,然后提交:git add -Agit commit -m "回退指定版本"本地的回退操作完成之后,你可以把本地的版本推送到远程的 Git 仓库里。这样其他人也可以看到你的工作了。git push or

2021-12-29 14:39:24 900

原创 Elasticsearch Head插件安装 和 验证主从环境

1.安装步骤ealsticsearch只是后端提供各种api,那么怎么直观的使用它呢?elasticsearch-head将是一款专门针 对于elasticsearch的客户端工具 elasticsearch-head配置包,下载地址:https://github.com/mobz/el asticsearch-head elasticsearch-head是一个基于node.js的前端工程。nodejs安装wget https://nodejs.org/dist/v10.15.3/node-v1

2021-12-26 17:57:07 186

原创 Elasticsearch 集群部署

一、节点搭建下载Elasticsearch地址: https://www.elastic.co/cn/downloads/elasticsearch 最新版本1.解压三个tar.gz文件tar -zxvf jdk-8u171-linux-x64.tar.gztar -zxvf elasticsearch-7.3.0-linux-x86_64.tar.gz2.配置jdk环境变量vim /etc/profile在profile结尾添加如下内容:export JAVA_HOME=/opt/y

2021-12-26 16:28:08 1009

原创 Elasticsearch集成IK分词器

1.下载插件并安装1)在elasticsearch的bin目录下执行以下命令,es插件管理器会自动帮我们安装,然后等待安装完成:./elasticsearch-plugin installhttps://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.3.0/elasticsearch-analysis-ik-7.3.0.zip2)下载完成后会提示 Continue with installation?输入 y 即可

2021-12-19 20:27:33 979

原创 安装kibana

1. 安装kibanaroot账户下操作tar -zxvf kibana-7.3.0-linux-x86_64.tar.gz改变es目录拥有者账号chown -R estest /opt/yyjzy/servers/kibana-7.3.0-linux-x86_64还需要设置访问权限chmod -R 777 /opt/yyjzy/servers/kibana-7.3.0-linux-x86_64修改配置文件vim /opt/yyjzy/servers/kibana-7.3.0-li

2021-12-18 20:18:56 948 3

原创 Elasticsearch 单机部署

下载Elasticsearch地址: https://www.elastic.co/cn/downloads/elasticsearch 最新版本1.解压三个tar.gz文件tar -zxvf jdk-8u171-linux-x64.tar.gztar -zxvf elasticsearch-7.3.0-linux-x86_64.tar.gz2.配置jdk环境变量vim /etc/profile在profile结尾添加如下内容:export JAVA_HOME=/opt/yyjzy/se

2021-12-18 16:48:36 3646

原创 Solr 的安装方式

1.下载solr项目包 或者上传压缩包到服务器直接去官网下载 https://lucene.apache.org/solr/downloads.html 或者wget https://mirror.bit.edu.cn/apache/lucene/solr/7.7.3/solr-7.7.3.tgz2.解压tar -xvf solr-7.7.3.tgz3.启动solr,到solr7.7.3/bin下./solr start -force -port 端口默认端口 89834.使用浏览器访问h

2021-12-14 21:50:58 1010

原创 rocketmq环境搭建(单机版)

1.环境要求jdk8(8以上的版本启动时需要设置jvm的一些参数。因为rocketmq是用8开发的,所以不用特殊设置什么参数)2.安装及启动下载rocketmq #下载 wgethttps://archive.apache.org/dist/rocketmq/4.5.1/rocketmq-all- 4.5.1-bin-release.zip2.根据实际情况修改vim bin/runserver.sh 内存大小修改内存:JAVA_OPT="${JAVA_OPT} -server

2021-10-31 17:54:51 291

原创 frp内网穿透搭建

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp, http, https 协议。实现内网穿需要有一台公网服务器。本文将公网服务器称为服务端,内网服务器称为客户端。需要开启相关的端口。相关端口没开通,访问就会失败。centos7(公网一台,内网一台)frp_0.33.0_linux_amd64.tar.gz,frp的客户端和服务端都在同一个包里。文件说明frps.ini: 服务端配置文件frps: 服务端软件frpc.ini: 客户端配置文件frpc: 客户端软.

2021-10-29 09:39:59 404

原创 rabbitmq集群配置

1. 在node2、node3、node4三台Linux虚拟机中安装RabbitMQ。2. 从node2拷贝.erlang.cookie到node3、node4的相应目录如果没有该文件,手动创建 /var/lib/rabbitmq/.erlang.cookie ,生成Cookie字符串,或者启动一次RabbitMQ自动生成该文件。生产中推荐使用第三方工具生成。我们首先在node2上启动单机版RabbitMQ,以生成Cookie文件: systemctl start rabbitmq-server

2021-10-06 16:27:12 824

原创 rabbitmq延迟队列

延迟消息是指的消息发送出去后并不想立即就被消费,而是需要等(指定的)一段时间后才触发消 费。例如下面的业务场景:在支付宝上面买电影票,锁定了一个座位后系统默认会帮你保留15分钟时间,如果15分钟后还没付款那么不好意思系统会自动把座位释放掉。怎么实现类似的功能呢?可以用定时任务每分钟扫一次,发现有占座超过15分钟还没付款的就释放掉。但是这样做很低效,很多时候做的都是些无用功;可以用分布式锁、分布式缓存的被动过期时间,15分钟过期后锁也释放了,缓存key也不存在了;还可以用延迟队列.

2021-10-01 12:50:41 241

原创 rabbitmq-之ttl+死信队列

DLX,全称为Dead-Letter-Exchange,死信交换器。消息在一个队列中变成死信(Dead Letter)之后,被重新发送到一个特殊的交换器(DLX)中,同时,绑定DLX的队列就称为“死信队列”。以下几种情况导致消息变为死信:消息被拒绝(Basic.Reject/Basic.Nack),并且设置requeue参数为false;消息过期;队列达到最大长度。 对于RabbitMQ 来说,DLX 是一个非常有用的特性。它可以处理异常情况下,消息不能够被消费者正确消费(消费者调用.

2021-10-01 12:05:40 416

原创 安装rabbitmq

RabbitMQ的安装需要首先安装Erlang,因为它是基于Erlang的VM运行的。 RabbitMQ需要的依赖:socat和logrotate,logrotate操作系统中已经存在了,只需要安装socat就可以了。 RabbitMQ与Erlang的兼容关系详见:https://www.rabbitmq.com/which-erlang.html1、安装依赖:yum install socat -y2、安装Erlang erlang-23.0.2-1.el7.x86...

2021-09-26 22:35:09 167

原创 布隆隆过滤器器

布隆隆过滤器的原理通常判断某个元素是否存在⽤用的可以选择hashmap。但是 HashMap 的实现也有缺点,例例如存储容量量占⽐比⾼高,考虑到负载因⼦子的存在,通常空间是不不能被⽤用满的,⽽而 ⼀一旦你的值很多例例如上亿的时候,那 HashMap 占据的内存⼤小就变得很可观了。Bloom Filter是⼀一种空间效率很⾼高的随机数据结构,它利用位数组很简洁地表示⼀一个集合,并能判断⼀一个元素是否属于这个集合。 hbase 中布隆隆过滤器器来过滤指定的rowkey是否在⽬目标⽂文件,避免扫描多个⽂文件。

2021-09-05 16:59:38 89

原创 HBase集群搭建

(1)下载安装包http://archive.apache.org/dist/hbase/1.3.1/hbase-1.3.1-bin.tar.gz(2)规划安装⽬目录/opt/yyjzy/servers/(3)上传安装包到服务器器(4)解压安装包到指定的规划⽬目录tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt/yyjzy/servers(5)修改配置⽂文件需要把hadoop中的配置core-site.xml 、hdfs-site.xml拷⻉贝到hbas

2021-09-05 15:33:37 114

原创 数据结构与算法--二叉搜索树节点删除

二叉搜索树的节点删除代码class Solution { public TreeNode deleteNode(TreeNode root, int key) { if (root == null) { return null; } if (key < root.val) { // 待删除节点在左子树中 root.left = deleteNode(root.left, k

2021-08-15 13:17:45 150

原创 数据结构与算法--一个数组构建二叉树过程

root = [1,4,3,2,4,2,5,null,null,null,null,null,null,4,6]数组转二叉树如图

2021-08-14 21:37:39 195

原创 数据结构与算法--二叉搜索树查找

递归实现 public boolean searchBST(TreeNode root,int value){ // 递归终止条件 if(root==null){ return false; } // 如果当前值和查找值相同返回true if(value==root.val) return true; boolean state = false; // 如果查找值小于根

2021-08-10 22:46:12 79

原创 数据结构与算法--二叉搜索树

二叉搜索树如果左子树不为空,则左子树所有节点的值都小于根节点的值。如果右子树不为空,则右子树所有节点的值都大于等于根节点的值。任意一颗子树也是二叉搜索树二叉搜索树的建立// 二叉搜索树的建立 public TreeNode insert(TreeNode root,int value){ // 如果根节点为空,则元素为根节点 if(root == null){ return new TreeNode(value); }

2021-08-10 22:24:34 176

原创 centos7相互间配置免密登录

1、环境介绍node1:192.168.33.1node2:192.168.33.2node3:192.168.33.32、准备工作关闭防火墙,三台主机的主机名和ip写入/etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.loc

2021-08-07 17:50:15 278

原创 数据结构与算法--之树的后序遍历(递归方式)

public List postorderTraversal(TreeNode root) {LinkedList ans = new LinkedList<>();inoder(root,ans);return ans;}public void inoder(TreeNode root,List<Integer> list){ if(root==null)return; inoder(root.left,list); inoder(root.ri

2021-07-17 22:54:29 176 1

原创 数据结构与算法--之树的前序遍历(递归方式)

public List preorderTraversal(TreeNode root) {List list = new ArrayList<>();inoder(root,list);return list;}public void inoder(TreeNode root,List<Integer> list){ if(root==null)return; list.add(root.val); inoder(root.left,list);

2021-07-17 22:51:25 235

原创 数据结构与算法--之树的中序遍历(递归方式)

public List inorderTraversal(TreeNode root) {List list = new ArrayList<>();inorder(root,list);return list;}public void inorder(TreeNode root,List<Integer> res){ if(root==null) return; inorder(root.left,res); res.add(root.val);

2021-07-17 22:46:02 304

seata-server1.3.0.rar

seata-server1.3.0seata-server1.3.0

2020-07-23

rabbitmq.rar

erlang-18.3-1.el7.centos.x86_64.rpm,rabbitmq-server-3.6.5-1.noarch.rpm,socat-1.7.3.2-1.el6.lux.x86_64.rpm

2020-05-15

mysql-community-server-5.7.30-1.el7.x86_64.rpm

mysql-community-server-5.7.30-1.el7.x86_64.rpm

2020-05-14

mysql-community-client-5.7.30-1.el7.x86_64.rpm

mysql-community-client-5.7.30-1.el7.x86_64.rpm

2020-05-14

seata-server-1.1.0.zip

seata-server,

2020-04-14

空空如也

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

TA关注的人

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