自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CAP理论 与 BASE理论

本文介绍了计算机理论科学的CAP理论和BASE理论。并解释了CAP理论的常见误区。

2025-04-13 23:52:00 523

原创 记录一次跨库连表的坑

一个微服务项目,本次业务主要涉及两个板块,分别是 文章管理 和 系统管理。具有开发环境、测试环境、生产环境三个环境。其中,开发环境和测试环境用的是同一个服务器(nacos和MySQL都是用的同一个服务器中的)。文章管理模块是系统的业务模块之一,放在article_server微服务中。在开发环境中的相关数据表放在article_server_dev数据库中,在测试环境中的相关数据表放在article_server_test数据库中。

2025-03-02 19:04:04 779 2

原创 Java虚拟机(Java Virtual Machine,JVM)与垃圾回收机制(Garbage Collection,GC)

Java 虚拟机(Java Virtual Machine, JVM)是运行 Java 字节码的虚拟机。它是Java平台的核心组件之一,使得Java程序具有的特性。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语言 一次编写,到处运行 的关键所在。

2025-01-05 21:07:34 1789 1

原创 MySQL数据库的事务(Transaction)与多版本并发控制(MVCC)

是数据库管理系统中的一个重要概念,它指的是一组不可分割的数据库操作,这些操作要么全部成功执行要么全部不执行,从而确保数据库从一个一致性状态转换到另一个一致性状态。本文介绍了数据库事务的ACID、隔离界别、可能出现的问题以及mvcc多版本并发控制原理。

2025-01-04 16:12:42 960

原创 MySQL数据库的日志

日志(log)是一种记录系统运行时各种状态和事件的文件。它通常用于系统监控、故障排查、安全审计和性能分析。日志文件可以记录用户操作、系统错误、应用程序行为等信息。日志文件通常包含时间戳、事件类型、事件描述等关键信息,以便于事后分析和追踪。MySQL日志是MySQL数据库管理系统中用于记录数据库操作和系统状态的一系列日志文件。这些日志对于数据库的维护、监控、故障排查、数据恢复和性能优化等方面都非常重要。:记录MySQL服务器启动、运行和关闭过程中的错误信息。

2025-01-01 20:05:52 887

原创 MySQL数据库的锁

数据库锁是数据库管理系统中用来管理对数据库对象(如行、页或表)的并发访问的机制。其主要目的是确保数据的完整性和一致性,同时允许合理的并发操作。

2024-12-31 16:37:05 737

原创 MySQL数据库的索引

索引(Index)是书籍的重要组成部分,它列出了书中的重要名词及其对应的页码,方便读者快速查找这些名词的定义和含义。通过索引,用户无需通读整本书就能迅速找到所需的信息。数据库索引(Database Index)是数据库管理系统中的一种排序数据结构,用于加速查询和更新数据库表中的数据。数据库索引使得数据库程序能够快速定位表中的数据,而无需扫描整个数据库。数据库中有许多种索引。其根据不同的分类方式,分别可以从四个角度概括。这种分类方法帮助我们更好地理解和选择适合的索引类型,以优化数据库性能。

2024-12-28 22:30:16 838

原创 输入/输出(I/O)管理

‌IO(Input/Output)‌是指计算机系统中数据输入和输出的过程。从计算机的角度来看,IO涉及计算机核心(如CPU和内存)与其他设备(如打印机、鼠标、键盘等)之间的数据转移。从程序的角度来看,IO是指应用程序通过系统调用向内核发起请求,完成对I/O设备的读写操作。‌本文介绍了同步(阻塞、非阻塞)、异步、信号驱动、多路复用5种IO.并介绍了IO控制方式包括DMA、终端驱动等。同时介绍了零拷贝操作、Reactor 与 Proactor。

2024-12-21 16:49:52 918

原创 操作系统文件管理

文件是操作系统中的重要概念,是存储在计算机硬盘上的信息集合,如文本文档、图片、程序等。在系统运行时,资源调度和分配以进程为基本单位,而用户的输入、输出则以文件为基本单位。大多数应用程序通过文件实现输入,输出也保存在文件中,以便长期存储和访问。用户希望能够访问、修改和保存文件,这需要系统提供一个文件管理系统。操作系统中的就是为实现这些管理需求而设计的。文件系统通过将程序和数据组织为一系列文件来实现管理功能。文件是由文件名和若干相关元素组成的集合,元素通常是记录,而记录是一组有意义的数据项的集合。

