自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(244)
  • 收藏
  • 关注

原创 使用StableDiffusion简单绘制生成清纯AI美女图片

下面以文生图页面来介绍1、快捷设置大模型,经过训练学习后得到的程序文件。模型常见下载地址:1)2)liblib.art3)VAE(变分自编码器,Variational Autoencoder)是一种基于深度学习的生成模型,它起到增强图像质量和细节的关键作用,主要作用于滤镜和微调。是通过一个神经网络系统,将提示词从文字转化成简单的数字。将这些数字放入到神经网络的第一层进行计算,把得到的运算结果再放到第二层进行计算,然后再放到第三层进行计算……层层处理,层层递进,一直到最后一层。

2024-06-23 12:52:06 970

原创 Docker详细介绍(1)

通过利用Docker的发版、测试和部署代码的方法,您可以显著减少编写代码和在生产中运行代码之间的延迟。这很明显是得不偿失的,于是Docker诞生了,使用了容器技术,自带隔离机制,将系统资源利用到极致,同时只需要最核心的环境和需要的服务,轻巧,几M,开启秒级。是一个只读的模板,类似于安装系统用到的那个iso文件,我们通过镜像来完成各种应用的部署。它可以被启动、开始、停止、删除等操作,每个容器都是相互隔离的。Docker 的使用非常简单,基本上只需要安装 Docker 环境,就可以开始使用 Docker。

2024-04-20 14:31:39 694 2

原创 Spring项目单元测试

一、单元测试是什么是指对软件中的最小可测试单元进行检查和验证的过程就叫单元测试。对Spring项目中代码逻辑进行单个单元测试的过程,验证是否符合预期工作,并确保它们能正确地集成和交互。二、单元测试好处可以最小颗粒度的测试某个组件功能,减少外部依赖的影响。通过单元测试可以在提测之前及早发现和修复潜在问题,提升代码的可靠性。可通过多个组件的协同工作,验证整个系统的功能和性能。

2024-02-03 18:52:56 2766

原创 工具使用篇(1)--快速将网页接口url及参数设置到postman来调试

以下是来自官网的介绍,可以看出Postman是一个用于构建和使用API的API平台,并且简化了很多流程让我更好的创建API。下面我们来看一下他的整体页面。可以看到大体有几个分区:api历史调用区、要请求的API及请求、API参数配置、API请求响应的结果。页面流程非常清晰,“填写要请求的API请求方式及URL --> 配置API参数 --> 点击send按键 --> 获取接口响应结果”执行这个简单流程即可调用API接口调试。

2023-11-21 19:52:22 820

原创 更好的向ChatGpt提问

一种预训练的对话式文本生成AI。其中Chat 包括输入端你发出的有效提问(Prompt)和输出端的智能参考答案。信息会通过理解,再被提炼为知识,然后由GPT为你表达。GPT3之后的模型泛化出思维链的能力。

2023-09-11 21:15:40 331

原创 Mybatis plus中遇到的分页查询报错问题解决

于是立马上手打断点,结果发现,一切正常,无论是service到mapper.xml还是在把这些参数传入的mybatis plus里,这些参数都正常。修bug的时候,遇到一个及其诡异的bug:我的service层调用mapper.xml中的分页查询sql时,居然报错了!一开始我还以为是我sql写错了,经检查没发现什么异常,于是就拿到navicat中跑一下sql,也能成功跑出数据。这样我们再运行分页查询,查询分页总数的时候,就再也不会出现报错的想象。难道有什么地方把我sql拦截了并做了什么奇怪的骚操作?

2023-06-28 20:57:16 3332

原创 【云原生】devops之jenkins中pipeline语法(4)

前言: pipeline语法分类一般来说,有四种。分别是环境配置、阶段步骤、行为动作、逻辑判断。 该when指令允许管道根据给定条件确定是否应执行阶段。 该when指令必须至少包含一个条件。如果when指令包含多个条件,则所有子条件都必须返回 true 才能执行阶段。内置条件:条件描述样例branch当正在构建的分支与给定的分支模式(ANT 样式路径 glob)匹配时执行阶段。when { branch 'master' }buildingTag在构建构建标签时执

2023-04-09 23:23:49 305 1

原创 【云原生】devops之jenkins中pipeline语法(3)

