自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

IcyDate的博客

一个小白的博客

  • 博客(54)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spring Cloud Alibaba学习(九):Dubbo集成

上一篇:Spring Cloud Alibaba学习(八):配置中心Dubbo作为SpringCloud生态中服务治理的一部分,同样需要有服务提供者和服务消费者。由于服务提供者和服务消费者都要实现共同的接口,所以可以将接口单独作为一个模块,因此建立三个子模块:dubbo-api,dubbo-provider,dubbo-consumer。右键父模块,创建maven模块,再将子模块加入父模块pom.xml的<module>即可dubbo-api只做接口的定义,不需要引入依赖

2022-03-24 14:01:00 1506 2

原创 Hive学习(四):Hive文件存储结构

上一篇:Hive学习(三):Hive数据类型文件结构Hive支持多种文件的存储结构,以对应不同的场景,Hive通过在创建表时的sorted as来指定文件结构。基础知识对于一张表数据的存储id name sex 1 张三 男 2 李四 女 行式存储以一行数据为单位进行连续存储,表现为:优势:插入新纪录时,直接在数据尾部添加即可,效率高 劣势:如果在查询时只需要name,也需要加载整行数据,消耗大列式存储以一列数据为单

2022-01-12 17:26:42 1438

原创 Hive学习(三):Hive数据类型

上一篇:Hive学习(二):HiveQL DDL操作数据类型基本数据类型这些数据类型都是基于Java的数据类型实现的,所以他们的行为表现和Java类型一致类型 描述 boolean 布尔值 tinyint 1字节 有符号整数 smallint 2字节 int 4字节 bigint 8字节 float 4字节单精度浮点数 double 8字节双精度浮点数 deicimal 任意精度的带符号小数 st

2022-01-12 16:19:14 983

原创 Hive学习(二):HiveQL DDL操作

上一篇:Hive学习(一):安装运行数据库创建数据库CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] 数据库名 [COMMENT 注释] [LOCATION hdfs存储路径] [WITH DBPROPERTIES (属性名=属性值, ...)]; DATABASE|SCHEMA:意义相同 WITH DBPROPERTIES:设置一些自定义键值对 可以到hdfs中看看,可以发现数据库就是一个文件夹删除数据库DR...

2022-01-06 16:52:32 1577

原创 Hive学习(一)附:Hive安装运行常见异常

此篇为笔者安装时遇到的所有异常ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.打开Hadoop的配置目录,编辑hadoop-env.sh,添加以下内容export HDFS_NAMENODE_USER=rootexport HDFS_DATANODE_USER=rootexport HDFS_SECONDARYNAMENODE_USER=rootexport YARN_RESOURCEMANAGE

2021-12-31 18:14:37 949

原创 Hive学习(一):安装运行

Hive的安装需要有Hadoop、MySQL以及Java的支持,其中hadoop用于存储数据,而mysql用户存储Hive的metastore(元信息)。主要记录一下Hadoop以及Hive的安装,Java和MySQL的安装就不赘述了,网上很多。安装的服务器版本:CentOS7.8Hadoop安装(单节点)安装下载:https://hadoop.apache.org/releases.html将本地的Hadoop压缩包上传到服务器root目录下scp ~/Downloads/h

2021-12-31 18:13:50 1386

原创 Spring Cloud Alibaba学习(八):配置中心

上一篇:Spring Cloud Alibaba学习(七):网关Nacos除了可以用作注册中心,还能够作为配置中心,统一管理各个模块的配置以provider子模块为例在Nacos中创建配置启动Nacos,选择配置管理->配置列表->点击加号,将provider配置文件中的内容复制过来因为我之前用的就是yml,所以这里的配置格式也是用YAMLData ID:与模块相对应,回作为模块找到配置文件的标识application.yml在provider子模...

2021-12-09 16:18:13 869 2

原创 iTerm2连接远程服务器(自动执行ssh命令至连接成功,无需手动输入密码)