2024-12-19 00:19:50 1006

原创 操作系统内存管理

本文介绍了操作系统是如何进行内存管理的。内存管理的核心功能涵盖地址转换机制(绝对装入方式、静态重定位方式、动态重定位方式)、 存储保护机制(上下限寄存器、基址寄存器)、 内存空间的虚拟扩充(覆盖技术、交换技术、虚拟技术)、 内存空间的分配与回收(连续分配方式和非连续分类方式),其中包括单一连续分配、固定分区分配和动态分区分配,以及基本分页内存管理、基本分段内存管理以及基本段页式内存管理。随后介绍了虚拟内存技术,包括请求分页管理方式、页面置换算法、页面分配策略等技术。

2024-12-14 22:00:10 1016 1

原创 进程的管理与控制

本文介绍了操作系统中的进程部分,包括进程的五种状态及其转换、进程的控制与通信方式、进程调度算法、进程的同步与互斥,同时介绍了进程的死锁与其避免策略。

2024-12-08 19:21:49 979

原创 网络分层模型( OSI、TCP/IP、五层协议)

然而,实质上,TCP/IP只有最上面的三层被广泛使用,因为最底层的网络接口层并没有明确定义的内容。因此,在学习计算机网络原理时,通常采取综合OSI和TCP/IP的优点的办法,采用一种只有五层协议的体系结构。在这一层,各种应用程序通过使用不同的协议来实现数据交换,比如HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)等。物理层(Physical Layer):物理层是网络模型的最底层,负责传输原始比特流,将数据转换为电信号或光信号,并在物理媒介(如网线、光纤)中进行传输。

2024-12-03 22:03:42 1654

原创 域名解析系统 DNS

用户与互联网上某台主机通信时,必须要知道对方的IP地址。然而用户很难记住长达32 位的二进制主机地址。即使是点分十进制地址也并不太容易记忆。但在应用层为了便于用户记忆各种网络应用,连接在互联网上的主机不仅有P地址,而且还有便于用户记忆的主机名字。域名系统(DomainNameSystem,DNS)是因特网使用的命名系统,用于将人们熟悉且具有意义的主机名(例如 www.baidu.com)转换为计算机更易处理的IP地址。相比于IP地址,人们更倾向于使用能够传达含义的字符串来标识网络上的设备。

2024-12-02 22:47:35 1363

原创 Java的反射(Reflection)

反射(Reflection)是Java被称为“准动态语言”的关键技术。反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。正常方式是通过完整的“包类”名称通过new来实例化对象。反射方式可以通过实例化对象调用getClass()方法来获得完整的“包类”名称。

2024-12-02 21:54:49 1110

原创 动态主机配置协议(DHCP)

是一个用于IP网络的网络管理协议,它提供了一种插即用连网(plug-and-play networking)的机制,这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与,主机可以从服务器动态获取IP地址、子网掩码、默认网关、DNS服务器名称与IP地址,允许。DHCP服务器分配给DHCP客户的IP地址是临时的,因此DHCP客户只能在一段有限的时间内使用这个分配到的IP地址。但是在每一个网络上都设置一个DHCP服务器是不合理的,因为这样会使DHCP服务器的数量太多。因此,应当采用自动协议配置的方法。

2024-12-02 21:49:03 773

原创 网际协议(IP)与其三大配套协议(ARP、ICMP、IGMP)

本文详细介绍了网际协议第4版(Internet Protocol version 4,IPv4)、网际协议第6版(Internet Protocol version 6,IPv6)和与IP协议配套使用的还有三个协议:地址解析协议(Address Resolution Protocol, ARP)、网际控制报文协议(Internet Control Message Protocol,ICMP)、网际组管理协议 (Internet Group Management Protocol,IGMP)技术。

2024-12-02 21:36:32 2151

原创 传输控制协议(TCP)和用户数据报协议(UDP)

传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由 IETF 的 RFC 793 定义。它通过三次握手建立连接,确保数据的可靠传输,并提供顺序控制、流量控制和拥塞控制等功能‌。具有快速重传、流量控制、拥塞控制等机制。用户数据报协议(User Datagram Protocol,UDP)又称用户数据包协议,是一个简单的是一种无连接的、不保证可靠的、面向数据包的传输层通信协议,位于OSI模型的传输层。