前言: pipeline语法分类一般来说,有四种。分别是环境配置、阶段步骤、行为动作、逻辑判断。 该triggers指令定义了重新触发pipeline的自动化方式。 对于与 GitHub 或 BitBucket 等源集成的pipeline,triggers可能没有必要,因为基于 webhook 的集成可能已经存在。参数描述样例cron接受一个 cron 风格的字符串来定义管道应该被重新触发的定期间隔triggers { cron('H */4 * * 1-5') }

2023-02-11 12:31:20 290

原创 【云原生】devops之jenkins中pipeline语法(2)

pipeline语法分类一般来说,有四种。分别是环境配置、阶段步骤、行为动作、逻辑判断。

2022-12-10 14:18:37 660

原创 【云原生】devops之jenkins中pipeline语法(1)

pipeline语法分类一般来说,有四种。分别是环境配置、阶段步骤、行为动作、逻辑判断。

2022-10-08 20:56:57 1286 8

原创 【云原生】k8s(Kubernetes)中yaml文件快速阅读理解

2)接着我们看下一个,以---分隔符隔开的另一个类型Service,定义了一个名为suncat-endpoints的Service,同时往该Service中配置内部端口映射到Pod暴露出的端口port: 3306,以及对外暴露的端口号targetPort: 3306。首先我们看到,定义了一个名为suncat-service的Service类型,他的职责时将port: 8848端口映射到nodePort: 38011对外暴露端口,并且他的管理的对应的应用时suncat-app应用。............

2022-08-06 19:20:09 2958 3

原创 EasyExcel-(1)使用篇

EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。本博客将介绍其如何使用。

2022-06-05 22:39:15 702 1

原创 CAS详情汇总讲解

一、CAS是什么Compare and Swap,即比较再交换。二、CAS原理CAS机制当中使用了3个基本操作数:内存地址V值,预期值A,修改完成后的新值B。更新一个变量的时候,只有当变量的预期值A和内存地址V值相同时,才会将内存地址V对应的值修改为B。三、CAS的缺点:1.CPU开销较大在并发量比较高的情况下,如果许多线程反复尝试更新某一个变量,却又一直更新不成功,循环往复,会给CPU带来很大的压力。2.不能保证代码块...

2022-04-03 11:16:07 810

原创 与(&)、非(~)、或(|)、异或(^) java运算符

运算符 运算符符号 使用规则 个人理解 与 & 两个操作数中位都为1,结果才为1,否则结果为0。 有0为0 非 ~ 如果位为0,结果是1,如果位为1,结果是0 0/1反过来 或 | 两个位只要有...

2022-03-29 22:02:17 825

原创 throw和throws区别

我们先来直观的看看他们之间的用法:throw:一般出现在方法体内,并且在使用的时候是以抛出异常对象为结束,后面的代码不会再执行,比如:public void suncat(){ if(users.isEmpty()){ Thrownew RuntimeException("用户列表不能为空"); }}throws:一般出现在方法名字后,表示方法内的异常不做处理,抛给那些调用该方法的程序。比如:public static void function

2022-03-28 23:05:32 828

原创 JVM垃圾回收算法-CMS算法

一、CMS算法是什么CMS算法是JVM中老年代常用的垃圾回收算法,全称是Concurrent Mark Sweep算法,即并发标记-清除算法。算法的执行步骤如下图所示,共有六个步骤。1 、初始标记(Initial Mark):CMS算法中两个会触发Stop the World事件中的一个,这个阶段会标记所有与GC Roots直接相关联的对象,以及被存活的青年代对象所直接引用的对象。2、 并发标记(Concurrent Mark):...

2022-03-27 22:50:20 3767 3

原创 大数据篇(2-3)--Hive(3)Hive调优

hvie调优可以分为几个模块进行考虑,数据的压缩与存储,hive参数的优化,sql的优化,解决数据的倾斜等。一,数据的压缩与存储格式1)压缩方式 压缩可以节约磁盘的空间,基于文本的压缩率可达40%+; 压缩可增加吞吐量和性能量(减小载入内存的数据量),但是在压缩和解压过程中会增加CPU的开销。所以针对IO密集型的jobs(非计算密集型)可以使用压缩的方式提高性能。 几种压缩算法: 压缩方式 压缩后大小 压缩速度 ...

2021-10-08 20:30:03 1217

原创 Redis(4)-Redis遇到的问题

