1. 1 无处安放 汪峰
  2. 2 平凡之路 朴树
  3. 3 往后余生 马良
  4. 4 牧马城市 毛不易
无处安放 - 汪峰
00:00 / 00:00

词:汪峰

曲:汪峰

我闻到初春的味道

那如同儿时梦境新鲜的芬芳

也尝到思念的苦涩

这回望远方秋雨般无垠的萧索

心爱的人啊

多年以后是否还记得我的惦念

我的忧愁和挣扎

你知不知道

没有你我那颗叮叮当当的心啊

总是这样 这样无处安放

我去到来时的路上

还是那躺在公路尽头的月亮

电台里放着披头士

可那在我身旁熟睡的你在哪里

思念的人啊

人们常说时间会让爱变得淡忘

变得模糊和破碎

可你知不知道

没有你我那颗叮叮当当的心啊

总是这样 这样无处安放

回望这纷乱的生活

有太多人在我心底匆匆掠过

可当我想念的时候

却只有你让我静静地流下眼泪

心爱的人啊

时光飞逝我们终究要渐渐老去

渐渐恐惧和放弃

可你知不知道

没有你我那颗叮叮当当的心啊

终将这样 这样无处安放

终将这样 这样无处安放

Clay 的技术空间

用进废退 | 艺不压身

大纲

概述

高可用架构方案分类

高可用方案保证数据强一致性使用说明描述
主从复制支持单主只适用于对可用性和数据一致性要求较低的业务场景。
MMM支持单主基本淘汰了,在一致性和高并发稳定性等方面有些问题。
MHA支持单主有少数开发者还在用,但也有些问题,也是趋于淘汰的 MySQL 主从高可用方案。
MGR支持单主 / 多主基于 MySQL 官方从 5.7.17 版本开始引入的组复制技术。
MySQL Cluster支持多主 MySQL 官方提供的一种分布式数据库解决方案,只支持 NDB 引擎。
Galera Cluster支持多主引领时代的主从复制高可用技术。
Galera Cluster for MySQL支持多主 MySQL 对 Galera Cluster 的实现。
MariaDB Galera Cluster (MGC)支持多主 MariaDB 对 Galera Cluster 的实现。
Percona XtraDB Cluster (PXC)支持多主 Percona 对 Galera Cluster 的实现,目前业界使用 PXC 的会多一些。
MySQL InnoDB Cluster支持单主 / 多主 MySQL 官方推出的一套完整高可用性解决方案。
阅读全文 »

大纲

前言

在开发过程中经常会遇到这样一个问题,每天或者每月必须定时去执行一条 SQL 语句,下面这篇文章主要给大家介绍如何使用 MySQL 自带的事件调度器定时执行 SQL 语句。

启用事件调度器

查看事件调度器的运行状态

1
show variables like '%sche%';

阅读全文 »

大纲

前言

本文主要介绍 SpringBoot 3 如何使用 AOT 技术,包括在 Windows、Linux 平台使用 GraalVM 将 SpringBoot 应用编译成原生镜像(二进制可执行文件)。

AOT 与 JIT

  • AOT:Ahead of Time(提前编译),程序执行前,全部被编译成机器码
  • JIT:Just in Time(即时编译),程序边编译边运行

编译器与解释器

编程语言的分类

  • 编译型语言:依赖编译器 (Complier),如 C、C++
  • 解释型语言:依赖解释器 (Interpreter),如 JavaScrpt、Python
阅读全文 »

大纲

前言

本文主要介绍 SpringBoot 3 如何整合 Actuator、Prometheus 与 Grafana,实现微服务应用的监控。

官方文档

概念介绍

可观测性

可观测性 (Observability) 一般是指对线上应用进行观测、监控、预警等,包括的详细内容如下:

  • 健康状况:组件状态、存活状态等,属于 Health 范畴
  • 运行指标:CPU、内存、垃圾回收、吞吐量、响应成功率等,属于 Metrics 范畴
  • 链路追踪
  • ……
阅读全文 »

前言

本文主要介绍如何使用 Docker 在本地快速搭建 SpringBoot 3 的开发环境(单机),其中包括 Redis,ZooKeeper,Kafka,Kafka-UI,Prometheus,Grafana 服务的安装。

版本说明

软件版本说明
Docker24.0.7
CentOS7.9 宿主机操作系统
阅读全文 »

前言

本文主要介绍 Debian 如何安装 MySQL 5.7 数据库,适用于 Debian 10 、Debian 11。

环境说明

软件版本
Debian11
MySQL5.7.42

准备工作

  • 更新系统软件
1
sudo apt-get update
阅读全文 »

漏桶限流算法

漏桶限流算法的介绍

  • 漏桶限流算法
    • 原理:漏桶算法维护了一个固定容量的漏桶,请求以固定的速率流入漏桶。当请求到达时,如果漏桶未满,则允许请求通过,如果漏桶已满,则拒绝请求。漏桶以恒定的速率漏水,即使系统没有请求,漏桶也会持续漏水。
    • 使用场景:适用于需要固定的请求达到速率的场景,比如对网络流量进行限制,确保不会出现突发流量导致系统瘫痪。
    • 实现方式:在代码中维护一个固定容量的漏桶,请求以固定的速率流入漏桶,同时定期漏水,并在每次请求到达时检查漏桶的剩余容量是否足够。
阅读全文 »

前言

本文将介绍 @Async 注解和线程池的使用、注意事项和实现原理。

版本说明

组件版本
Spring Boot3.0.5

@Async 的概述

  • @Async 注解通常标注在方法上,用于实现方法的异步执行,即方法调用者调用方法后立即返回,待调用的方法会提交给 Spring 的线程池去异步执行。
  • @Async 也可以标注在类上,等价于在类中的所有方法上添加该注解。特别注意,@Async 注解只对 Spring IOC 容器管理的对象生效。
阅读全文 »

大纲

开发环境要求

环境 & 工具版本
SpringBoot3.0.5+
IDEA2021.2.1+
JDK17+
Maven3.5+
Tomcat10.0+
Servlet5.0+
GraalVM Community22.3+
Native Build Tools0.9.19+
阅读全文 »

什么是 Pjax

​Pjax​​​ 通过 Ajax 从服务器获取 HTML 内容,然后用加载到的 HTML 替换页面上容器元素的内容。Pjax 使用 pushState 更新浏览器中的当前 URL,即 ​​pjax = pushState + ajax​​ 。最早的时候,​​Pjax​​​ 是一个基于 ​​jQuery​​ 的插件,后来推出了完全独立的版本,适用更广泛的应用场景。值得一提的是,Pjax 最大的优势在于,可以在网站本身无刷新的情况下,局部刷新页面内容,同时在现代浏览器中支持前进和后退,由于局部加载的数据量极小,加载速度极快,因此可以最大程度地提升用户体验。Pjax 的天生劣势在于,默认配置对 ​​SEO​​ 并不友好,同时非常依赖页面布局的一致性,需要大量改造来优化。

Hexo 引入 Pjax

很多较早使用 ​​Pjax​​ 的 Hexo 主题,都使用了基于 jQuery 的版本。因此如果是新引入,可以使用最新独立版本的 ​​Pjax​​

1
<script src="https://cdn.jsdelivr.net/npm/pjax@VERSION/pjax.min.js"></script>
阅读全文 »