创建expect脚本文件expect脚本文件将用于模拟进程输入输出,可以将交互过程写成一个脚本,使其自动化# 打开存放脚本的目录cd ~/software/iTerm2# 创建脚本文件touch login.exp# 编辑文件vim login.exp脚本内容set timeout 30spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]expect { "(yes/no)?" .

2021-11-23 11:32:29 6029 4

原创 Spring Cloud Alibaba学习(七):网关

上一篇:Spring Cloud Alibaba学习(六):熔断器-Sentinel随着服务的逐渐增多,前端对接的的服务也会变得越来越难以管理,因此需要一个统一的服务,专门用于管理各服务的路由,这个组件便是spring-cloud-gateway。创建gateway子模块pom.xml引入gateway相关依赖:spring-cloud-starter-gateway去掉springboot web依赖,因为gateway中依赖了webflux<?xml version="1

2021-10-12 17:27:43 296

原创 Spring Cloud Alibaba学习(六):熔断器-Sentinel

上一篇:Spring Cloud Alibaba学习(五):服务消费者-Feign 在微服务场景下,如图所示,A是上层服务,B、C是底层服务。若此时,B服务宕机,大量需要B服务的请求发送至A服务,那么由于B服务已经不可用,A服务Servlet中大量的请求线程阻塞,最后导致A服务宕机,由于服务与服务之间的依赖,会导致故障传播,进而造成整个微服务瘫痪,称为“雪崩” Sentinel是alibaba的开源组件,用于实现故障熔断,防止故障传输,在B服务宕机的情况下,由Fallba...

2021-08-27 16:29:38 614

原创 Spring Cloud Alibaba学习(五):服务消费者-Feign

Spring Cloud Alibaba学习(四):服务消费者Feign能够让我们以更优雅的方式发起调用,并且集成了robbin负载均衡。创建consumer-feign子模块pom.xml主要引入的feign相关依赖:spring-cloud-starter-openfeign<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"

2021-08-24 16:44:51 411 2

原创 Spring Cloud Alibaba学习(四):服务消费者

上一篇:Spring Cloud Alibaba学习(三):服务提供者创建子模块Consumerpom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="htt

2021-08-19 16:18:51 297

原创 Spring Cloud Alibaba学习(三):服务提供者

在IDEA中右键父模块,选择New→Module,按照提示创建名为Provider的子模块以一个web项目的方式来编写这个子模块。pom.xml引入两个依赖:spring-boot-starter-web:提供模块web方式启动的能力 spring-cloud-starter-alibaba-nacos-discovery:向nacos注册自身成为一个服务<?xml version="1.0" encoding="UTF-8"?><project xmlns="

2021-08-19 15:43:41 341

原创 Spring Cloud Alibaba学习(二):统一管理依赖

IDEA创建maven项目,命名好项目名:在pom.xml中写入之后子模块都会共用的依赖。这里用到的版本情况是:spring boot:2.3.12.RELEASE spring cloud:Hoxton.SR12 spring cloud alibaba:2.2.6.RELEASE<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" x..

2021-08-19 15:17:53 568

原创 Spring Cloud Alibaba学习(一):运行Nacos

Nacos作为一个注册中心,提供了服务的注册与发现,配置管理等功能。下载地址:https://github.com/alibaba/nacos/releases下载压缩包,解压后进入bin执行# windows 单机启动startup.cmd -m standalone访问:http://localhost:8848/nacos,用户名密码默认为nacos/nacos...

2021-08-19 14:44:40 288

原创 AOP实现Prometheus自定义指标点

springboot:1.5.10.RELEASEsimpleclient_spring_boot:0.11.0目录度量指标类型设置自定义指标注册指标类型切面类实现采样点值统计注解的切入方式启动项目查看度量指标类型Counter(计数器):只能递增的数值,主要用于统计请求数,任务数,错误出现次数等;Gauge(测量器):既可以递增,也可用递减的数值,只要用于统计温度,当前内存使用量等;Histogram(柱状图):对每个采样点进行统计,打到各个分类值中.

