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

工业公辅车间数智化节能头部企业,蘑菇物联选择 TDengine 升级 AI 云智控

小T导读:在工业节能和智能化转型的浪潮中,蘑菇物联凭借其自研的灵知 AI 大模型走在行业前沿,为高能耗设备和公辅能源车间提供先进的 AI 解决方案。此次采访聚焦于蘑菇物联与 TDengine 的合作项目,通过 AI 云智控平台的建设,双方携手推动制造工厂的能源数智化管理,助力企业实现节能降碳。在本文中,我们将深入探讨蘑菇物联选择 TDengine的原因、项目实施中的挑战与解决方案,以及合作视角下双方的未来愿景。

在工业场景中,传统人工经验的控制方法较粗放,如开工后设备常开、设备参数设置不合理、设备运行组合不合理、冗余供能等情况,这些情况往往造成设备低效运行和巨大的能源浪费。加强组织精益管理能力是一个改善点,更重要的是推动基于数据的数智化管理方法和工具在工厂落地,工厂才能充分发挥数据价值,实现降本增效提产提质。

蘑菇物联是一家工业AI科技公司,聚焦工业高能耗的通用工业设备以及由这些设备组成的公辅能源车间,自主研发通用工业设备领域专用的AI大模型——灵知AI,率先把人工智能技术引入工业节能场景,全面采集通用设备、公辅车间数据,建模分析计算工厂能源供给端与需求端数据,解决工厂“冗余供能”的难题,实现按需供能,为工业企业创造安全供能、无人值守、可持续节能降碳三大可测量价值。

蘑菇物联自主研发的公辅能源云智控节能管理平台,可实现设备级-车间级-工厂级-集团级四层架构的能源管理与节能控制优化,尤其针对空压站、制冷站等重点耗能场景进行控制优化节能,并且实现数据驱动的预测性维护。该平台支持灵活的模块化部署,既可以按场景拆分独立部署,也可支持组合部署以覆盖水、电、气、冷等不同类型的能源场景。同时,通过多租户模式为客户提供服务,目前已服务超1600多家工业企业,每天处理约100GB的IoT数据。

在服务工业企业数智化转型的过程中,蘑菇物联面临的客户场景,既有行业共性,又有业务的独特性,并且“作为一个平台型产品,数据存储需要与业务场景解耦,支持动态定义字段名称。”蘑菇物联研发负责人解释道。在公辅场景中,由于设备种类繁多、品牌各异,IoT数据量天级超过百G,管理与数据处理面临一定挑战,主要存在三个核心需求:

首先,对于同一类型的设备而言,各个设备的参数编码并不固定。虽然核心参数可以通过物模型进行标准化处理,但部分参数是特定型号设备才具备的。因此,系统需要具备支持动态数据入库的能力,以确保这些特有参数的数据也能被完整记录和分析。同时,为了适应业务发展和场景需求的变化,系统还需要支持新的设备类型的快速接入。这意味着在数据结构上必须具备灵活性,能够根据不同设备的特性动态新增字段,确保新设备接入后的数据也能无缝整合到现有系统中。

其次,在每天接入超百G数据的情况下,需要保证提供给客户的数据响应时间在200毫秒级,因此系统需要具备超强的数据查询实时响应性能和较高的可用性。

  • “我们的客户既有公有云部署需求,也有私有云部署的需求。”为了确保开发和运维效率的一致性,因此要求数据库具备支持从小规模私有化部署到大规模云端集群的能力。

蘑菇物联在项目实践中尝试过多种数据库,如 OpenTSDB、HBase、InfluxDB 及某云厂商 TSDB,每种数据库各有特点,最终经过综合考虑高性能、稳定性和数据压缩率等因素后,蘑菇物联选择与TDengine合作。

1.虚拟表结构的设计

由于 AI 云智控平台需要接入大量不同类型的设备数据,其中一些设备可能包含成千上万的 code 字段,且无法预先确定其上报的字段结构。在这种情况下,蘑菇物联无法使用 TDengine 的超级表模型(因字段结构不确定且列数有限制)。

为了解决这一问题,蘑菇物联采纳了TDengine 团队的建议,采用普通表模型,并为每个设备建立字段映射关系(将 code 映射到子表 ID 和列名),从而实现了设备级的 Schema-less 存储,同时突破了列数限制。

2.高并发数据查询性能

