自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 资源 (2)
  • 收藏
  • 关注

原创 微信小程序开发指南

可使用手机微信扫描下方小程序码,体验小程序微信小程序注册一个账号。

2023-05-12 12:32:36 190

原创 lambda表达式入门

lambda

2023-01-04 12:59:31 454

原创 新手小白入门之泛型

java泛型

2022-12-28 09:39:59 608 1

原创 匿名内部类入门

匿名内部类理解

2022-12-26 09:40:04 207

原创 IDEA好用插件推荐

Java开发工具使用

2022-11-24 11:58:27 830

原创 ThreadLocal原理、内存泄漏分析

ThreadLocal

2022-10-27 09:15:05 161

原创 redis和mysql缓存一致性

缓存和数据库一致性

2022-10-27 08:42:18 1681 2

原创 java图片处理

java 图片压缩,二维码生成,固定地方填充文字

2022-06-27 11:44:38 953

原创 java代理实现

一、

2022-02-22 13:50:31 1014

原创 跨域和跨站

一、概念术语解释备注跨域两个 URL 的“协议+主机名+端口”3者只要有一个不一致http://www.taobao.com/和https://www.taobao.com/跨站两个 URL 的 eTLD+1 不相同a.github.io 和 b.github.ioeTLDeffective top level domain (有效顶级域名).com、.co.uk、.github.ioeTLD+1有效顶级域名+二级域名taobao.com特别说

2022-02-18 13:58:18 1239

原创 linux基础命令

1 查看端口占用netstat -anp |grep 3306主要看监控状态为LISTEN表示已经被占用注:LISTENING并不表示端口被占用,不要和LISTEN混淆哦,查看具体端口时候,必须要看到tcp,端口号,LISTEN那一行,才表示端口被占用了2 查看文件和文件夹大小df -h...

2022-02-15 15:15:24 1217

原创 责任链模式

一、概念责任链模式的定义:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系,将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理他为止。特点:链上的每个对象都有机会处理请求链上的每个对象都持有下一个要处理对象的引用链上的某个对象无法处理当前请求,那么它会把相同的请求传给下一个对象责任链模式满足了请求发送者与请求处理者之间的松耦合,抽象非核心的部分,以链式调用的方式对请求对象进行处理。二、应用场景多条件流程判断 权限控制ERP系统 流程审批 总经理、

2022-02-15 14:35:28 249

原创 多线程顺序执行四种方案