2021-07-28 16:44:26 1268 1

原创 SpringBoot1.X集成Prometheus

目录依赖引入配置文件配置配置类运行使用Promethues官方管理平台查看指标数据使用Grafana进行可视化监控依赖引入<!-- 通过actutator进行暴露 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId&gt

2021-07-06 17:16:05 526

原创 Kubernetes学习(二):工作负载

本节概述一些常用工作负载,并介绍一些关键配置目录Pod生命周期Pod阶段容器状态ReplicaSetDeploymentStatefulSetDaemonSetJobCronJobPodPod是k8s集群中的最小计算单元。代表集群中一组运行的容器,这些容器共享存储,网络。通常不会被直接创建(指yaml文件里写kind:Pod的方式),而是通过诸如Deployment,DeamonSet等控制器来创建。通过其yaml中的metadata.label..

2021-05-07 17:37:21 257

原创 Kubernetes学习(一):入门

Kubernetes是什么?在笔者看来,Kubernetes是一个微服务框架,是一个管理容器的开源平台。它能够提供(官方文档介绍): 服务发现和负载均衡 Kubernetes 可以使用 DNS 名称或自己的 IP 地址公开容器,如果进入容器的流量很大, Kubernetes 可以负载均衡并分配网络流量,从而使部署稳定。 存储编排 Kubernetes 允许你自动挂载你选择的存储系统,例如本地存储、公共云提供商等。 自动部署和回滚 你可以使用 Kubernetes 描

2021-04-25 18:36:38 248 1

原创 JAVA相关面试题整理

近期面试记录单例模式如何防止反射和反序列化构造方法中增加逻辑判断 使用枚举单例 添加readRsolve()方法返回对象(防止反序列化)Redis里的List可以用来做什么LPUSH + LPOP = 栈 LPUSH + RPOP = 队列 LPUSH + LTRIM = 有限集合 LPUSH + BRPOP = 消息队列Redis缓存满了怎么办内存淘汰策略noeviction策略:内存空间达到maxmemory时,不会淘汰数据,有新写入时会返回错误在设置过期时间的k.

2021-04-04 16:01:29 107

原创 JAVA知识点

记录JAVA中最基础,但不主动研究,容易忽略的知识点JAVA类初始化执行顺序父类静态变量、父类静态代码块、子类静态变量、子类静态代码块、父类非静态变量、父类非静态代码块、父类构造函数、子类非静态变量、子类非静态代码块、子类构造函数。// 父类public class Base { static { System.out.println("父类静态代码块"); } { System.out.println("父类非静态代码块");.

2021-02-13 16:50:23 144 3

原创 Python学习(三):类

目录类的定义创建实例给属性设置默认值修改属性值类的继承给子类定义属性和方法重写父类方法将实例用作属性类的导入导入单个类导入多个类导入整个模块导入所有类类的定义类是一类事务的抽象,比如不同名字,年龄的人都是人,不同类型的车都是车。一般来说,类名使用驼峰命名法,每个单词首字母大写;属性和方法使用小写,单词之间使用下划线class P...

2020-03-13 15:25:11 307

原创 Python学习(二):列表、元组、字典

目录列表访问列表操作列表修改元素新增元素删除元素列表排序反转列表列表长度列表遍历列表切片列表拷贝元组字典访问字典操作字典新增,修改元素删除元素字典遍历列表列表由一系列按特定顺序排列的元素组成# python的列表可以存放不同的数据类型lists = ["hello", 1, 1.2, True]访问列表...

2020-03-06 16:08:51 364

原创 Python学习(一):基本语法

