交换排序 冒泡 和快速 的实现
Grafana 系列文章(十二):如何使用Loki创建一个用于搜索日志的Grafana仪表板
概述 创建一个简单的 Grafana 仪表板, 以实现对日志的快速搜索. 有经验的直接用 Grafana 的 Explore 功能就可以了. 但是对于没有经验的人, 他们如何能有一个已经预设了简单的标签搜索的仪表板,以帮助一些团队在排除故障时快速找到他们正在寻找的东西。虽然 Explore 很适合这 ......
SpringBoot学习笔记 - 构建、简化原理、快速启动、配置文件与多环境配置、技术整合案例
【前置内容】Spring 学习笔记全系列传送门: Spring学习笔记 - 第一章 - IoC(控制反转)、IoC容器、Bean的实例化与生命周期、DI(依赖注入) Spring学习笔记 - 第二章 - 注解开发、配置管理第三方Bean、注解管理第三方Bean、Spring 整合 MyBatis 和 ......
k8s部署canal-1.1.6版本实现MySQL数据库数据同步
1、版本说明 软件&镜像 版本&镜像信息 说明 Kubernetes v1.23.7 k8s服务器 Kuboard v3.5.2.0 k8s连接管理工具 Canal v1.1.6 数据同步 Canal-deployer canal/canal-server:latest canal-deplyer镜 ......
《深入理解Java虚拟机》第三章读书笔记(二)——HotSpot垃圾回收算法实现(OopMap,安全点安全区域,卡表,写屏障,三色标记算法)
系列文章目录和关于我 前面《深入理解Java虚拟机》第三章读书笔记(一)——垃圾回收算法我们学习了垃圾回收算法理论知识,下面我们关注下HotSpot垃圾回收算法的实现,分为以下几部分 对象是垃圾的判断依据 GC Roots 是如何高效扫描的 如何解决跨代引用对象的垃圾回收问题 如何降低垃圾回收STW ......
聊聊JUC包下的底层支撑类-AbstractQueuedSynchronizer(AQS)
聊聊JUC包下的底层支撑类-AbstractQueuedSynchronizer(AQS) juc包下的一堆并发工具类是我们日常开发特别是面试中常被拿来问的八股文之一,为了工作也好,为了面试也罢,今天开始想尝试着把这些给大伙描述明白,所以开始写下这篇博文,如果后续要涉及每个常用类的源码的话可能会是一 ......
鸿蒙系统应用开发之基于API6的蓝牙开发
写在前面 由题意得,我今天讲的是基于鸿蒙系统的兼容JS的类Web开发范式的软件应用开发之蓝牙开发,它是基于API6的,至于为什么是基于API6,请你花几分钟看一下我之前写的这个系列教程的第四篇“ 鸿蒙系统应用开发之入门解说",地址是:https://www.yuque.com/ataola/cpts ......
现代图片性能优化及体验优化指南 - 图片类型及 Picture 标签的使用
图片资源,在我们的业务中可谓是占据了非常大头的一环,尤其是其对带宽的消耗是十分巨大的。 对图片的性能优化及体验优化在今天就显得尤为重要。本文,就将从各个方面阐述,在各种新特性满头飞的今天,我们可以如何尽可能的对我们的图片资源,进行性能优化及体验优化。 图片类型的选取及 Picture 标签的使用 首 ......
浙江某男子对多端应用开发工具HBuilderX在windows下安装的解说
同学,学uni-app好啊,大致上写一套代码能生成这么多个平台的应用,我简单念一下,它们分别是Android应用、IOS应用、Web应用、微信小程序、支付宝小程序、百度小程序、字节跳动小程序、快应用、qq小程序、360小程序、快手小程序、飞书小程序、钉钉小程序、京东小程序。 哇偶!好好好,图省力那你 ......
深度剖析 Linux 伙伴系统的设计与实现
在上篇文章 《深入理解 Linux 物理内存分配全链路实现》 中,笔者为大家详细介绍了 Linux 内存分配在内核中的整个链路实现: 但是当内核执行到 get_page_from_freelist 函数,准备进入伙伴系统执行具体内存分配动作的相关逻辑,笔者考虑到文章篇幅的原因,并没有过多的着墨,算是 ......
聊一聊非对称加密在接口参数中的简单实现
背景 接口层做数据加密应该算是老生常谈的一件事了,业界用的比较多的,不外乎是对称加密,非对称加密以及两者的结合。 对称加密,比较有代表性的就是 AES,密钥只有一个,客户端和服务端都要进行存储,但是对客户端来说,比较容易泄露,需要定期进行更换。 非对称加密,比较有代表性的就是 RSA,有公钥和私钥, ......
详解 Gulp4 和 Gulp3 的区别
最近在开发几个网站,为了优化一下前端代码,就复习一下gulpjs,之前工作gulp用的版本比较老,但是今天看了新的版本,新的语法出了一下,但是为了时间,我决定使用之前gulp3的旧版本,后面发现自己环境的node的版本是最新的,所以不得让我来了解一下gulp的新版本,里面用到的最多就是commonj ......
可能是最简单的本地GPT3 对话机器人,支持OpenAI 和 Azure OpenAI
毫无疑问,GPT是目前最火的人工智能方向,已经商用的有OpenAI公司原生的GPT3 和 ChatGPT ,以及微软公司的Azure OpenAI Service (暂时还没有包含ChatGPT)。关于他们的各种资料以及讨论(甚至争论),网上已经有很多了。我这里不准备重复。本文分享的一个是我自己为了 ......
产研指南针的量化指标实践笔记
背景 在公司和业务发展到一定阶段,高层管理者会逐步期望从直觉化的管理逐步转向量化的关键指标管理;同时从hr层面okr和kpi的考核逐步从直觉化的定性考核,转变为数据化指标考核为主做评估和分析。此时中层管理者要实践关键指标读取和分析,及对团队成员从长期关注,变成短期快速反馈并推进绩效改进。 难点 1. ......
使用prometheus来避免Kubernetes CPU Limits造成的事故
使用prometheus来避免Kubernetes CPU Limits造成的事故 译自:Using Prometheus to Avoid Disasters with Kubernetes CPU Limits 本文将介绍Kubernetes的resource limits是如何工作的、使用哪些 ......
基于 Ubuntu 服务器配置原生的 Socks5 网关代理服务器
常见的代理协议有 http、https、socks4/5 这三种,http协议的代理搭建方案最简单,但是http代理无法访问https网站,https代理无法实现调用远端dns,所以我个人推荐使用Scoks5协议做代理,本文用于记录在Ubuntu系统中搭建Socks5代理的详细步骤,采用dante- ......
阿里云产品-图像搜索快速测评
本文介绍了图像搜索产品的背景、原理和使用过程都已经叙述完毕了,个人感觉阿里云的图像搜索这款产品的识别准确率还不错,但是返回结果的可视化功能还有待提升,目前是纯 `json` 形式的字符串返回结果,不如直接图片上添加文字和方框形式的返回结果直观。 ......
Dubbo 入门系列之快速部署一个微服务应用
本文将基于 Dubbo Samples 示例演示如何快速搭建并部署一个微服务应用。 背景 Dubbo 作为一款微服务框架,最重要的是向用户提供跨进程的 RPC 远程调用能力。如上图所示,Dubbo 的服务消费者(Consumer)通过一系列的工作将请求发送给服务提供者(Provider)。 为了实现 ......
Java实现BP神经网络MNIST手写数字识别
Java实现BP神经网络,内含BP神经网络类,采用MNIST数据集,包含服务器和客户端程序,可在服务器训练后使客户端直接使用训练结果,界面有画板,可以手写数字 ......
Windows下使用Graalvm将Springboot应用编译成exe大大提高启动和运行效率
GraalVM安装 GraalVM安装 安装 请前往GraalVM官网 下载 GraalVM Community 22.3,注意当前支持的Springboot的GraalVM版本必须是22.3 笔者这里下载的Java版本为17,如下图 安装GraalVM的方法与安装JAVA方法大致相同,GraalV ......
单线程架构的Redis如此之快的 4 个原因
前言 作为内存中数据存储,Redis 以其速度和性能着称,通常被用作大多数后端服务的缓存解决方案。 但是,在内部,Redis 采用单线程架构。 为什么单线程设计依然会有这么高的性能?如果利用多线程并发处理请求不是更好吗? 在本文中,让我们深入探讨为什么 Redis 才有单线程架构,依然如此之快,主要 ......
基于Docker安装的Stable Diffusion使用CPU进行AI绘画
基于Docker安装的Stable Diffusion使用CPU进行AI绘画 由于博主的电脑是为了敲代码考虑买的,所以专门买的高U低显,i9配核显,用Stable Diffusion进行AI绘画的话倒是专门有个CPU模式,不过安装过程经历了许多坎坷,特此记录一下 博主的环境是Windows 11附带 ......
Java集合 Map 集合 与 操作集合的工具类: Collections 的详细说明
Map 接口与 Collection 并列存在的,用于保存具有映射关系的数据:key-value 被称为 键值对 。Java集合可分为 Collection 和 Map 两种体系。Map 中的 key 和 value 都可以是任何引用类型的数据。Map 中的 key 用 Set 集合存储的,不允许... ......
容器镜像仓库-Harbor的安装及踩坑
之前实验室的师兄让我帮忙给服务器上装一个Harbor,花了不少时间,遂记录之,以避坑。 在学习使用Harbor之前,需要了解Docker的使用,可以看看我之前的博客:应用容器引擎-Docker、Dockerfile详解,在此之后,你还需要知道如何部署一个前后端分离的项目:部署实战-Docker+ng ......
SOFAJRaft源码阅读(肆)-Netty时间轮算法的实践
SOFAJRaft的定时任务调度器是基于Netty来实现的,所以本文将会基于Netty时间轮算法,然后再结合SOFAJRaft源码进行分析。 @Author:Akai-yuan @更新时间:2023/1/29 1.HashedWheelTimer概览 一个时间轮算法的组成成分图: 一个基于Netty ......
Java JDK1.5: 泛型 新特性的讲解说明
Java JDK1.5: 泛型 新特性的讲解说明 每博一文案 听到过这样一句话:“三观没有标准。在乌鸦的世界里,天鹅也有罪。” 环境、阅历的不同,造就了每个人独有的世界观、人生观、价值观。 三观并无对错高下,只有同与不同。恰如飞鸟不用和游鱼同行,高山不必同流水相逢。 总用自己的尺子去度量别人,无疑是 ......
云端智创 | 基于视频AI原理的音视频智能处理技术
本文内容整理自「智能媒体生产」系列课程第二讲:视频AI与智能生产制作,由阿里云智能视频云高级技术专家分享视频AI原理,AI辅助媒体生产,音视频智能化能力和底层原理,以及如何利用阿里云现有资源使用音视频AI能力。课程回放见文末。 01 算法演进:视频AI原理 在媒体生产的全生命周期中,AI算法辅助提升 ......
下一代编解码技术Ali266在视频超高清领域的应用展望
超高清与各领域的需求融合和创新正在发生。 2022年是一个体育大年,众多世界级体育赛事通过视频直播、转播等形式给观众带来畅爽的观看体验。 2022年北京冬奥会,实现了奥运会历史上首次赛事全程4K制作播出,并在开幕式上提供了8K超高清公共信号,让观众可以享受到超高清视频带来的更加清晰、真实和沉浸的比赛 ......
SOFAJRaft源码阅读-RheaKV的初始化与Multi-RAFT-GROUP模式
SOFAJRaft的SOFAJRaft-RheaKV 是基于 SOFAJRaft 和 RocksDB 实现的嵌入式、分布式、高可用、强一致的 KV 存储类库。SOFAJRaft-RheaKV 集群主要包括三个核心组件:PD,Store 和 Region。 @Author:Akai-yuan @更新时 ......
[数据结构] 二叉搜索树 (二叉排序树)
#二叉搜索树 ##二叉搜索树的基本概念 二叉搜索树( Binary Search Tree )也称二叉排序树,是一种各节点值之间存在一定次序关系的二叉树。 ##二叉搜索树的特点 一般情况下,二叉搜索树中所有节点值是不重复的。 对于二叉搜索树中的每个节点: (1)如果其左子树不为空,那么其左边的节点值 ......
使用docker安装hadoop(已实现)
1.拉镜像 这里推荐第一个 docker pull registry.cn-hangzhou.aliyuncs.com/hadoop_test/hadoop_base 或者 docker pull qianiqan/hadoop_only 2.创建容器 三个容器的名称分别是Master、Slave1 ......