2024-11-20 23:40:55 1672 3

原创 Java数据库连接(Java Database Connectivity,JDBC)

SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范(接口),称之为JDBC(Java Data Base Connectivity)。这套接口由数据库厂商去实现,这样,开发人员只需要学习jdbc接口,并通过jdbc加载具体的驱动,就可以操作数据库。

2024-11-20 21:53:12 1113

原创 超文本传输协议(HTTP)与超文本传输安全协议(HTTPS)

HTTP/2.0 多请求复用一个 TCP 连接,一旦发生丢包,就会阻塞住所有的 HTTP 请求。:HTTP/2.0 需要经过经典的 TCP 三次握手过程,TCP 和 TLS 是分层的,需要分批次来握手,先 TCP 握手,再 TLS 握手。:HTTP/2.0 是基于 TCP 协议实现的,HTTP/3.0 新增了 QUIC(Quick UDP Internet Connections) 协议(UDP 的升级版本)来实现可靠的传输,提供与 TLS/SSL 相当的安全性,具有较低的连接和传输延迟。

2024-11-20 00:04:29 1385

原创 图的最短路径算法-迪杰斯特拉(Dijkstra)算法与弗洛伊德(Frolyd)算法

最短路径问题是图论研究中的一个经典算法问题,旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。最短路径不一定是经过边最少的路径,但在这些最短路径中,长度最短的那一条路径上只有一条边,且它的权值在从源点出发的所有边的权值最小。本文介绍了经典的Dijkstra迪杰斯特拉算法和Frolyd弗洛伊德算法,并用Java实现算法。

2024-10-29 22:24:16 1112 1

原创 图的最小生成树算法--普里姆(Prim)算法和克鲁斯克尔(Kruskal)算法-Java实现

最小生成树(Minimum spanning tree,MST)是最小权重生成树(Minimum weight spanning tree)的简称,是一个连通加权无向图中一棵权值最小的生成树。包括普里姆(Prim)算法和克鲁斯克尔(Kruskal)算法。本文详细讲解并用Java程序实现了这两种算法。

2024-10-19 00:30:54 1921

原创 图论与深度优先搜索、广度优先搜索算法(Java语言实现)

本文介绍了数据结构与算法中的图,通过图的概念与定义引入此数据结构的性质。并介绍了图的邻接表、邻接矩阵、十字链表以及邻接多重表四种存储方式。同时介绍了图的两种遍历方式,即深度优先搜索算法(Deep First Search)和广度优先搜索算法(Breadth First Search)。

2024-10-16 22:58:50 977

原创 二叉平衡树(AVL树)Java语言实现

将A的左孩子B向右上旋转代替A成为根结点,将A结点向右下旋转成为B的右子树的根结点,而B的原右子树则作为A结点的左子树。将A的右孩子B向左上旋转代替A成为根结点,将A结点向左下旋转成为B的左子树的根结点,而B的原左子树则作为A结点的右子树。先将A结点的左孩子B的右子树的根结点C向左上旋转提升到B结点的位置,然后再把该C结点向右上旋转提升到A结点的位置。先将A结点的右孩子B的左子树的根结点C向右上旋转提升到B结点的位置,然后再把该C结点向左上旋转提升到A结点的位置。)时间,因为AVL树总是保持平衡的。

2024-10-14 22:25:09 918

原创 二叉查找树(Binary Search Tree)Java语言实现

二叉查找树(Binary Search Tree),也称为二叉搜索树、有序二叉树(Ordered Binary Tree)或排序二叉树(Sorted Binary Tree)。

2024-10-14 22:24:50 1208

原创 十大排序算法(Java实现)

排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法是《数据结构与算法》中最基本的算法之一。八大排序算法指的是《数据结构与算法》中介绍的冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、基数排序,十大排序则是在此基础上加上计数排序和桶排序。

2024-08-01 00:42:53 205

原创 密度峰值聚类(DPC)算法(Python3实现)

密度峰值聚类(Density peaks clustering, DPC)算法是由Rodriguez和Laio于2014年提出的一种聚类分析算法。其原始文献名是在在 Science上发表的,论文名称为“Clustering by Fast Search and Find of Density Peaks”。这种聚类方法该算法是一种基于密度的聚类算法,可以自动确定聚类中心和聚类的数量并适用于处理各种形状和分布的数据集。

2024-04-27 16:11:04 5402 3