“我们每个租户都会构建大量复杂的业务指标,并通过流式和批量方式将数据写入时序数据库。在实际业务查询中,往往需要对数百上千个业务指标进行二次加工。简单的二次加工直接在时序数据库内完成,而复杂的计算则在业务系统的内存中处理。因此,这对数据库整体性能提出了极高要求,需要确保其在数据写入与查询过程中的高效性和稳定性,才能满足复杂业务场景的需求。”

为验证所选时序数据库的性能,蘑菇物联在 8 核 CPU、32GB 内存单机配置下,对 TDengine(版本 3.2.3.0)、InfluxDB 开源版 1.8 和 InfluxDB 开源版 2.7 进行了查询性能的对比测试。

“总体而言,除了在查询大量明细数据时表现稍弱外,TDengine 在其他聚合场景的查询性能均明显优于 InfluxDB 开源版 1.8 和 2.7,提升幅度达 3-10 倍,完全满足我们的性能需求。相比 HBase 和 InfluxDB,TDengine 使大多数复杂数据查询的响应时间从秒级缩短至毫秒级,复杂报表的性能也得到了显著提升,极大地优化了产品的用户体验。这点让我们非常惊艳。”

3.云端与私有化部署的统一性

“TDengine在保证数据库单机性能的前提下,开源支持了集群化部署的能力,且基于C++语言开发,可以在资源受限的环境中部署,基于上述两点特性,可以满足我们公有云和私有云部署的架构一致性。”

4.大量指标的流/批输出和高效查询

“在我们的典型场景中,采集到的物联网数据会经过多维度的数据加工,不同的业务场景由此生成多种类型的指标。例如,电量和电费计算、折煤折碳计算、设备运行时长统计、稼动率分析、设备单机能效评估、空压站气电比、中央空调站 COP、单位产品能耗、万元产值、压力和流量预测、节能率计算等场景。”

部分指标通过流批计算直接存入数据库,另一些则需基于原始数据进行查询时二次加工。为应对这些复杂场景,蘑菇物联定制了多种复杂内置函数,以满足业务对数据处理的多样化需求。这些操作对时序数据库的写入和查询效率提出了严格要求。经过多轮验证,TDengine 在写入与查询性能上表现出色,很好地满足了蘑菇物联的业务需求。

未来展望

“TDengine 为我们的项目带来了更高的性能和灵活性,同时在云端与私有化部署方面也让开发和运维更加高效。”蘑菇物联团队表示,“在未来的合作中,我们期待与 TDengine 一起,为更多的企业创造更大的价值。”

展望未来,蘑菇物联计划在五年内连接 300 万台通用工业设备,帮助 3 万家企业完成数智化转型。通过深化与 TDengine 的合作,蘑菇物联将继续探索更多节能降碳场景,为社会的可持续发展贡献力量。

接下来,TDengine 也将继续专注于提升时序数据的处理能力,为各行业提供高效、灵活的数据解决方案。不论是在物联网、工业互联网,还是在智能制造等领域,TDengine 希望通过技术创新和不断优化,为用户带来更卓越的体验,与企业一同把握机遇,共同推动数字化时代的发展。

相关文章:

工业公辅车间数智化节能头部企业,蘑菇物联选择 TDengine 升级 AI 云智控

小T导读:在工业节能和智能化转型的浪潮中,蘑菇物联凭借其自研的灵知 AI 大模型走在行业前沿,为高能耗设备和公辅能源车间提供先进的 AI 解决方案。此次采访聚焦于蘑菇物联与 TDengine 的合作项目,通过 AI 云智控平台的建设&#x…...

【Linux】开启你的Linux之旅:初学者指令指南

Linux相关知识点可以通过点击以下链接进行学习一起加油! 在 Linux 开发中,GDB 调试器和 Git 版本控制工具是开发者必备的利器。GDB 帮助快速定位代码问题,Git 则提供高效的版本管理与协作支持。本指南将简明介绍两者的核心功能与使用技巧&…...

Vite 6.0 发布:引领现代前端开发新方向

Vite 6.0 带来了大量更新与优化,旨在简化开发流程、提升性能,并解决现代 Web 开发中的诸多挑战。本次更新引入了 实验性环境 API 和现代化的工具链,进一步巩固了 Vite 作为开发者首选工具的地位。以下是关于新特性、生态发展以及重要更新的全…...

深入了解阿里云 OSS:强大的云存储解决方案

在现代互联网应用中,数据存储是一个不可忽视的环节。随着数据量的不断增长,传统的存储方式已经无法满足高速、低成本、大容量的需求。阿里云 OSS(对象存储服务)作为一种高性能、低成本且具备高度扩展性的云存储服务,已…...