一、Thread的join方法public static void main(String[] args) {final Thread t1 = new Thread(() -> System.out.println(“线程1执行”));Thread t2 = new Thread(() -> { try { t1.join(); } catch (InterruptedException e) { e.printStackTrace(); } System

2022-02-11 17:48:54 3218

原创 02-flume Source练习

一、avro数据序列化系统在目录/opt/servers/flume-1.9.0/conf 下创建文件vim avro_logger.confa1.sources = r1a1.sinks = k1a1.channels = c1 a1.sources.r1.type = avroa1.sources.r1.bind = 0.0.0.0a1.sources.r1.port = 22222 a1.sinks.k1.type = logger a1.ch

2021-12-07 13:38:43 1266

原创 java.util.List复制

一、反射复制说明:此种方法两个对象的相同属性的类型要保持一致,否则会出现NumberFormatException public static <S, R> List<R> copy(List<S> list, Class<R> clazz) { return list.stream().map(s -> { R bean = null; try {

2021-12-07 13:03:13 167

原创 01-Apache Flume 入门

一、概述Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的软件。Flume的核心是把数据从数据源(source)收集过来,再将收集到的数据送到指定的目的地(sink)。为了保证输送的过程一定成功,在送到目的地(sink)之前,会先缓存数据(channel),待数据真正到达目的地(sink)后,flume在删除自己缓存的数据。Flume支持定制各类数据发送方,用于收集各类型数据;同时,Flume支持定制各种数据接受方,用于最终存储数据。一般的采集需求,通过对fl

2021-12-02 09:18:12 548

原创 02-HIVE的安装部署

一、derby版hive直接使用说明:Hive安装非常简单,解压之后即可直接运行,不需要太多配置,前提是要配置JAVA_HOME和HADOOP_HOME。并且Hadoop要全量启动(五个进程)准备工作:apache-hive-2.3.6-bin.tar.gz 下载链接:https://pan.baidu.com/s/1OjW_LeGPuEZRss8hN7FrsQ提取码:61531 解压hivecd /opt/softwarestar -xvzf apache-hive-2.3.6-bin.ta

2021-12-01 11:42:18 186

原创 01-Hive简介

一、什么是HiveHive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能(HQL)。其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以理解为一个将SQL转换为MapReduce的任务的工具,甚至更进一步可以说hive就是一个MapReduce的客户端。二、为什么使用Hive直接使用hadoop所面临的问题人员学习成本太高项目周期要求太短MapReduce实现复杂查询逻辑开发难度太

2021-11-24 09:07:38 1774

原创 07-Yarn资源调度

一、Yarn介绍yarn集群的监控管理界面:

2021-11-23 13:52:55 93

原创 06-MapReduce介绍

一、MapReduce思想

2021-11-23 12:50:19 1621

原创 05-HDFS的api操作

一、前期准备1 解决winutils.exe的问题把hadoop2.7.7(windows版)文件目录放到一个没有中文没有空格的路径下链接:https://pan.baidu.com/s/17yXMvZeQSQgDGdsicoumJg提取码:0l7w在window中配置handoop的环境变量,并且加入path中2 导入jar包创建maven工程并导入jar包<dependency> <groupId>org.apache.hadoop</gro

2021-11-17 13:18:55 1126

原创 04-HDFS入门介绍

一、

2021-11-15 09:19:51 129

原创 03-Hadoop安装

一、Hadoop 的安装有三种方式单机模式:直接解压,只支持MapReduce的测试,不支持HDFS,一般不用。伪分布式模式:单机通过多进程模拟集群方式安装,支持Hadoop所有功能。​ 优点:功能完整。​ 缺点:性能低下。学习测试用。完全分布式模式:集群方式安装,生产级别。HA:高可用二、伪分布式部署1 初始环境:JDK,JAVA_HOME,配置hosts,关闭防火墙,配置免密登录等。注意:我们只将其安装在hadoop01节点上。2 上传安装包并解压上传文件

2021-11-04 08:39:40 267

原创 02-Hadoop介绍

一、定义hadoop是一个分布式存储和分布式计算的框架二、hadoop的核心组件HDFS 分布式文件存储系统MapReduce 分布式计算Yarn 资源调度管理器三、hadoop的介绍及发展历史Hadoop最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。2003年、2004年谷歌发表的两篇论文为该问题提供了可行的解决方案。——分布式文件系

2021-10-29 08:39:10 543

原创 01-hadoop学习环境准备

一、环境准备第一台hadoop01的虚拟机ip地址改为:192.168.65.101第二台hadoop02的虚拟机ip地址改为:192.168.65.102第三台hadoop03的虚拟机ip地址改为:192.168.65.103hadoop01、hadoop02、hadoop03均为NAT模式,其中hadoop01内存设置为1G(16G内存以上建议设置为2G),hadoop02和hadoop03为512M,CPU核数都设置2核1 配置文件cd /etc/sysconfig/network-sc

2021-10-29 08:00:40 1042

原创 Deployment滚动升级

一、简介Deployment 是一种更高级的资源,用于部署或升级应用.创建Deployment时,ReplicaSet资源会随之创建,实际Pod是由ReplicaSet创建和管理,而不是由Deployment直接管理Deployment可以在应用滚动升级过程中, 引入另一个RepliaSet, 并协调两个ReplicaSet.cat <<EOF > kubia-deployment-v1.ymlapiVersion: apps/v1kind: Deploymentmetad

2021-10-25 17:21:14 1537

原创 k8s部署SpringCloud应用

一、准备工作将v2目录下的文件夹上传到/root/目录下载地址springcloud1 项目,用k8s部署eureka: eureka1、eureka2itemuserorder相应的jar包和Dockerfile文件v2目录已写好二、构建镜像1 构建 jdk8 镜像2 构建 eureka 镜像3 构建 item 镜像4 构建 user 镜像5 构建 order 镜像...

2021-10-25 17:20:35 664

原创 k8s磁盘挂载到容器卷

一、emptyDiremptyDir: 简单的空目录不持久存储数据,只能作为临时存储,常用在一个pod的多个Docker容器之间交换数据,共享数据创建包含两个容器的pod, 它们共享同一个卷cat <<EOF > fortune-pod.ymlapiVersion: v1kind: Podmetadata: name: fortune labels: app: fortunespec: containers: - image: luksa/fort

2021-10-25 17:20:07 1376

原创 k8s Dashboard 仪表盘

一、 查看 Dashboard 部署信息1 查看podkubectl get po -n kube-system # -n 指命名空间2 查看servicekubectl get svc -n kube-systemhttps协议访问,映射的端口号30042访问 https://192.168.64.191:30042/3 获取令牌token# 获取 Bearer Token,复制输出中 ‘token:’ 开头那一行k -n kube-system describe secret

2021-10-25 17:19:01 1281

原创 JavaEE常见面试题

1 面向对象三大特点封装: 把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口对外隐藏复杂的实现细节,暴露出简单的使用方法隔离变化提高代码的重用性保护数据继承:从已有类得到继承信息创建新类的过程,提供继承信息的类被称为父类(超类、基类); 得到继承信息的类被称为子类(派生类)多态的前提,提供代码的重用性(如果仅仅为了重用,优先考虑组合)多态:指允许不同子类型的对象对同一行为作出不同的响应多态前提:继承多态作用:提高代码的扩展性 (dao jdbc)多态体现:向

2021-09-07 13:35:08 974 1

原创 linux下一键安装Kubernetes集群

一、简介全自动容器部署工具–持续部署谷歌的开源工具,开发运维一体化的标准化工具Kubernetes:k8s–k和s直接有8个字母(国际化)kube二、集群方案方案一:使用三台物理机或VMware虚拟机来搭建集群环境,一台主控服务器,两台工作节点服务器。方案二:如果资源有限也可以去掉一个工作节点,使用两台服务器。这里主控服务器也当作节点三、k8s安装准备1 集群搭建开源工具一键安装项目 https://github.com/easzlab/kubeasz极大的简化了k8s

2021-09-02 14:25:22 301

原创 Kibana 操作 Elasticsearch

一、Kibana安装启动 Kibana 容器docker run \-d \--name kibana \--net es-net \-p 5601:5601 \-e ELASTICSEARCH_HOSTS='["http://node1:9200","http://node2:9200","http://node3:9200"]' \--restart=always \kibana:7.9.3Kibana启动很慢,稍后浏览器访问 Kiban...

2021-09-01 17:40:19 649

原创 Spring Data Elasticsearch增删改查API

一、简介Spring Data Elasticsearch 是 Elasticsearch 搜索引擎开发的解决方案。它提供:模板对象,用于存储、搜索、排序文档和构建聚合的高级API。例如,Repository 使开发者能够通过定义具有自定义方法名称的接口来表达查询。学习文档: https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#reference二、准备工作案例说明在 Elasticsearch

2021-09-01 15:55:38 262

原创 Java面试-线程必备技能

一、并发和并行并行指同一时刻有多条指令在多个处理器上同时执行并发指同一时刻只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果。二、线程状态线程生命周期,主要有五种状态:新建状态(New) : 当线程对象创建后就进入了新建状态.如:Thread t = new MyThread();就绪状态(Runnable):当调用线程对象的start()方法,线程即为进入就绪状态.处于就绪(可运行)状态的线程,只是说明线程已经做好准备,随时等待CPU调度执行,并

2021-09-01 15:09:34 100 1

原创 redis连环问

1 Redis的高可用如何保证第一:数据的持久化(AOF,RDB)第二:与哨兵机制结合实现负载均衡第三:Redis集群高可用2 如何理解缓存穿透和雪崩缓存穿透又称之为缓存击穿,是按key在请求缓存数据时,从缓存找不到此key对应的数据,而去执行了数据库(例如mysql)的查询,有时候,有人会基于这种行为做恶意攻击,不断请求缓存中不存在key,去访问你的关系数据库,导致数据库宕机。缓存雪崩类似出现了多个key的缓存击穿,当多个key在缓存中集体失效时,这些key又被同时访问到,此时的现象称之为缓存雪

2021-08-31 20:16:58 102

原创 linux环境搭建Elasticsearch集群

一、准备工作上传文件到/rootes-img.gzpditemselasticsearch-analysis-ik-7.9.3.zip下载地址链接:https://pan.baidu.com/s/1wOon8-RYZvA-UxEE2jrffw提取码:289p导入镜像docker load -i es-img.gz设置 max_map_count必须修改系统参数 max_map_count,否则 Elasticsearch 无法启动:在 /etc/sysctl.conf 文件中添加

2021-08-31 15:16:57 431

原创 数据库,Mybatis,JDBC基础面试题

一、理论二、写sql题score表如下score表数据CREATE TABLE `score` ( `id` int(4) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, `subject` varchar(20) DEFAULT NULL, `score` int(4) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=7 DEFA

2021-08-30 19:15:13 491

原创 04-分布式事务--基于Rocketmq可靠消息最终一致性

一、准备工作导入无事务版本 解压父项目pom.xml 添加rocketmq依赖application.yml 添加name server、生产者组名

2021-08-30 12:53:35 161

原创 RocketMq基本原理

一、Topic 基本原理在管理界面中新建主题Topic1,为了方便观察测试效果,这里把写队列和读队列的数量都设置成3。这样,在 broker-a 和 broker-b 上都创建了 Topic1 主题,并各创建了3写3读队列,共6写6读,如下图所示:...

2021-08-27 18:58:43 306

原创 linux下RocketMq搭建

一、准备工作说明:rocketmq不用docker运行,因为官方没有提供镜像,有三方构建的镜像版本是很旧的。由于rocketmq是java写的,运行需要jdk,因为需要安装jdk文件下载 https://pan.baidu.com/s/1vbbp0sQl83e7G_ICgQ2Bhg 提取码: b825将三个文件上传到root目录下jdk-8u212-linux-x64.tar.gz jdk安装需要rocketmq-all-4.7.0-bin-release.zip rocketmq服务安装

2021-08-26 17:45:50 701

Json对象与json字符串互相转换处理工具

Json对象与json字符串互相转换处理工具

2021-08-27

分布式事物案例demo用到的数据库与数据表

分布式事务案例demo准备工作

2021-08-24

空空如也

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

TA关注的人

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