原创 DBSCAB算法介绍(Python3实现)

基于密度的空间聚类的应用(Density-based spatial clustering of applications with noise,DBSCAN)算法是由Martin Ester, Hans-Peter Kriegel, Jörg Sander和Xiaowei Xu于1996年提出的一种聚类分析算法。

2024-04-26 13:28:25 2632 1

原创 Hadoop环境搭建(离线部署CDH版本)

相比于传统Hadoop繁琐的配置文件与版本管理,CDH提供了一个可以在线搭建Hadoop等组件的集群的系统。只需要现在本地配置好jdk等环境并安装好CM Server和CM Agent服务即可在UI界面控制集群。

2024-01-29 12:07:33 2010

原创 树与二叉树(Java语言实现)

树(Tree)是一种抽象数据类型(Abstract Data Type,ADT)或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>0)个有限节点组成一个具有层次关系的集合。

2023-07-26 15:49:32 753 1

原创 栈和队列(Java语言实现)

栈和队列的基本操作

2023-07-26 15:48:32 1004 1

原创 链表及其基本操作(Java语言版)

链表的基本操作

2023-07-26 12:51:05 2873 1

原创 git上传代码步骤

平常使用git将代码上传到github或gitee时总是记不清上传的bash命令,所以写了此文记录一个项目上传到git的过程。

2023-07-13 09:41:30 6714 1

原创 模糊C均值聚类(Fuzzy C-means,FCM)算法(Python3实现)

L.A.Zadeh在1965年最早提出模糊集理论,在该理论中,针对传统的硬聚类算法其隶属度值非0即1的严格隶属关系,使用模糊集合理论,将原隶属度扩展为 0 到 1 之间的任意值,一个样本可以以不同的隶属度属于不同的簇集,从而极大提高了聚类算法对现实数据集的处理能力,由此模糊聚类出现在人们的视野。FCM算法广泛应用在数据挖掘、机器学习和计算机视觉与图像处理等方向。

2023-05-15 16:59:33 40170 38

原创 K均值(K-means)聚类算法(Python3实现代码)

K-means算法的简介与Python3实现

2023-05-10 18:07:42 65786 28

原创 IntelliJ IDEA更改项目名称步骤

IntelliJ IDEA更改项目名

2022-12-12 21:35:47 13770

原创 Hadoop生态系统环境搭建(Hadoop全分布式、Zookeeper集群、Mysql、Hive集群、Hbase集群、Redis集群、ElasticSearch集群)

Hadoop集群搭建,四台主机。安装了JDK、Hadoop、MySQL、Hive、Hbase、Redis、ElasticSearch、CDH。文章包含详细安装启动命令以及Web的UI界面

2022-10-17 22:04:39 3620

原创 Centos7安装步骤(集群)

Linux安装,为Hadoop集群做准备

2022-10-17 21:57:31 8638

原创 SpringCloud微服务

微服务(Microservice Architecture)是近几年流行的一种架构思想,引用 ThoughtWorks 公司的首席科学家 Martin Fowler于2014年提出的一段话来解释微服务:

2022-10-12 18:08:47 3467

原创 SpringBoot框架

Spring Boot 基于 Spring 开发,Spirng Boot 本身并不提供 Spring 框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于 Spring 框架的应用程序。也就是说,它并不是用来替代 Spring 的解决方案,而是和 Spring 框架紧密结合用于提升 Spring 开发者体验的工具。Spring Boot 以约定大于配置的核心思想,默认帮我们进行了很多设置,多数 Spring Boot 应用只需要很少的 Spring 配置。同时它集成了大量常用的第三方库配置(例如

2022-10-07 21:57:01 854

原创 SpringMVC

Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。SpringMVC的优点:轻量级框架、功能强大、高效,基于请求响应的MVC框架、与Spring无缝结合

2021-11-28 20:49:11 203 1

博客中聚类算法(K-means、FCM、DBSCAN、DPC)的数据集(免积分)

博客中K-means、FCM、DBSCAN、DPC算法的数据,包括Iris鸢尾花数据集、Wine葡萄酒数据集、Seed小麦种子数据集、glass数据集、WDBD乳腺癌数据集,以及几个人工数据集常用的人工数据集(Flame、Spiral等),下载在直接存入项目文件夹即可,如果下载不了,可以私信我,看到后会及时回复。

2023-05-16

空空如也

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

TA关注的人

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