问题一:aof文件过大解决方案:(1)使用BGREWRITEAOF命令(里面会有大部分是重复命令或者可以合并的命令(100次incr = set key 100)。aof重写机制的出现目的是给aof持久化文件瘦身,因为随着时间推移aof文件会变得越来越大。但是在aof文件内存储的字符指令实际上是可以进行合并重写的。经过几个月之后,发现还是存在aof文件过大的问题。所以,用定时任务来跑,不能解决根本问题。因为aof是记录了很多操作日志,就像Mysql的bin_l...

2021-10-08 20:05:32 319

原创 MQ篇(3-6)--kafka特点

一、高可用性1.Kafka 本身是一个分布式系统,同时采用了 Zookeeper 存储元数据信息,提高了系统的高可用性。2.Kafka 使用多副本机制:当状态为 Leader 的 Partition 对应的 Broker 宕机或者网络异常时,Kafka 会通过选举机制从对应的 Replica 列表中重新选举出一个 Replica 当做 Leader,从而继续对外提供读写服务(当然,需要注意的一点是,在新版本的 Kafka 中,Replica 也可以对外提供读请求了),利用多副本机制在一定程度上提高了

2021-10-08 16:16:35 474

原创 大数据篇(1-3)--Hadoop(3)-YARN

一、YARN 简介Apache YARN(Yet Another Resource Negotiator) 是 hadoop 2.0 引入的集群资源管理系统。用户可以将各种服务框架部署在 YARN 上,由 YARN 进行统一地管理和资源分配。二、YARN架构(1)ResourceManagerResourceManager通常在独立的机器上以后台进程的形式运行,它是整个集群资源的主要协调者和管理者。ResourceManager负责给用户提交...

2021-07-03 11:35:18 208 5

原创 大数据篇(1-2)--Hadoop(2)-MapReduce

一、MapReduce概述Hadoop MapReduce 是一个分布式计算框架,用于编写批处理应用程序。编写好的程序可以提交到 Hadoop 集群上用于并行处理大规模的数据集。MapReduce 作业通过将输入的数据集拆分为独立的块,这些块由map以并行的方式处理,框架对map的输出进行排序,然后输入到reduce中。MapReduce 框架专门用于<key,value>键值对处理,它将作业的输入视为一组<key,value&gt...

2021-07-03 11:27:53 310 1

原创 大数据篇(1-1)--Hadoop(1)-HDFS

一、HDFSHDFS(Hadoop Distributed File System)是 Hadoop 下的分布式文件系统,具有高容错、高吞吐量等特性,可以部署在低成本的硬件上。二、HDFS设计原理HDFS 遵循主/从架构,由单个 NameNode(NN) 和多个 DataNode(DN) 组成:NameNode: 负责执行有关文件系统命名空间的操作,例如打开,关闭、重命名文件和目录等。它同时还负责集群元数据的存储,记录着文件中各个数据块的位置信息。N...

2021-07-03 11:21:13 216

原创 大数据篇(2-2)--Hive(2)Hive分区表和分桶表

分区提供了一个隔离数据和优化查询的可行方案,但是并非所有的数据集都可以形成合理的分区,分区的数量也不是越多越好,过多的分区条件可能会导致很多分区上没有数据。分区表和分桶表的本质都是将数据按照不同粒度进行拆分,从而使得在查询时候不必扫描全表,只需要扫描对应的分区或分桶,从而提升查询效率。Hive 中的表对应为 HDFS 上的指定目录,在查询数据时候,默认会对全表进行扫描,这样时间和性能的消耗都非常大。字句的中包含分区条件,则直接从该分区去查找,而不是扫描整个表目录,合理的分区设计可以极大提高查询速度和性能。

2021-07-03 11:13:48 526 1

原创 大数据篇(2-1)--Hive(1)简介

Hive 进行的是统一的元数据管理,就是说你在 Hive 上创建了一张表,然后在 presto/impala/sparksql 中都是可以直接使用的,它们会从 Metastore 中获取统一的元数据信息,同样的你在 presto/impala/sparksql 中创建一张表,在 Hive 中也可以直接使用。它的主要特点有:支持二进制序列化方式,可以便捷,快速地处理大量数据;Hive 会在 HDFS 为每个数据库上创建一个目录,数据库中的表是该目录的子目录,表中的数据会以文件的形式存储在对应的表目录下。

2021-07-03 11:08:41 356

原创 Spring篇(5-1)--Spring事务流程原理

前言:我们知道,使用Spring事务只需要几个注解即可@EnableTransactionManagement @Transactional,那它是怎么做到的呢?一、@EnableTransactionManagement其实主要的方法在@EnableTransactionManagement 注解中,我们先来看看其源码@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Import(T.

2021-04-19 00:03:43 564 2

原创 Spring篇(3)--Spring Aop基本流程原理

一、代理对象的创建过程:AbstractAutowireCapableBeanFactory#initializeBeanprotectedObjectinitializeBean(StringbeanName,Objectbean,@NullableRootBeanDefinitionmbd){ if(System.getSecurityManager()!=null){ AccessController.doPrivileged((PrivilegedAction&lt

2021-04-18 23:49:14 1671 8

原创 Spring篇(2)--Spring IOC基本流程原理

前言:Spring IoC 容器初始化的关键环节就在 AbstractApplicationContext#refresh() ⽅法中@Overridepublicvoidrefresh()throwsBeansException,IllegalStateException{ synchronized(this.startupShutdownMonitor){ StartupStepcontextRefresh=this.applicationStartup.start(

2021-04-12 23:23:47 528 1

原创 Spring Cloud --- Feign

一、Feign是什么Feign是一个http请求调用的轻量级框架,可以以Java接口注解的方式调用Http请求。Spring Cloud引入 Feign并且集成了Ribbon实现客户端负载均衡调用。二、Feign解决了什么封装了Http调用流程,更适合面向接口化的变成习惯。三、Feign工作原理1.基于面向接口的动态代理方式生成实现类2.基于RequsetBean,动态生成Request3.使用Encoder将Bean转换为Http报文正文4.拦截器负责...

2021-04-10 11:17:18 217

原创 SpringCloud --- Eureka

一、Eureka是什么Eureka是Netflix组件的一个子模块,也是核心模块之一。云端服务发现,一个基于 REST 的服务,用于定位服务,以实现云端中间层服务发现和故障转移Eureka服务端(以下简称服务端)与Eureka客户端(以下简称客户端)之间协同工作的流程:二、Eureka优缺点优点:(1)故障转移:在Eureka平台中,如果某台服务器宕机,Eureka不会像zookeeper选择leader的过程,客户端请求会自动切换到新的Eureka节点,当宕机的服务器重新恢复后

2021-04-10 11:10:35 451

原创 MQ篇(3-5)--kafka核心组件之四-日志管理器

一、日志的存储Kafka的消息以日志文件的形式进行存储。不同主题下不同分区的消息是分开存储的。同一个分区的不同副本也是以日志的形式,分布在不同的broker上存储。日志的存储是以副本为单位的,每个副本对应一个log对象,一个log又划分为多个logSegment进行存储。kafka会在指定的目录下创建对应的文件夹,命名规则为“topic名称-分区编号”。logSegment代表逻辑上的一组文件,这组文件就是.log、.index、.timeindex这三个不同文件扩展名,但是同文件名的文

2021-04-10 00:06:32 284

原创 MQ篇(3-4)--kafka核心组件之三-控制器

一、控制器是什么其实控制器也是一个broker,控制器也叫leader broker。Kafka的集群由n个的broker所组成,每个broker就是一个kafka的实例或者称之为kafka的服务。二、控制器选举kafka每个broker启动的时候,都会实例化一个KafkaController,并将broker的id注册到zookeeper。集群在启动过程中,通过选举机制选举出其中一个broker作为leader,也就是前面所说的控制器。有三种情况触发控制器选举:1、集群启动.

2021-04-10 00:03:40 292

原创 MQ篇(3-3)--kafka核心组件之二-副本管理器

一、副本管理器是什么副本管理器负责对副本管理。由于副本是分区的副本,所以对副本的管理体现在对分区的管理。副本机制使得kafka整个集群中,只要有一个代理存活,就可以保证集群正常运行。这大大提高了Kafka的可靠性和稳定性。备注:1、LEO:LEO是Log End Offset缩写。表示每个分区副本的最后一条消息的位置,也就是说每个副本都有LEO。2、HW:HW是Hight Watermark缩写,他是一个分区所有副本中,最小的那个LEO。二、副本管理器所承担的职责如下..

2021-04-09 23:58:07 251

原创 MQ篇(3-2)--kafka核心组件之一-协调器

一、协调器是什么:协调器负责协调工作。简单点说,就是消费者启动后,到可以正常消费前,这个阶段的初始化工作。消费者能够正常运转起来,全有赖于协调器。主要的协调器有如下两个:1、消费者协调器(ConsumerCoordinator):可以看作是消费者做操作的代理类(其实并不是),消费者很多操作通过消费者协调器进行处理。每个consumer实例化时,同时实例化一个ConsumerCoordinator对象,负责同一个消费组下各个消费者和服务端组协调器之前的通信。2、组协调器(GroupC.

2021-04-09 23:55:03 1057

原创 MQ篇(3-1)--kafka基本原理

一、Kafka结构Broker:一个Borker就是Kafka集群中的一个实例,或者说是一个服务单元。连接到同一个zookeeper的多个broker实例组成kafka的集群,一般只有一个leader,其余为follwer。Consumer Group:同一个group的consumer可以并行消费同一个topic的消息,但是同group的consumer,不会重复消费。Topic:kafka中消息订阅和发送都是基于某个topic。Topic就像一个特定主题的收件箱,produc

2021-04-09 23:31:51 553

原创 TCP/IP篇(4)--协议应用层-HTTP协议

一、HTTP是什么HTTP:请求响应机制。用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。同时属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。HTTP客户端通过URL向HTTP服务端发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。HTTP底层协议:TCP 协议主要特点1、简单快速:客户向服务器请求..

2021-03-28 23:12:51 740

原创 TCP/IP篇(3)--协议传输层-TCP和UDP

一、TCPTCP是一种可靠的、面向连接的字节流服务。源主机在传送数据前需要先和目标主机建立连接。然后,在此连接上,被编号的数据段按序收发。同时,要求对每个数据段进行确认,保证了可靠性。如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段。源、目标端口号字段:占16比特。TCP协议通过使用"端口"来标识源端和目标端的应用进程。端口号可以使用0到65535之间的任何数字。在收到服务请求时,操作系统动态地为客户端的应用程序分配端口号。在服务器端,每种服务在"众所周知的.

2021-03-28 22:57:10 430

原创 TCP/IP篇(2)--协议网络互联层-IP协议

IP头部格式:IP协议是TCP/IP协议族中最为核心的协议。它提供不可靠、无连接的服务,也即依赖其他层的协议进行差错控制。在局域网环境,IP协议往往被封装在以太网帧中传送。而所有的TCP、UDP、ICMP、IGMP数据都被封装在IP数据报中传送。 版本(Version)字段:占4比特。 用来表明IP协议实现的版本号,当前一般为IPv4,即0100。 报头长度(Internet Header Length,IHL)字段:占4比特。是头部占32比特的数字,包括可选项。 普通IP.

2021-03-28 22:48:35 1707

原创 TCP/IP篇(1)--协议模型

TCP/IP参考模型分为四个层次:应用层、传输层、网络互连层和主机到网络层。(1)主机到网络层:实际上TCP/IP参考模型没有真正描述这一层的实现,只是要求能够提供给其上层-网络互连层一个访问接口,以便在其上传递IP分组。(2)网络互连层:网络互连层是整个TCP/IP协议栈的核心。它的功能是把分组发往目标网络或主机。(3)传输层:在TCP/IP模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。即:传输控制协议TCP(transmiss

2021-03-28 22:43:17 1739

原创 MQ篇(2-1)--最详细的RabbitMQ介绍

一、RabbitMQ是什么 RabbitMQ是一个由erlang语言编写的、开源的、在AMQP基础上完整的、可复用的企业消息系统。支持多种语言,包括java、Python、ruby、PHP、C/C++等。 备注:(1)MQ:MQ是 message queue 的简称,是应用程序和应用程序之间通信的方法。(2)AMQP:advanced message queuing protocol ,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设.

2021-03-28 22:38:53 11984 5

原创 MQ篇(1)--ActiveMQ、RabbitMQ、RocketMQ、kafka中间件对比

特性 ActiveMQ RabbitMQ RocketMQ kafka 开发语言 java erlang java scala 单机吞吐量 万级 万级 10万级 10万级 时效性...

2021-03-27 16:35:29 708

空空如也

空空如也

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

TA关注的人

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