当前位置: 首页 > news >正文

【腾讯云 TDSQL-C Serverless 产品测评】全面测评TDSQL-C Mysql Serverless

全面测评TDSQL-C Mysql Serverless

在这里插入图片描述

文章目录

  • 全面测评TDSQL-C Mysql Serverless
    • 前言
    • 什么是TDSQL-C Mysql Serverless
    • 初始化 TDSQL-C Mysql Serverless
      • 新建数据库
      • 建立数据表
      • 开启外网访问
    • 兼容性
      • SQL文件 导入导出
      • navicat 直接在线传输
    • 构建测试环境
      • 准备Python测试脚本
      • 准备 Jmeter 性能测试工具
    • 自动启停测试
      • 结论
    • CCU资源扩缩测试
      • 结论
    • 可靠性在测试过程中的体验
    • 总结

前言

数据库是我们开发应用不可或缺的底层基座,它负责存储和管理应用程序所需的数据。随着技术的不断进步,出现了各种新的数据库模式和解决方案,其中包括备受瞩目的 Serverless 模式。

Serverless 模式的出现改变了传统数据库的运行方式,它提供了更高的弹性和灵活性,使开发人员可以专注于应用逻辑而不必过多关注底层基础设施的管理。在 Serverless 模式下,数据库资源的变成自动扩展和按需付费,这为应用开发和运维减少了极大的成本。

这次很幸运,在 CSDN 上看到腾讯推出的 TDSQL-C 测评活动,对于资深的IT技术研发,需要时刻保持对好产品的探索,以便进一步提高企业竞争力,也同时可以对现有的知识模式进行整理。

相关活动链接传送门

在本次 TDSQL-C Serverless 数据库测评中,我将从数据库的 自动启停CCU资源扩缩兼容性 等方面进行测试,以帮助开发者和企业更好地了解和选择适合自己需求的数据库解决方案。

let's go ! 让我们开始今天的数据库测评的旅程,深入了解一下 TDSQL-C Mysql Serverless 的特性和潜力,看看到底是名副其实还是名不副实

什么是TDSQL-C Mysql Serverless

这是一种基于云平台的 Serverless MySQL 解决方案,TDSQL-C MySQL 版(TDSQL-C for MySQL)是腾讯云自研的新一代云原生关系型数据库。融合了传统数据库、云计算与新硬件技术的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。TDSQL-C MySQL 版100%兼容 MySQL 5.7、8.0。实现超百万级 QPS 的高吞吐、最高 PB 级智能存储、Serverless 秒级伸缩,助力企业加速完成数字化转型,保障数据的安全可靠。

Serverless 服务是腾讯云自研的新一代云原生关系型数据库TDSQL-C 的无服务器架构版,是全Serverless架构的云原生数据库。Serverless 服务支持按实际计算和存储资源使用量收取费用,不用不付费,主打一个降本增效。

初始化 TDSQL-C Mysql Serverless

首先,我们需要现在腾讯云上购买我们的 TDSQL-C Mysql Serverless,这里我选择的是

  • 版本 mysql5.7(刚好有个数据库也是5.7,方便迁移)
  • 配置 最小 0.25 最大 0.5(这里是方便我观察数据库在并发情况下的稳定性)
  • 自动启停 10分钟(设置时间太长了需要等好长时间!!所以大家根据自己的情况设置,这里因为是测评,项目的话大家可以设置时间长一点)

在这里插入图片描述

购买之后会自动启动,然后我们通过控制台的登录按钮登录进数据库:

在这里插入图片描述

新建数据库

在这里插入图片描述

建立数据表

在这里插入图片描述
这边可以选择使用界面新建,也可以选择sql窗口执行建表语句,我的建表语句如下:

CREATE TABLE `member` (`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,`title` text,`desc` longtext,`primary_key` text,`thumb_img` longtext,`tag` varchar(255) DEFAULT '',`author` varchar(255) DEFAULT '',`author_id` int(10) DEFAULT NULL,`collect_num` int(10) DEFAULT NULL,`create_date` datetime DEFAULT NULL,`update_date` datetime DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8

开启外网访问

为了方便程序开发连接,我们还是需要开启一下外网访问的:
在这里插入图片描述

兼容性

SQL文件 导入导出

这边我准备直接将我现有的博客数据库迁移到 TDSQL-C Mysql Serverless
在这里插入图片描述
在这里插入图片描述

  • 直接通过DMC进行数据库导入

在这里插入图片描述

在这里插入图片描述

是完全能够正常兼容导入,0 errors!!!

顺便去看一下我的博客是不是真的运行正常,哈哈!!
在这里插入图片描述

ok,文章都还在,靠谱!!

navicat 直接在线传输

平时我还挺喜欢用一些数据库客户端进行数据传输的,这次试一下通过在 navicat 中是否能够正常传输

在这里插入图片描述
在这里插入图片描述
这个也是毫无压力,平稳过渡了属于是!!!

构建测试环境

为了方便之后的 自动启停测试CCU扩缩测试,这里我准备了一个 Python 的 API 程序,主要功能就是网数据库中插入数据,然后也下载了专门的测试工具:jmeter,方便观察我们的测试结果

准备Python测试脚本

  • main.py
import random
import pymysqlfrom flask import Flaskapp = Flask(__name__)DB_CONFIG = {'host': 'sh-cynosdbmysql-grx','port': 26949,'user': 'root','password': 'x','db': 'test',
}def randomStr(length):seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_"return ''.join(random.choices(seed, k=length))def insert():data = []connection = pymysql.connect(**DB_CONFIG)cursor = connection.cursor()# 构造插入语句insert_query = """INSERT INTO member (`title`, `desc`, `primary_key`, `thumb_img`, `tag`,  `author`, `author_id`, `collect_num`, `create_date`, `update_date`)VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)"""# 读取图片文件num = random.randint(1,10)# with open("./pic/" + str(num) + ".jpg", "rb") as image_file:#     encoded_string = base64.b64encode(image_file.read())encoded_string = randomStr(100)  # 构造插入数据insert_d = (randomStr(5), randomStr(5), randomStr(10), encoded_string, randomStr(10), randomStr(10), 1,1, '2023-01-01', '2023-01-01')data .append(insert_d)data .append(insert_d)# 执行插入语句cursor.executemany(insert_query, playlist_data)connection.commit()# 关闭连接cursor.close()connection.close()print("数据插入成功")@app.route('/create')
def create():insert()return 'hello world'if __name__ == '__main__':app.run(host='127.0.0.1',port=5000)

这个脚本很简单,主要就是通过 flask 暴露api,然后调用 inert 函数插入两条数据,在使用前还需要安装依赖哦

pip install flask pymysql

准备 Jmeter 性能测试工具

点击下载

  • 创建 Test Plan
    在这里插入图片描述
  • 设置一下线程数和监听结果的一些数据输出

在这里插入图片描述

这样我们的环境就大致准备好了!!!

自动启停测试

Serverless 服务支持自定义实例自动暂停时间,无连接时实例会自动暂停。当有任务连接接入时,实例会秒级无间断自动唤醒。

首先我们购买了 TDSQL-C Mysql Serverless 后,默认是启动的,一段时间数据库没有接收到任务后,就会变成暂停状态,这个我们可以手动暂停,也可以等他自动暂停:

在这里插入图片描述
这个时候就已经暂停了!那么我们的预期是:不需要我们手动启动这个数据库,通过脚本发起请求,然后数据库就会自动启动并且正常提供服务!!

本地现将 flask 启动起来

python main.py* Serving Flask app 'test'* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.* Running on http://127.0.0.1:5000
Press CTRL+C to quit
  • 配置一下请求地址

在这里插入图片描述

  • 启动该线组,观察结果树

在这里插入图片描述

  • 观察python脚本情况

在这里插入图片描述

  • 数据库智能管家观察性能状态

在这里插入图片描述

结论

根据这个的测试结果,我们可以得出结论:TDSQL-C MySQL Serverless能够实现完全自动的启停功能。尽管在第一个握手请求时可能会出现失败的情况,但这并不会对数据库的正常运行产生任何实质性的影响。在真实的业务场景中,由于存在大量的请求,数据库几乎不会出现服务暂停的情况。

TDSQL-C MySQL Serverless通过采用一系列的机制和流程,实现了高可用性和自动化的启停功能。即使在数据库实例暂停的状态下,它仍能够保持对外提供服务。它是如何实现的呢?感兴趣的小伙伴可以去官方文档上找一下资料,这里我引用一部分给大家看看:

在实例暂停的状态下,如果有连接发起,MySQL 客户端首先会同 perceptron 进行 TCP 握手(P0),完成 TCP
握手后,perceptron 会向客户端发送 “随机数 A” 进行挑战(P1),MySQL 客户端用自己的账号密码和 “随机数 A”
来计算并回复自己的 “登录解答 A”(P2)。由于 perceptron 并没有存储用户的账号密码,所以无法校验 “登录解答 A”
是否正确,但 perceptron 能区分客户端是 MySQL 客户端,还是其他类型的客户端(perceptron
在机器学习界是分类器,区分不同类型的客户端也是用他命名的原因之一)。校验 “登录解答 A” 将由 TDSQL-C MySQL
版计算层(下文简称 TDSQL-C)来完成,perceptron 通过管控唤醒 TDSQL-C 后(P3),开始下一步的登录校验流程。 在和
perceptron TCP 握手之后(P4),对于 TDSQL-C 来说,perceptron 也是一个普通的 MySQL
客户端,所以也发送一个 “随机数 B” 挑战(P5)给 perceptron。Perceptron 的回复是一个特殊的 MySQL
报文(P6),首先它用 “随机数 B” 和 perceptron 自身的鉴权机制计算得到 “登录解答 B” 并放入报文中,其次它也将
“随机数 A” 和 “登录解答 A” 捎带在此报文中。 TDSQL-C 收到特殊的解答报文后会做两次校验,第一次是 “随机数 B” 和
“登录解答 B” 的正确性以及 perceptron 的身份,通过后再进行第二次的 “随机数 A” 和 “登录解答 A”
的正确性,通过即以用户身份进行登录,并回复 perceptron 登录成功(P7)。Perceptron 进而回复用户登录成功(P8)。
当集群处于暂停状态时,仅保留 perceptron 的路由,当集群恢复后时,系统同时保留 perceptron 的路由和 TDSQL-C
的路由,并设置 perceptron 的路由权重为 0,以实现新增连接直连到 TDSQL-C,同时存量与perceptron
已经建连的连接依然能够通讯。

CCU资源扩缩测试

CCU(TDSQL-C Compute Unit)Serverless 的计算计费单位,一个 CCU 近似等于1个 CPU2GB 内存的计算资源,每个计费周期的 CCU 使用数量为:数据库所使用的 CPU 核数 与 内存大小的1/2 二者中取最大值。

Serverless 服务需要设定弹性范围,就像我们当时购买时设置的 min为 0.25 max为0.5

这里官方建议在第一次设置弹性范围时,最小容量配置为0.25 CCU,最大容量选择较高的值。较小的容量设置可以让集群在完全空闲时最大限度地进行缩减,避免产生额外的费用,较大的容量可以在集群负载过大时最大限度地进行扩展,稳定度过业务峰值。

为了方便观察 CCU 的扩缩情况,我把 Max 改成了 1

  • 将配置Max改成1了

在这里插入图片描述

  • 修改脚本
     with open("./pic/" + str(num) + ".jpg", "rb") as image_file:encoded_string = base64.b64encode(image_file.read())

为了将CCU拉上去,我开始加大上传的数据,这些图片都是高清图,大小都为 10M以上

当前 CCU 情况:

在这里插入图片描述
因为最小是 0.25 然后最大是1 看看能不能动态扩容 超过 0.5

  • 30线程测试

在这里插入图片描述

  • 观察 CCU 情况

在这里插入图片描述

可以看到 CCU 遇到请求的时候,会自动拉成 min 配置,然后发现处理有压力就会自动网上扩容
  • 通过数据库智能管家DBbrain查看一下性能实施数据,可以看到压力确实是上来了

在这里插入图片描述

  • 观察jmeter相关数据

请求的处理还是很平稳的
在这里插入图片描述

在这里插入图片描述

结论

在测试中,我将最小 CCU 设置为0.25,最大CCU设置为1,然后使用JMeter构建压力测试。

测试发现,在低负载时,数据库CCU会自动缩减至最小0.25,不会造成资源浪费。当压力增加时,CCU会自动扩容,在压力达到一定程度后成功扩充至最大值1。在整个测试过程中,CCU的调整非常敏感和平滑,资源能够迅速按需分配,确保了数据库性能的稳定。

通过视图观察,可以明显看到CCU的弹性伸缩情况。在压力增大时,CCU会迅速扩容以应对请求,压力减小后也会很快缩减规模。

最终 TDSQL-C MySQL Serverless 还是成功的顶住,可以非常完好地根据实际负载情况,实现运行成本的优化和资源利用率的最大化。

可靠性在测试过程中的体验

主要可能就是在运行可靠性身上吧,我们平时在运维数据库的过程中,经常要进行程序日志监控,以及指标报警通知,这个在平时都是很麻烦的,然后我在测试的过程中,也是将代码进行修改了一下,看看腾讯云 TDSQL-C Mysql Serverless 是否能够观察到这个问题

我在测试过程中将事务的提交代码给注释掉了,不过 在控制台第一时间就捕获到了这个异常!!!实时性非常高,如下图所示

在这里插入图片描述
然后在实时的面板上也能看到

在这里插入图片描述

然后运维不是一般都要编写这段时间的运维情况嘛,然后我发现这个 TDSQL-C Serverless 可以自动设置生成健康报告,汇报数据库区间的运行状态

在这里插入图片描述

通过报告可以看到运行区间的健康等级,以及我出现了 2次未提交事务也被捕获到了

在这里插入图片描述
事件详情也被描述在文档中
在这里插入图片描述

  • 然后在诊断优化中还可以找到慢查询SQL,以便于我们进一步调优程序

在这里插入图片描述

总结

通过本次对腾讯云 TDSQL-C Mysql Serverless 的全方位测试,可以明显感受到这是一款非常优秀的云数据库产品,属于是名副其实了,它完全兼容 MySQL,可以平滑迁移现有业务;采用 Serverless 架构,弹性扩缩容,按需付费,极大降低了使用成本。

在自动启停方面,它可以实现秒级自动唤醒,即使在数据库实例停止状态下,也能够保持服务可用性。CCU 资源扩缩方面,它可以根据请求压力智能调配资源,保证数据库性能的平稳。可靠性方面,它具备故障秒级探测和智能诊断能力,可以及时发现并定位问题,生成健康报告。

使用 TDSQL-C Mysql Serverles,开发者不需过多考虑基础设施的搭建和优化,可以专注在业务开发上,极大提升了研发效率。它非常适合要求高弹性、高性能的数据库场景,如高并发、大数据量的应用。

经过这次的体验,可以看出腾讯云 TDSQL-C Mysql Serverless 是一个功能强大、性能优异、易于使用的云原生数据库产品。它可靠的服务质量、卓越的性价比、以及腾讯在云数据库领域的技术积淀,让它成为企业数字化转型过程中不可或缺的技术基石。相信从现在开始,对于许多互联网公司来说,TDSQL-C Mysql Serverless 将是云数据库建设的首选。

相关文章:

【腾讯云 TDSQL-C Serverless 产品测评】全面测评TDSQL-C Mysql Serverless

全面测评TDSQL-C Mysql Serverless 文章目录 全面测评TDSQL-C Mysql Serverless前言什么是TDSQL-C Mysql Serverless初始化 TDSQL-C Mysql Serverless新建数据库建立数据表开启外网访问 兼容性SQL文件 导入导出navicat 直接在线传输 构建测试环境准备Python测试脚本准备 Jmeter…...

Qt应用开发(基础篇)——纯文本编辑窗口 QPlainTextEdit

一、前言 QPlainTextEdit类继承于QAbstractScrollArea,QAbstractScrollArea继承于QFrame,是Qt用来显示和编辑纯文本的窗口。 滚屏区域基类https://blog.csdn.net/u014491932/article/details/132245486?spm1001.2014.3001.5501框架类QFramehttps://blo…...

数据结构-->栈

💕休对故人思故国,且将新火试新茶,诗酒趁年华💕 作者:Mylvzi 文章主要内容:详解链表OJ题 前言: 前面已经学习过顺序表,链表。他们都是线性表,今天要学习的栈也是一种线…...

强训第36天

C D C 193--1100 0001 194--1100 0010 196--1100 0100 198--1100 0110 能包括全部的且最小的为 1100 0xxx xxx为主机号,站三位 B MAC地址是绑定网卡的,全球唯一 D A C D IP网段 17为网络号 所以是 40.15.1aaa aaa(7位主机号).0 因为要划分2个子网 所以…...

PyTorch bug记录

1、RuntimeError: Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same 这个错误是因为模型的权重是在GPU上,但是输入数据在CPU上。在PyTorch中,Tensor的类型和所在的设备(CPU或GPU)需…...

js中的正则表达式(一)

目录 1.什么是正则表达式 2.正则表达式在JavaScript中的使用场景: 3.正则表达式的语法: 1.什么是正则表达式 正则表达式(Regular Expression)是用于匹配字符串中字符组合的模式。在JavaScript中,正则表达式也是对象通常用来查找、替换那些符…...

免费开源使用的几款红黑网络流量工具,自动化的多功能网络侦查工具、超级关键词URL采集工具、Burpsuite被动扫描流量转发插件

免费开源使用的几款红黑网络流量工具,自动化的多功能网络侦查工具、超级关键词URL采集工具、Burpsuite被动扫描流量转发插件。 #################### 免责声明:工具本身并无好坏,希望大家以遵守《网络安全法》相关法律为前提来使用该工具&am…...

使用Mybatis Plus进行DAO层开发

一、特性 Mybatis应该大家现在都知道,而且在项目中都在使用,因为这块ORM框架让大家能专心业务SQL的编写,数据库的连接,连接池的使用都不用关心,极大的提高了生产效率。 今天要给大家介绍的另外一款ORM框架&#xff0…...

Android中如何不编译源生模块

如果想让自己的app 替换系统的app 比如使用闪电浏览器替换系统的Browser 首先把闪电浏览器放到 vendor/rockchip/common/apps Android.mk LOCAL_PATH : $(call my-dir) include $(CLEAR_VARS)LOCAL_MODULE : Lightning LOCAL_SRC_FILES : $(LOCAL_MODULE).apk LOCAL_MODULE_C…...

安装Vue_dev_tools

Vue控制台出现Download the Vue Devtools extension for a better development experience: 下载Vue_dev_tools,这里给出网盘链接,有Vue2和Vue3的,dev_tools 以Google浏览器为例 点击设置(就是那三个点)->扩展程序->管理扩…...

【数据结构入门指南】二叉树顺序结构: 堆及实现(全程配图,非常经典)

【数据结构入门指南】二叉树顺序结构: 堆及实现(全程配图,非常经典) 一、前言:二叉树的顺序结构二、堆的概念及结构三、堆的实现(本篇博客以实现小堆为例)3.1 准备工作3.2 初始化3.3 堆的插入3.3.1 向上调…...

css实现三角形的几种方法

css实现三角形的方法:1、使用边框实现三角形,利用透明边框和实色边框的组合,可以创建不同方向和大小的三角形;2、使用伪元素实现三角形,通过使用伪元素来创建一个占据父元素一半大小的实心三角形;3、使用tr…...

❤ Vue工作常用的一些动态数据和方法处理

❤ Vue工作常用的一些动态数据和方法处理 &#xff08;1&#xff09;动态拼接相对路径结尾的svg 错误写法一 ❌ 正确写法 &#x1f646; <img :src"require(/assets//amazon/svg/homemenu${index}.svg)" style"height: 20px;display: block;margin: 0 au…...

SQLite的命令用法

学习数据库直达网站 https://www.runoob.com/sqlite/sqlite-tutorial.html&#xff08;菜鸟教程&#xff09; 这里只分享&#xff0c;基础操作&#xff0c;数据库创建打开……等等 用到查菜鸟教程即可 文章目录 学习数据库直达网站创建一个数据库方式1方式2 创建一个表格插入一…...

在jupyter notebook中使用海龟绘图

首先&#xff0c;安装ipyturtle3 ref:ipyturtle3 PyPI pip install ipyturtle3然后&#xff0c;安装ipycanvas ipycanvas是一个需要安装在与JupyterLab实例相同环境的包。此外&#xff0c;您需要安装nodejs&#xff0c;并启用JupyterLab ipycanvas小部件。 所有这些都在ipy…...

密码学学习笔记(十八):Diffie–Hellman (DH) 密钥交换

DH算法是第一个密钥交换算法&#xff0c;也是第一个得到形式化描述的公钥密码算法。 群论 DH密钥交换算法基于数学中的群论&#xff0c;群论也是当今大多数公钥密码的基础。 要使集合及其运算成为一个群&#xff0c;需要满足以下性质&#xff1a; 封闭性&#xff1a;群中两…...

Linux —— 进程间通信(管道)

目录 一&#xff0c;进程间通信 二&#xff0c;管道 匿名管道 命名管道 一&#xff0c;进程间通信 进程间通信&#xff08;IPC&#xff0c;InterProcess Communication&#xff09;&#xff0c;即在不同进程之间进行信息的传播或交换&#xff1b;由于一般进程用户地址空间是…...

python常用

环境配置 conda Conda自动补全 在终端激活conda环境的时候按tab不能自动补全activate和环境名。安装后可用tab进行补全。 安装 conda-bash-completion 插件&#xff1a;GitHub 安装方法&#xff1a; conda install -c conda-forge conda-bash-completion常用命令 #创建虚拟…...

jeecg如何创建报表并配置到菜单中

当使用jeecg创建单表之后,需要进行报表显示,并把报表配置到菜单中,该如何操作呢?下面进行详细讲解。这里以课程表这张表为例进行讲解。 一.表单创建完成,并配置好菜单栏。具体步骤略,如下图: 二.创建积木报表 1.左侧边栏展开低代码开发菜单,进入报表设计器栏目 2.进…...

Servlet+JDBC实战开发书店项目讲解第12讲:会员管理功能

ServletJDBC实战开发书店项目讲解第12讲&#xff1a;会员管理功能 实现思路&#xff1a; 显示会员列表&#xff1a; 创建一个管理页面&#xff0c;用于显示所有会员的信息。在后端&#xff0c;创建一个Servlet来处理显示会员列表的请求。在该Servlet中&#xff0c;通过JDBC从数…...

java面向对象——继承以及super关键字

继承的概念 1. 被继承的类称为父类&#xff08;超类&#xff09;&#xff0c;继承父类的类都称为子类&#xff08;派生类&#xff09; 2. 继承是指一个对象直接使用另一个对象的属性和方法&#xff0c;但是能继承非私有的属性和方法&#xff1b;(1) 构造方法不能被继承。(2) 但…...

[机缘参悟-101] :IT人 - 遵从世界本源的样子,不带个人情感、道德、认知倾向,接纳一切,你就拥有无限的力量

目录 道的本义 如来的本义 观音的本义 无为而治本质是顺势而为 儒家的本质 感悟&#xff1a; 道的本义本质&#xff1a;天地的力量和运行规律 "天地以万物为刍狗"是出自《道德经》第五十章的一句话。在这句话中&#xff0c;"天地"指的是宇宙&#x…...

C++--深度理解智能指针

PS:智能指针简单应用看这里 http://t.csdn.cn/qN7IK 1.智能指针的介绍 在C中&#xff0c;智能指针有三个版本&#xff0c;分别为&#xff1a; auto_ptr unique_ptr shared_ptr 这三个版本的智能指针中&#xff0c;shared_ptr最为完善&#xff0c;auto_ptr基本上没有太大用…...

Spring Boot使用MySQL的默认连接池

笔者在近期秋招面试的时候被问到了这个问题&#xff0c;现在简单梳理一下便于后期重新回顾&#xff0c;并加深记忆。 Spring Boot 默认使用的数据库连接池是 HikariCP(开源库地址)。 HikariCP 是目前性能最好的连接池之一&#xff0c;它具有高度的性能、可靠性和可扩展性&…...

conda使用教程

Conda介绍 conda可以理解为一个工具&#xff0c;也是一个可执行命令&#xff0c;其核心功能是包管理和环境管理。包管理与pip的使用方法类似似&#xff0c;环境管理则是允许用户方便滴安装不同版本的python环境并在不同环境之间快速地切换。 conda的设计理念 conda将几乎所有…...

什么是LLM大语言模型?

什么是LLM大语言模型&#xff1f; 大语言模型&#xff08;英文&#xff1a;Large Language Model&#xff0c;缩写LLM&#xff09;&#xff0c;也称大型语言模型&#xff0c;是一种人工智能模型&#xff0c;旨在理解和生成人类语言。它们在大量的文本数据上进行训练&#xff0…...

jenkins同一jar包部署到多台服务器

文章目录 安装插件配置ssh服务构建完成后执行 没有部署过可以跟这个下面的步骤先部署一遍&#xff0c;我这篇主要讲jenkins同一jar包部署到多台服务器 【Jenkins】部署Springboot项目https://blog.csdn.net/qq_39017153/article/details/131901613 安装插件 Publish Over SSH 这…...

(四)Doceke安装MySQL镜像+Docker启动MySQL容器

Doceke安装MySQL镜像/Docker启动MySQL容器 一、doceke安装MySQL镜像 切换到root用户&#xff0c;su root 。 1、启动Docker 启动&#xff1a;sudo systemctl start docker 停止&#xff1a;systemctl stop docker 重启&#xff1a;systemctl restart docker 查看docker运行…...

Android Studio:Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7

原项目使用jdk8&#xff0c;升级gradle后出现的该问题。 java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7at org.codehaus.groovy.vmplugin.VMPluginFactory.<clinit>(VMPluginFactory.java:43)at org.codehaus.gro…...

Spring Clould 搜索技术 - elasticsearch

视频地址&#xff1a;微服务&#xff08;SpringCloudRabbitMQDockerRedis搜索分布式&#xff09; 初识ES-什么是elasticsearch&#xff08;P77&#xff0c;P78&#xff09; 1.elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能…...

android核绑定cpuset配置与检测进程所在核cpuset方法

一、开机阶段 开机有如下阶段。抛开开机动画需要的audio、surfaceflinger等进程&#xff0c;大部分android程序是在/data分区加载完整以后开始加载。所以cpuset的配置可以在 post-fs-data之后。注意&#xff0c;init.rc的不同阶段脚本都可能覆盖前面配置的cpuset。配置好检查与…...

Lnton羚通关于如何使用nanoPC-T4 安装OpenCV?

nanoPC-T4 安装 OpenCV Note: OpenCV has been pre-installed in FriendlyCore/FriendlyDesktop (Version after 201905) and does not require manual installation. Please download the latest FriendlyCore/FriendlyDesktop Image file from the following URL: http://do…...

内存泄漏:前端开发者的噩梦——内存泄露的原因及排查

在前端开发中&#xff0c;内存泄漏是一个常见但令人头疼的问题。它会导致应用程序变得缓慢&#xff0c;不稳定&#xff0c;最终可能崩溃。本文将介绍内存泄漏的概念、常见泄漏原因以及如何排查和预防内存泄漏。 什么是内存泄漏&#xff1f; 内存泄漏是指应用程序中的内存被错…...

高效使用ChatGPT之ChatGPT客户端

ChatGPT客户端&#xff0c;支持Mac, Windows, and Linux 下载地址见文章结尾 软件截图 Windows: Mac&#xff1a; 说明 chatgpt桌面版&#xff0c;相比于网页版的chatgpt&#xff0c;最大的特色是支持历史聊天对话记录导出&#xff0c;且支持三种格式&#xff1a;PNG、PDF、…...

【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C 存储爬取的QQ音乐歌单数据

【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C 存储爬取的QQ音乐歌单数据 文章目录 【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C 存储爬取的QQ音乐歌单数据前言出现的背景一、TDSQL-C数据库是什么&#xff1f;二、TDSQL-C 的特点三、TDSQL-C的应用场景四、基于TD…...

leetcode 6450. k-avoiding 数组的最小总和

给你两个整数 n 和 k 。 对于一个由 不同 正整数组成的数组&#xff0c;如果其中不存在任何求和等于 k 的不同元素对&#xff0c;则称其为 k-avoiding 数组。 返回长度为 n 的 k-avoiding 数组的可能的最小总和。 示例 1&#xff1a; 输入&#xff1a;n 5, k 4 输出&#…...

变压器绝缘油耐压试验

试验目的 绝缘油是电气设备常用的绝缘、 灭弧和冷却介质。 为保证它在运行过程中具有良好的性能&#xff0c; 必须定期对其进行各项试验&#xff0c; 尤其是耐压试验。 绝缘油的耐压试验是在专用的击穿电压试验器中进行的&#xff0c; 试验器包括一个瓷质或玻璃油杯、 两个直径…...

Windows控制台API官方文档

2023年8月21日&#xff0c;周下午 中文文档&#xff1a;控制台函数 - Windows Console | Microsoft Learn 英文文档&#xff1a;Console Functions - Windows Console | Microsoft Learn...

PyTorch DataLoader 报错 “DataLoader worker exited unexpectedly“ 的解决方案

注意&#xff1a;博主没有重写d2l的源代码文件&#xff0c;而是创建了一个新的python文件&#xff0c;并重写了该方法。 一、代码运行日志 C:\Users\Administrator\anaconda3\envs\limu\python.exe G:/PyCharmProjects/limu-d2l/ch03/softmax_regression.py Traceback (most r…...

【AI绘画--七夕篇】:七夕特别教程,使用SDXL绘制你的心上人(Stable Diffusion)(封神榜—妲己)

目录 前言0、介绍0-0、结果展示0-1、Stable Diffusion0-2、sdxl介绍 一、云端部署Stable Diffusion1-1、云端平台的优势 二、平台介绍三、注册账号并且开始炼制3-1、购买算力并创建工作空间3-2、启动工作空间3-3、应用市场一键安装3-4、使用Stable-Diffusion作图 四、有女朋友的…...

hadoop2的集群数据将副本存储在hadoop3

在 Hadoop 集群中&#xff0c;HDFS 副本是分布式存储的&#xff0c;会存储在不同的节点上。因此&#xff0c;如果您的 HDFS 所在路径是在 Hadoop2 集群中&#xff0c;您可以在 Hadoop3 集群上添加新的节点&#xff0c;并向 Hadoop3 集群中添加这些新节点上的数据副本。 以下是…...

c# ??=

空合并运算符 ??&#xff0c;用于定义引用类型和可空类型的默认值。如果此运算符的左操作符不为Null&#xff0c;则此操作符返回左操作数&#xff0c;否则返回右操作数。 例如&#xff1a; //当a不为空时返回a&#xff0c;为null时返回b var c a ?? b;空合并赋值运算符??…...

存储系统性能优化中IOMMU的作用是什么?

一、IOMMU原理 IOMMU(Input/Output Memory Management Unit)是一种用于管理计算机内存的技术,它允许将物理内存映射到虚拟地址空间。IOMMU通过使用专用的硬件来管理和优化内存访问,从而提高系统性能和稳定性。本文将详细介绍IOMMU的原理,并介绍一些应用案例和典型的问题解…...

localhost:8080 is already in use

报错原因&#xff1a;本机的8080端口号已经被占用。因为机器的空闲端口号是随机分配的&#xff0c;而idea默认启动的端口号是8080,所以是存在这种情况。 对于这个问题&#xff0c;我们只需要重启idea或者修改项目的启动端口号即可。 更推荐第二种。对于修改项目启动端口号&…...

机器学习深度学习——NLP实战(自然语言推断——数据集)

&#x1f468;‍&#x1f393;作者简介&#xff1a;一位即将上大四&#xff0c;正专攻机器学习的保研er &#x1f30c;上期文章&#xff1a;机器学习&&深度学习——NLP实战&#xff08;情感分析模型——textCNN实现&#xff09; &#x1f4da;订阅专栏&#xff1a;机器…...

攻防世界-simple_php

原题 解题思路 flag被分成了两个部分&#xff1a;flag2&#xff0c;flag2。获得flag1需要满足变量a0且变量a≠0&#xff0c;这看起来不能实现&#xff0c;但实际上当变量a的值是字符时&#xff0c;与数字比较会发生强制类型转换&#xff0c;所以a为字符型数据即可&#xff0c;变…...

2023MyBatis 八股文——面试题

MyBatis简介 1. MyBatis是什么&#xff1f; MyBatis 是一款优秀的持久层框架&#xff0c;一个半 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及 获取结果集。MyBa…...

解决出海痛点:亚马逊云科技助力智能涂鸦,实现设备互联互通

今年6月&#xff0c;《财富》&#xff08;中文版&#xff09;发布“2023年值得关注的中国出海主力”盘点&#xff0c;在七个赛道中聚焦不断开拓新领域、影响力与日俱增的出海企业。涂鸦智能顺利入选&#xff0c;作为一家全球化公司&#xff0c;相比于产品直接到海外销售的传统出…...

国际刑警组织逮捕 14 名涉嫌盗窃 4000 万美元的网络罪犯

Bleeping Computer 网站披露&#xff0c;4 月份&#xff0c;国际刑警组织发动了一起为期四个月&#xff0c;横跨 25 个非洲国家的执法行动 “Africa Cyber Surge II”&#xff0c;共逮捕 14 名网络犯罪嫌疑人&#xff0c;摧毁 20000 多个从事勒索、网络钓鱼、BEC 和在线诈骗的犯…...

MySQL卸载-Linux版

MySQL卸载-Linux版 停止MySQL服务 systemctl stop mysqld 查询MySQL的安装文件 rpm -qa | grep -i mysql 卸载上述查询出来的所有的MySQL安装包 rpm -e mysql-community-client-plugins-8.0.26-1.el7.x86_64 --nodeps ​ rpm -e mysql-community-server-8.0.26-1.el7.x86_64 -…...