打印基本打印'xxx',"xxx"都可以表示字符串,'''xxx''',"""xxxx"""可打印有格式的文本段,本博客均使用"print('hello world')print("hello world")print("""hello world""")带变量的打印将要打印的的变量作为变量传递到print内,会自动添加空格; 使用字符串拼接的方式。pr...

2020-02-19 16:04:26 160

原创 RabbitMQ学习(五):SpringBoot集成RabbitMQ

目录添加依赖配置文件配置基础消息发送实现队列定义消费者生产者发布订阅模式实现交换机定义及绑定消费者生产者路由模式实现交换机定义及绑定消费者生产者本博客主要是在记录RabbitMQ和SpringBoot的集成,以及几个工作模式的实现,对于一些细节,例如工作模式是什么,路由键,交换机等概念不做介绍。若想要了解这些,可以看笔者之前的博客。R...

2020-02-11 16:23:24 233

原创 RocketMQ学习(六):消息存储深入

目录消息存储存储介质消息的存储与发送的性能保障消息存储结构刷盘机制消息存储为了保证RocketMQ的高可靠性要求,MQ会对消息进行持久化生产者发送消息 MQ收到消息后,对消息进行持久化,在储存中新增一条记录 返回ACK给生产者 MQ推送消息给对应的消费者,然后等待消费者返回ACK 如果消费者返回了ACK,则MQ执行消息删除的操作,若超时未返回,MQ会认为...

2020-01-28 17:15:03 376 1

原创 RocketMQ学习(五):SpringBoot集成RocketMQ

目录添加依赖配置文件配置编写生产者编写消费者启动添加依赖类似spring-boot-starter-web等依赖也是需要加的<dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-spring-boot-star...

2020-01-18 17:32:30 1245

原创 RocketMQ学习(四):消息类型——延时消息,批量消息,过滤消息,事务消息

目录延时消息批量消息过滤消息1、Tag过滤2、SQL过滤事务消息1、事务流程2、代码本篇博客由于是上篇博客“RocketMQ学习(三):消息类型——发送方式,接收方式,顺序消息”的后续,因此代码只贴了变动部分。延时消息比如上传文件,我们可以先上传到临时目录,然后发送一个1h的延时消息,1h后若文件表单没有提交,我们就删除文件释放存储。生产者:需要在发...

2019-12-03 11:38:34 546

原创 RocketMQ学习(三):消息类型——发送方式,接收方式,顺序消息

目录准备工作基本属性解释发送方式1)同步消息2)异步消息3)单向消息接收方式1)负载均衡2)广播模式顺序消息订单类生产者消费者准备工作所需的MQ客户端依赖<dependency> <groupId>org.apache.rocketmq</groupId> <artifact...

2019-11-27 11:23:01 1346

原创 RocketMQ学习(二):集群

目录RocketMQ集群介绍RocketMQ集群模式1、单Master模式2、多Master模式3、多Master多Slave模式(异步)4、多Master多Slave模式(同步)双主双从集群搭建1、服务器环境2、防火墙配置3、创建消息存储路径4、Broker配置1)Master12)Slave23)Mater23)Slave15、集...

2019-11-14 16:33:33 417

原创 RocketMQ学习(一):入门

目录RocketMQ各个角色介绍准备工作JDK安装(已搭建可跳过)RocketMQ安装启动RocketMQ1、启动NameServer2、启动Broker3、关闭RocketMQ测试RocketMQRocketMQ是阿里巴巴2016年MQ中间件,使用Java语言开发,在阿里内部,RocketMQ承接了例如“双11”等高并发场景的消息流转,能够处理万亿级别的消...

2019-11-01 12:01:15 311

原创 RabbitMQ学习(四):消息确认机制——事务模式,Confirm模式

目录消息确认机制事务模式Confirm模式1、普通Confirm模式2、批量Confirm模式3、异步Confirm模式总结消息确认机制在之前的工作模式中,我们会发现,所有的生产者在推送完消息后就结束或者执行其他任务,并不知晓消息是否发送成功。如果要保证消息的可靠性,需要对消息进行持久化处理。除了设置持久化相关代码外,我们还要保证消息是被推送到代理服务器(bro...

2019-10-21 15:22:14 765

原创 RabbitMQ学习(三):工作模式——路由模式,主题模式,RPC模式

目录1、路由模式2、主题模式3、RPC模式阅读本篇文章之前建议先阅读前三个模式:RabbitMQ学习(二):工作模式——简单队列,工作队列,发布-订阅模式。能够更好的承上启下。消息确认机制:RabbitMQ学习(四):消息确认机制——事务模式,Confirm模式1、路由模式路由模式和发布订阅模式一样,都是通过交换机实现一条消息被多个消费者接收。不同的是,路由模式能够做到控制...

2019-10-16 11:01:00 616

原创 RabbitMQ学习(二):工作模式——简单队列,工作队列,发布-订阅模式

目录RabbitMQ工作模式1、简单队列2、工作队列(1)轮询分发(2)公平分发3、发布-订阅模式后续模式:RabbitMQ学习(三):工作模式——路由模式,主题模式,RPC模式RabbitMQ工作模式使用Java语言,这里暂不讲解与Spring的整合,重点在于六种模式的理解,需要的包。<dependency> <groupId&...

2019-10-16 09:54:44 333

原创 RabbitMQ学习(一):安装配置

目录RabbitMQ是什么?RabbitMQ安装及设置(Windows为例)1、必需文件2、启动RabbitMQ服务3、配置RabbitMQ六种工作模式的实现:工作模式RabbitMQ是什么?RabbitMQ是一个消息中间件,使用消息队列来实现应用间的通信,可用于异步处理,应用解耦,流量削峰,日志处理等场景。最简单的模型如下图,生产者异步的将消息推送给消息队列,之后...

2019-10-15 16:37:32 191

原创 JAVA网络编程(三):TCP编程

目录什么是TCP?TCP特点TCP编程核心类TCP编程1、基本通信2、文件类型通信3、多客户端同时通信什么是TCP?传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP特点面向连接,通信前由客户端主动发起连接请求 低效 可靠,客户端与服务端必须建立连接后才能通讯...

2019-09-27 10:41:37 245

原创 JAVA网络编程(二):UDP编程

目录什么是UDP?UDP特点UDP编程核心类UDP编程1、基本通信2、基本类型数据通信3、对象类型数据通信4、文件类型通信5、多次通信6、双向通信什么是UDP?UDP(User Datagram Protocol)用户数据报协议,为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据报的方法。UDP特点非面向连接,即通讯前不需要建立连接...

2019-09-20 12:03:32 511

原创 JAVA网络编程(一):IP,端口,URL

目录网络是什么?通讯协议通信接口网络分层数据封装IP地址(InetAddress)IP地址分类特殊的IPInetAddressSocket端口(InetSocketAddress)端口分类InetSocketAddressURL统一资源定位器(URL)URI、URL、URNURL使用Java实现简单爬虫网络是什么?将不同区域的...

2019-09-14 18:00:14 403

原创 JAVA8新特性:Lambda表达式

目录什么是Lambda表达式?Lambda表达式对接口的要求@FunctionalInterfaceLambda表达式基础语法Lambda表达式语法精简Lambda表达式进阶方法引用构造方法的引用系统内置的函数式接口由Lambda表达式看forEach原理什么是Lambda表达式?Lambda表达式是一个匿名函数,用于对一个接口进行非常简洁的实现。...

2019-09-06 12:02:00 349

原创 Dart报错"Concurrent modification during iteration: Instance(length:3) of '_GrowableList'."的解决

Dart中,如果在collection(集合)的循环中执行增加或删除系统就会抛出这个错误。List list = [1, 2, 3, 4];list.forEach((value) { if (value == 2) { list.remove(value); // 会抛出标题的错误 }});其原因在于Dart为了防止多线程下,一个线程正在遍历,而另...

2019-05-27 12:57:06 9790 2

HTTP知识记录【思维导图】

记录了自己学习HTTP的所有笔记,包括【HTTP背景,HTTP协议基础,HTTP报文,状态码,HTTP首部,安全,认证,基于HTTP的追加协议

2021-03-07

空空如也

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

TA关注的人

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