canvas绘制网络地址图片

canvas在绘制网络地址图片时,需要先下载成临时路径 export function downLoadBgImg (url) {return new Promise((r,j) > {uni.downloadFile({url,success : res > {if (res.statusCode 200) {r(res.tempFilePath);return;};j(依赖文件下载失败);},fail : er…...

《DSL-FIQA》论文翻译

《DSL-FIQA: Assessing Facial Image Quality Via Dual-Set Degradation Learning and Landmark-Guided Transformer》 原文链接:DSL-FIQA: Assessing Facial Image Quality via Dual-Set Degradation Learning and Landmark-Guided Transformer | IEEE Conference…...

【Linux网络编程】第四弹---构建UDP服务器与字典翻译系统:源码结构与关键组件解析

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】【Linux网络编程】 目录 1、UdpServer.hpp 1.1、函数对象声明 1.2、Server类基本结构 1.3、构造函数 1.4、Start() 2、Dict.hpp…...

【人工智能】人工智能,深度学习与人工神经网络

人工智能 人工智能一、定义与核心要素二、主要方法与技术三、应用领域四、发展前景与挑战五、分类六、研究目标与价值 深度学习定义与核心思想网络结构工作原理关键技术与模型应用领域发展与挑战 人工神经网络一、定义与原理二、基本特性三、网络结构四、工作原理五、应用领域六…...

嵌入式系统应用-LVGL的应用-平衡球游戏 part2

平衡球游戏 part2 4 mpu60504.1 mpu6050 介绍4.2 电路图4.3 驱动代码编写 5 游戏界面移植5.1 移植源文件5.2 添加头文件 6 参数移植6.1 4 mpu6050 4.1 mpu6050 介绍 MPU6050是一款由InvenSense公司生产的加速度计和陀螺仪传感器,广泛应用于消费电子、机器人等领域…...

Linux网络编程之---多线程实现并发服务器

下面我们来使用tcp集合多线程实现并发服务器 一.服务端 #include <stdio.h> #include <arpa/inet.h> #include <unistd.h> #include <stdlib.h> #include <string.h> #include <pthread.h>typedef struct sockinfo {char ip[16];unsigne…...

架构师的英文:Architect

中文版 软件架构师 的英文是 “Software Architect”。 Software: 软件Architect: 架构师&#xff0c;通常指的是设计和规划某种系统或结构的人。 Software Architect 通常负责软件系统的整体设计、技术选型、架构规划&#xff0c;确保系统的可扩展性、可维护性和高效性等。…...

量化交易系统开发-实时行情自动化交易-8.7.文华平台

19年创业做过一年的量化交易但没有成功&#xff0c;作为交易系统的开发人员积累了一些经验&#xff0c;最近想重新研究交易系统&#xff0c;一边整理一边写出来一些思考供大家参考&#xff0c;也希望跟做量化的朋友有更多的交流和合作。 接下来会对于文华平台介绍。 文华财经…...

【前端】JavaScript 中的创建对象模式要点

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: 前端 文章目录 &#x1f4af;前言&#x1f4af;对象属性值中的引号规则&#x1f4af;对象属性换行与尾随逗号的使用&#x1f4af;工厂模式&#xff1a;灵活高效的对象创建&#x1f4af;自定义构造函数&#xff1a;通过…...

鸿蒙NEXT元服务:论如何免费快速上架作品

【引言】天下武功&#xff0c;唯快不破。 本文讨论如何免费且以最快速度上架自己的作品。 作者以自己从零开始到提交发布审核一共俩小时的操作流程分享给大家作参考。 【1】立项选择 结论&#xff1a;元服务&#xff0c;单机&#xff0c;工具类&#xff08;非游戏&#xff…...

hive3.1.3安装及基本例子

前提要安装好hadoop环境和mysql。 1、下载并解压 https://archive.apache.org/dist/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz 下载bin包到/app/src中。 cd /app/src/ tar zxvf apache-hive-3.1.3-bin.tar.gz mv apache-hive-3.1.3-bin /app/hive2、配置path nano /etc…...

【设计模式】工厂方法模式 在java中的应用

文章目录 1. 引言工厂方法模式的定义 2. 工厂方法模式的核心概念工厂方法模式的目的和原理与其他创建型模式的比较&#xff08;如简单工厂和抽象工厂&#xff09; 3. Java中工厂方法模式的实现基本的工厂方法模式结构示例代码&#xff1a;创建不同类型的日志记录器 4. 工厂方法…...

【热门主题】000079 服务器虚拟化:开启高效计算新时代

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 【热…...

软考高项经验分享:我的备考之路与实战心得

软考&#xff0c;尤其是信息系统项目管理师&#xff08;高项&#xff09;考试&#xff0c;对于众多追求职业提升与专业认可的人士来说&#xff0c;是一场充满挑战与机遇的征程。我在当年参加软考高项的经历&#xff0c;可谓是一波三折&#xff0c;其中既有成功的喜悦&#xff0…...

【小白学机器学习38】用np.random 生成各种随机数,随机数数组/序列

目录 0 总结 np.random() 的一些点 1 用np.random.random() 生成[0,1) 区间内的随机数 2 生成指定范围内的随机整数/数组 np.random.randint() 3 用np.random.choice()生成指定数组范围内的随机数 3.1 np.random.choice(array6) 3.2 np.random.choice(array6) &#xff0…...

Scala的数组匹配模式

package Test32//匹配&#xff1a;数组&#xff1a;元素的个数 元素的特征 object Test4 {def main(args: Array[String]): Unit {val arr1 Array(1, 2, 3)val arr2 Array(0, 2, 3)val arr3 Array(1, 2, 3, 4)val arr4 Array(-1, 1, 2, 3, 4)val b: Any arr1b match {ca…...

力扣【算法学习day.50】

前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程&#xff08;例如想要掌握基础用法&#xff0c;该刷哪些题&#xff1f;&#xff09;我的解析也不会做的非常详细&#xff0c;只会提供思路和一些关键点&#xff0c;力扣上的大佬们的题解质量是非…...

C 语言学习的经典书籍有哪些?

学习C语言的理由 C语言是一种程席设计语言&#xff0c;它是由美国AT&T公司贝尔实验室的Dennis Ritchie于1972年发明的。C语言之所以流行&#xff0c;是因为它简单易用。学习C语言的几个理由如下&#xff1a; (1)C、C#和Java使用一种被称为面向对象程序设计(0bject-Orient…...

数据结构——栈

目录 栈的介绍 一、栈的基本概念 1.1 栈的定义 1.2 栈的常见基本操作 二、栈的顺序存储结构 2.1 栈的顺序储存 2.2 顺序栈 2.3 共享栈 三、栈的链式储存结构 3.1 链栈 3.2 链栈的进出栈操作 四、栈的应用 4.1实现斐波那契数列 一、栈的基本概念 1.1 栈的定义 栈…...

开发系统准备与开发环境配置总结

开发前系统配置及环境搭建 系统配置0 Github打不开、速度慢怎么办1 WSL、Linux、Ubuntu、Docker都是什么鬼2 在Windows下安装WSL和Ubuntu3 配置MySQL4 配置Redis并启动服务5 Docker&#xff08;Windows和Ubuntu下&#xff09;6 Nginx 系统配置 你好&#xff01; 这是你第一次使…...

bash: jstack: command not found【jps、jstack、jmap、jstats 命令不生效解决】

JVM 系列文章传送门 初识 JVM&#xff08;Java 虚拟机&#xff09; 深入理解 JVM&#xff08;Java 虚拟机&#xff09; 一文搞懂 JVM 垃圾回收&#xff08;JVM GC&#xff09; 深入理解 JVM 垃圾回收算法 一文搞懂 JVM 垃圾收集器 JVM 调优相关参数 JVM 场景面试题【强烈…...

两数之和问题——c语言

声明&#xff1a; 以下是我在leetcode上面刷题的两数之和问题&#xff0c;如涉及侵权马上删除文章 声明&#xff1a;本文主要用作技术分享&#xff0c;所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险&#xff0c;并遵循相关法律…...

《沉积与特提斯地质》

《沉积与特提斯地质》为中国地质调查局主管&#xff0c;中国地质调查局成都地质调查中心&#xff08;西南地质科技创新中心&#xff09;主办的地学类学术期刊。 《沉积与特提斯地质》创刊于1981年&#xff0c;创刊名为《岩相古地理研究与编图通讯》&#xff0c;后更名为《岩相…...

全面解析 C++ STL 中的 set 和 map

C 标准模板库&#xff08;STL&#xff09;中的关联式容器以其强大的功能和高效性成为开发者解决复杂数据组织问题的重要工具。其中&#xff0c;set 和 map 是最常用的两类关联容器。本篇博客将从基本特性、底层实现、用法详解、高级案例以及性能优化等多个角度&#xff0c;详细…...

【RL Application】语义分割中的强化学习方法

&#x1f4e2;本篇文章是博主强化学习&#xff08;RL&#xff09;领域学习时&#xff0c;用于个人学习、研究或者欣赏使用&#xff0c;并基于博主对相关等领域的一些理解而记录的学习摘录和笔记&#xff0c;若有不当和侵权之处&#xff0c;指出后将会立即改正&#xff0c;还望谅…...

MySql:Centos7安装MySql

目录 安装之前&#xff0c;清除MySql残留文件 下载MySql的官方yum源 安装MySql 服务 MySql配置 常见问题 本次安装基于Centos7&#xff0c;平台为云服务器&#xff0c;由XShell软件演示。 注意&#xff0c;请将用户切换为Root用户。 安装之前&#xff0c;清除MySql残留文…...

数据结构-散列函数的构造方法

一.数字关键词 关键词存储应该尽可能的离散 直接定址法:利用线性函数,例如上面的例子,h(key)key-1990,key1990&#xff0c;这个就被存放在0的位置 数字分析法:关键字可能有很到位组成,每一位变化可能都不一样&#xff0c;有的位是不变的,就是说不同的对象这一位都是一样的,有的…...

MySQL:DDL数据定义语言

DDL(Data Definition Language)&#xff0c;数据定义语言 对数据库的常用操作 查看所有数据库 语法&#xff1a;show databases; 创建数据库 dbname&#xff1a;用户自己定义的数据库名称。 语法&#xff1a;create database [if not exists] dbname [charsetutf8]; 切换…...

【落羽的落羽 C语言篇】指针·之其五

文章目录 一、冒泡排序二、qsort排序1. qsort使用指南2.回调函数3. qsort函数的模拟实现 一、冒泡排序 冒泡排序的核心思想就是&#xff1a;两两相邻的元素进行比较和交换。 现在&#xff0c;我们想编写一个函数&#xff0c;使它能够运用冒泡排序的原理&#xff0c;由小到大排…...

Java程序员最新场景面试题总结

上周&#xff0c;在与部门业务伙伴&#xff08;BP&#xff09;的交谈中&#xff0c;我了解到当前求职市场的一个显著现象&#xff1a;她在招聘平台上发布的初级后端岗位每日吸引了超过500份简历的投递。这一现象凸显了Java后端岗位竞争的激烈程度&#xff0c;尤其是在这个技术日…...

平衡性能与隐私:解读Google的服务器端标记

在当前数字化时代&#xff0c;企业需要深入洞察用户行为&#xff0c;以提高网站转化率。然而&#xff0c;随着用户对隐私保护的期待日益提高以及相关法规的收紧&#xff0c;如何兼顾性能与隐私成为了一大挑战。为了解决这一问题&#xff0c;Google推出了服务器端标记&#xff0…...

在云上怎么样让环境更加安全?

随着云计算的普及&#xff0c;越来越多的企业和组织将其应用迁移到云端。在这个过程中&#xff0c;安全性成为了一个不可忽视的重要因素。华为云作为全球领先的云服务提供商&#xff0c;致力于为用户提供安全可靠的云环境。本文九河云将探讨在华为云上如何增强环境的安全性。 …...

分布式实验一

Socket编程作业&#xff1a; 在Linux系统上&#xff0c;用C编两个程序&#xff1a;Client和Server。两个进程间利用socket进行TCP通信。 要求&#xff1a; Server进程运行后&#xff0c;输出本进程所在主机IP地址以及正在监听的端口号&#xff1b; Client进程运行后&#xff0c…...

网络安全防护指南

网络安全防护指南 网络安全是指保护网络系统中的硬件、软件及数据不受偶然或恶意原因而遭到破坏、更改或泄露&#xff0c;确保网络系统连续可靠地正常运行。随着互联网的普及和技术的发展&#xff0c;网络安全问题日益严峻&#xff0c;对个人、企业和国家都构成了巨大威胁。因…...

DreamCamera2相机预览变形的处理

最近遇到一个问题&#xff0c;相机更换了摄像头后&#xff0c;发现人像角度顺时针旋转了90度&#xff0c;待人像角度正常后&#xff0c;发现 预览时图像有挤压变形&#xff0c;最终解决。在此记录 一人像角度的修改 先放示意图 设备预览人像角度如图1所示&#xff0c;顺时针旋…...

【Go 基础】channel

Go 基础 channel 什么是channel&#xff0c;为什么它可以做到线程安全 Go 的设计思想就是&#xff1a;不要通过共享内存来通信&#xff0c;而是通过通信来共享内存。 前者就是传统的加锁&#xff0c;后者就是 channel。也即&#xff0c;channel 的主要目的就是在多任务间传递…...

长安汽车嵌入式面试题及参考答案

数据结构中的堆栈和编程中的堆栈有什么区别&#xff1f; 在数据结构中&#xff0c;堆栈是一种抽象的数据类型。它遵循后进先出&#xff08;LIFO&#xff09;的原则。从操作角度来看&#xff0c;有入栈&#xff08;push&#xff09;和出栈&#xff08;pop&#xff09;操作。例如…...

理解Linux的select、poll 和 epoll:从原理到应用场景

I/O 多路复用并不是什么新东西&#xff0c;select 早在 1983 年就出现了&#xff0c;poll 在 1997 年&#xff0c;epoll 是 2002 年的产物。面试题总爱问“多路复用多厉害&#xff1f;”其实它就是把轮询的锅甩给了操作系统&#xff0c;而操作系统不过是用 CPU 指令帮你完成事件…...

(一)Linux下安装NVIDIA驱动(操作记录)

目录 一、查看CUDA版本 1.输入nvidia-smi&#xff0c;查看驱动支持的最大CUDA版本&#xff0c;这里是11.6 2.输入nvcc --version&#xff0c;查看当前安装的CUDA版本&#xff0c;这里是11.3 二、卸载旧的NVIDIA驱动 1.卸载原有驱动 2.禁用nouveau&#xff08;必须&#x…...

二分法篇——于上下边界的扭转压缩间,窥见正解辉映之光(2)

前言 上篇介绍了二分法的相关原理并结合具体题目进行讲解运用&#xff0c;本篇将加大难度&#xff0c;进一步强化对二分法的掌握。 一. 寻找峰值 1.1 题目链接&#xff1a;https://leetcode.cn/problems/find-peak-element/description/ 1.2 题目分析: 题目要求返回数组内…...

移动机器人课程建图实验-ROSbug汇总

问题1描述 $ rosrun robot_state_publisher robot_state_publisher [ERROR] [1733131886.474757207]: [registerPublisher] Failed to contact master at [localhost:11311]. Retrying...解决方案 这个错误信息表明 robot_state_publisher 节点无法联系到 ROS master。通常&…...

记录vite关于tailwindcss4.0-bate4出现margin[m-*]、padding[p-*]无法生效的问题。

环境如下&#xff1a; vite:5.4.10 tailwindcss: 4.0.0-beta.4 tailwindcss/vite: 4.0.0-beta.4 4.0默认的样式优先级比较低 如果使用了一些reset的css文件 那么很多样式会失效 例如&#xff1a;reset.css中 html, body, ul, li, h1, h2, h3, h4, h5, h6, dl, dt, dd, ol, i…...

WPF+MVVM案例实战与特效(三十)- 封装一个系统日志显示控件

文章目录 1、运行效果2、日志控件封装1、文件创建2、DisplayLogPanel.xaml 代码3、DisplayLogPanel.cs 代码4、数据模型5、枚举类型3、自定义控件使用1、LogPanelWindow.xaml2、LogPanelViewModel.cs4、总结1、运行效果 2、日志控件封装 1、文件创建 打开 Wpf_Examples ,在 …...

redis中jedis和lettuce pool的区别,那个更好,使用范围更广

在 Redis 的 Java 客户端中,Jedis 和 Lettuce 是两种最常用的客户端库,它们都支持连接池(JedisPool 和 Lettuce Connection Pool),但在设计和特性上有显著差异。下面我将详细对比它们的特点,帮助你更好地选择适合的库。 1. 同步 vs 异步 Jedis:是一个 同步 的 Redis 客…...

调试openai 星河大模型的记录:用tcpdump和ngrep抓包

在调试esp32开发板连星河大模型的时候&#xff0c;用requests连星河&#xff0c;怎么也调不通&#xff0c;想通过抓包&#xff0c;看看openai和自己写的到底有啥不一样。 结论&#xff1a;抓包抓到的太多&#xff0c;而且ssl 已经把一些信息都处理过了&#xff0c;看不到报文的…...

树莓派明明安装了opencv和numpy,却找不到

当然不止树莓派&#xff0c;配置python环境都可能存在这个问题 可能是因为安装的 numpy 或者 opencv 版本与 Python 的包路径不匹配。下面是问题的常见原因及解决方法&#xff1a;【方法一和二优先考虑】 原因分析 多版本 Python 环境冲突&#xff1a; 树莓派上可能有多个版本…...