基于物联网的冻保鲜运输智能控制系统
基于物联网的冻保鲜运输智能控制系统设计文档
1. 项目开发背景
随着全球化贸易的发展,冷链物流在现代运输行业中扮演着日益重要的角色。尤其是冻品、食品、药品等对运输环境有着严格要求的货物,其运输过程中温度、湿度等环境参数必须严格控制,以确保货物的品质不受损害。为了解决这一问题,开发一个基于物联网技术的冻保鲜运输智能控制系统变得尤为重要。该系统可以实时监控运输环境中的温度、湿度、震动等参数,并根据预设的阈值进行自动调节,同时通过无线传输将数据上传至云端平台,进行实时监控和历史数据分析,确保运输过程中的货物处于最佳环境状态。
该系统的主要应用场景是冷链物流行业中的冻品运输,系统通过嵌入式硬件和物联网通信技术实现了对运输环境的实时监控、数据采集、设备控制、预警报警等多项功能。本项目通过STM32F103C8T6单片机作为核心控制单元,采用温湿度传感器、震动传感器、GPS定位模块等硬件,通过Wi-Fi模块实现数据上传,并借助MQTT协议与华为云物联网平台进行数据存储与分析。
2. 设计实现的功能
2.1 温度监测与控制
系统通过温度传感器实时采集运输环境的温度数据,当温度超过设定阈值时,自动启动制冷风机进行降温,以确保运输环境温度处于适宜范围。
2.2 湿度监测与控制
系统通过湿度传感器实时监控运输环境中的湿度,当湿度低于设定值时,自动启动加湿器进行加湿,维持运输环境中的湿度在合理范围内。
2.3 震动监测与报警
通过震动传感器检测运输过程中是否发生剧烈震动,当震动强度超过设定值时,系统通过蜂鸣器报警,提醒司机减少行驶速度,确保货物不受损害。
2.4 数据显示与手动设置
系统通过显示屏实时展示当前的温度、湿度、震动等环境数据,司机可通过按键设置温度和湿度的预警阈值,便于进行手动调整。
2.5 无线数据传输与远程监控
通过Wi-Fi模块,系统将采集到的环境数据上传至华为云物联网平台,用户可通过手机APP或PC端查看实时数据,同时也可查看历史数据和趋势分析。
2.6 GPS定位与实时位置监控
通过GPS定位模块获取车辆当前位置的经度和纬度,并将位置数据上传至云端平台,用户可以实时查看车辆的位置。
2.7 数据上云与历史记录存储
系统将通过MQTT协议将数据上传至华为云物联网平台,进行数据存储和历史记录分析,便于后期查阅和数据趋势分析。
3. 项目硬件模块组成
本系统由多个硬件模块组成,涉及环境监测、设备控制、数据传输、位置跟踪等功能。具体硬件模块包括:
3.1 主控芯片:STM32F103C8T6
STM32F103C8T6是STMicroelectronics公司推出的32位ARM Cortex-M3内核的单片机,具有较高的处理能力和丰富的外设接口,适合应用于嵌入式控制系统中。该芯片提供了足够的GPIO口、串口、定时器等外设,能够满足温湿度传感器、震动传感器、GPS模块、Wi-Fi模块等外设的控制需求。
3.2 温度传感器:DHT22
DHT22是一款常用的数字温湿度传感器,能够同时提供温度和湿度的测量结果。其温度测量范围为-40°C至80°C,湿度测量范围为0%-100%,精度较高,适合用于冷链运输中的温湿度监测。
3.3 湿度传感器:DHT22(与温度传感器共用)
由于DHT22传感器同时具备温度和湿度测量功能,因此可以使用同一个传感器进行环境湿度的监测。
3.4 震动传感器:SW-420
SW-420是一款震动传感器模块,可以检测物体的震动。当震动强度超过设定的阈值时,模块输出一个高电平信号,系统可根据此信号进行报警或采取其他处理。
3.5 制冷风机与加湿器控制模块
系统通过继电器控制模块实现对制冷风机和加湿器的控制。当温度超过设定阈值时,系统启动制冷风机;当湿度低于设定阈值时,系统启动加湿器。
3.6 蜂鸣器
蜂鸣器用于震动监测报警,当运输过程中发生剧烈震动时,蜂鸣器将发出警报,提醒司机注意。
3.7 显示屏:LCD1602
LCD1602是一款常用的液晶显示屏,能够显示温度、湿度、震动等环境数据,司机可以通过该屏幕查看当前的环境参数。
3.8 按键模块
按键模块用于设置温度和湿度的预警阈值,司机可以根据需要调整阈值。
3.9 Wi-Fi模块:ESP8266
ESP8266是一个低成本的Wi-Fi模块,支持Wi-Fi通信,可以将采集到的数据通过无线网络传输到云平台,支持MQTT协议,与华为云物联网平台进行数据交互。
3.10 GPS定位模块:NEO-6M
NEO-6M是一款高精度的GPS模块,可以提供车辆的经度、纬度和时间信息,用于实时监控车辆位置。
4. 设计思路
4.1 系统架构
本系统的整体架构包括嵌入式硬件系统、无线数据传输系统、云端平台与用户端三个部分。系统通过传感器实时采集运输环境中的数据,STM32F103C8T6主控芯片负责数据处理与控制。当某一参数超过设定阈值时,控制模块将触发对应的控制动作(如启动制冷风机、加湿器或报警)。同时,数据通过Wi-Fi模块上传到华为云物联网平台,用户可以在手机APP或PC端实时查看数据并进行远程监控。
4.2 数据采集与处理
- 温湿度监测: 温湿度传感器定期向系统提供温度和湿度数据,STM32F103C8T6通过定时器定时读取传感器数据。
- 震动监测: 震动传感器监测运输过程中的震动情况,当震动超过设定的阈值时,STM32F103C8T6通过蜂鸣器模块发出警报。
- GPS定位: GPS模块提供实时的车辆经度和纬度信息,STM32F103C8T6定期读取GPS模块的数据并通过Wi-Fi模块上传至云平台。
4.3 设备控制
- 制冷风机与加湿器: 当温度或湿度不在预设范围内时,控制模块将触发继电器,启动或停止制冷风机与加湿器。
- 报警机制: 当震动传感器检测到剧烈震动时,蜂鸣器发出警报,提醒司机注意。
4.4 数据上传与云端监控
- Wi-Fi上传: ESP8266 Wi-Fi模块将采集的数据通过MQTT协议上传至华为云物联网平台。数据通过云端存储,并可通过手机APP或PC端查看。
- 数据存储与分析: 云平台存储历史数据,用户可以查看历史数据图表,进行趋势分析。
4.5 用户界面与操作
- 显示界面: LCD1602显示屏实时展示温度、湿度、震动等环境数据,便于司机现场监控。
- 按键操作: 司机可以通过按键调整温湿度的预警阈值。
5. 系统功能总结
功能模块 | 描述 |
---|---|
温度监测与控制 | 实时监测运输环境温度,超标时启动制冷风机 |
湿度监测与控制 | 实时监测运输环境湿度,低于设定阈值时启动加湿器 |
震动监测与报警 | 检测运输过程中的震动,超过设定阈值时通过蜂鸣器报警 |
6. 使用的模块的技术详情介绍
6.1 STM32F103C8T6
STM32F103C8T6是基于ARM Cortex-M3核心的32位单片机,具有高性能和低功耗的特点。它内置了丰富的外设接口,包括UART、SPI、I2C、GPIO等,能够满足各种外设的控制需求。其主频为72MHz,性能足以应对温湿度采集、震动监测、GPS定位等实时任务。
6.2 DHT22温湿度传感器
DHT22是一款数字式温湿度传感器,采用单总线通信方式,与MCU通信非常方便。其温度测量范围为-40°C至80°C,湿度测量范围为0%-100%。它适合用于精确的环境监测,且具有较高的稳定性。
6.3 SW-420震动传感器
SW-420震动传感器是一款基于机械开关的震动感应模块,当传感器感应到震动时,其输出引脚会输出高电平信号。系统可以根据此信号进行报警或其他处理。
6.4 ESP8266 Wi-Fi模块
ESP8266是一个低成本、高效能的Wi-Fi模块,内置了TCP/IP协议栈,支持Wi-Fi通信。它能够与MCU通过串口进行通信,发送和接收数据。其支持MQTT协议,适合用于物联网应用。
6.5 NEO-6M GPS模块
NEO-6M是一款高精度的GPS模块,能够提供经度、纬度、高度、时间等信息。它支持多个卫星系统,包括GPS和GLONASS,具有较高的定位精度。
7. 总结
本系统基于STM32F103C8T6单片机,结合温湿度传感器、震动传感器、GPS模块、Wi-Fi模块等硬件,实现了对冻品运输环境的实时监控与智能控制。系统通过无线数据传输将采集到的数据上传至华为云物联网平台,便于用户进行远程监控和数据分析。通过合理的硬件选型和数据处理算法,系统能够保证运输过程中货物处于最佳环境中,同时提供了可靠的预警报警机制,保障了运输安全。
此外,本系统具有较强的扩展性,未来可以增加更多传感器或控制模块,如光照传感器、空气质量传感器等,以实现更加精细的环境管理。
8. STM32代码设计
以下是完整的 main.c
代码,用于实现基于STM32F103C8T6的“冻保鲜运输智能控制系统”。
在该代码中,系统会通过采集温度、湿度、震动等数据并进行实时控制,如超标时启动加湿器、风机等设备。此外,数据通过Wi-Fi上传到云端,便于远程监控。
main.c
示例代码:
#include "stm32f10x.h"
#include "DHT22.h" // 温湿度传感器头文件
#include "SW420.h" // 震动传感器头文件
#include "Buzzer.h" // 蜂鸣器控制头文件
#include "GPS.h" // GPS模块头文件
#include "WiFi.h" // Wi-Fi模块头文件
#include "LCD1602.h" // LCD显示屏头文件
#include "RelayControl.h" // 继电器控制头文件// 设置温度和湿度阈值
#define TEMP_THRESHOLD_HIGH 10 // 温度上限10°C
#define TEMP_THRESHOLD_LOW 5 // 温度下限5°C
#define HUMIDITY_THRESHOLD_LOW 40 // 湿度下限40%
#define HUMIDITY_THRESHOLD_HIGH 60 // 湿度上限60%
#define VIBRATION_THRESHOLD 500 // 震动阈值// 当前传感器数据存储
float current_temperature = 0.0f;
float current_humidity = 0.0f;
int vibration_level = 0;
float latitude = 0.0f;
float longitude = 0.0f;// 系统初始化函数
void System_Init(void) {// 初始化LCD显示屏LCD_Init();// 初始化蜂鸣器Buzzer_Init();// 初始化温湿度传感器DHT22_Init();// 初始化震动传感器SW420_Init();// 初始化GPS模块GPS_Init();// 初始化Wi-Fi模块WiFi_Init();// 初始化继电器控制(制冷风机、加湿器)RelayControl_Init();
}// 传感器数据采集函数
void Collect_Sensor_Data(void) {// 获取温湿度传感器数据current_temperature = DHT22_Read_Temperature();current_humidity = DHT22_Read_Humidity();// 获取震动传感器数据vibration_level = SW420_Read_Vibration();// 获取GPS定位数据latitude = GPS_Get_Latitude();longitude = GPS_Get_Longitude();
}// 控制设备(如风机、加湿器)和报警
void Control_Devices(void) {// 检查温度是否超标if (current_temperature > TEMP_THRESHOLD_HIGH) {RelayControl_StartCooling(); // 启动制冷风机} else if (current_temperature < TEMP_THRESHOLD_LOW) {RelayControl_StopCooling(); // 停止制冷风机}// 检查湿度是否超标if (current_humidity < HUMIDITY_THRESHOLD_LOW) {RelayControl_StartHumidifier(); // 启动加湿器} else if (current_humidity > HUMIDITY_THRESHOLD_HIGH) {RelayControl_StopHumidifier(); // 停止加湿器}// 震动检测,如果震动值超过阈值,触发报警if (vibration_level > VIBRATION_THRESHOLD) {Buzzer_On(); // 开启蜂鸣器报警} else {Buzzer_Off(); // 关闭蜂鸣器}
}// 数据上传至云端(使用MQTT协议)
void Upload_Data_To_Cloud(void) {// 将数据上传到云平台char message[256];// 构造消息内容sprintf(message, "Temperature: %.2f, Humidity: %.2f, Vibration: %d, Latitude: %.6f, Longitude: %.6f", current_temperature, current_humidity, vibration_level, latitude, longitude);// 发送数据到MQTT服务器WiFi_MQTT_Publish("frozen_transport/data", message);
}// 显示数据到LCD屏幕
void Display_Data(void) {// 清除LCD屏幕LCD_Clear();// 显示温度、湿度和震动值LCD_SetCursor(0, 0);LCD_Printf("Temp: %.2f C", current_temperature);LCD_SetCursor(1, 0);LCD_Printf("Humidity: %.2f %%", current_humidity);LCD_SetCursor(2, 0);LCD_Printf("Vibration: %d", vibration_level);LCD_SetCursor(3, 0);LCD_Printf("Lat: %.6f Lon: %.6f", latitude, longitude);
}int main(void) {// 系统初始化System_Init();// 主循环while (1) {// 1. 采集传感器数据Collect_Sensor_Data();// 2. 控制设备(如风机、加湿器)并触发报警Control_Devices();// 3. 上传数据至云端Upload_Data_To_Cloud();// 4. 显示数据到LCDDisplay_Data();}
}// 延时函数
void delay_ms(uint32_t ms) {uint32_t i, j;for (i = 0; i < ms; i++) {for (j = 0; j < 8000; j++) {__NOP(); // 空操作,等待时间}}
}
代码解析
- 系统初始化 (
System_Init
):- 进行各个硬件模块的初始化,包括LCD显示、蜂鸣器、传感器(温湿度、震动、GPS)、Wi-Fi模块和继电器控制(风机、加湿器)。
- 传感器数据采集 (
Collect_Sensor_Data
):- 从温湿度传感器、震动传感器和GPS模块读取数据,并将其存储到相应的变量中。
- 设备控制与报警 (
Control_Devices
):- 根据采集的温湿度数据,控制风机和加湿器的启停。如果温度高于设定阈值,则启动制冷风机;如果湿度低于设定阈值,则启动加湿器。
- 检测震动传感器的输出,当震动超出预设阈值时,触发蜂鸣器报警。
- 数据上传至云端 (
Upload_Data_To_Cloud
):- 将温度、湿度、震动、GPS位置等数据通过Wi-Fi模块上传到云平台。使用MQTT协议进行数据传输。
- 显示数据到LCD (
Display_Data
):- 在LCD显示屏上显示当前的温度、湿度、震动值以及GPS经纬度。
- 模块与功能
- DHT22:温湿度传感器,支持数字信号输出,提供温度和湿度数据。
- SW420:震动传感器,当震动超过一定阈值时,输出信号。
- Buzzer:蜂鸣器,用于在震动过大时发出警报。
- GPS:GPS模块,用于实时获取经度和纬度数据。
- Wi-Fi (ESP8266):Wi-Fi模块,通过MQTT协议将数据上传到云端。
- RelayControl:继电器控制模块,用于控制制冷风机和加湿器的开关。
该代码实现了冻保鲜运输智能控制系统的核心功能:环境监控(温度、湿度、震动)、设备控制(制冷风机、加湿器)、报警系统(蜂鸣器)、数据展示(LCD)和无线数据上传(Wi-Fi)。系统能够实时监控运输环境,保证货物在运输过程中处于最佳状态。
相关文章:

基于物联网的冻保鲜运输智能控制系统
基于物联网的冻保鲜运输智能控制系统设计文档 1. 项目开发背景 随着全球化贸易的发展,冷链物流在现代运输行业中扮演着日益重要的角色。尤其是冻品、食品、药品等对运输环境有着严格要求的货物,其运输过程中温度、湿度等环境参数必须严格控制ÿ…...
【深度学习基础之多尺度特征提取】多尺度卷积神经网络(MS-CNN)是如何在深度学习网络中提取多尺度特征的?附代码(二)
【深度学习基础之多尺度特征提取】多尺度卷积神经网络(MS-CNN)是如何在深度学习网络中提取多尺度特征的?附代码(二) 【深度学习基础之多尺度特征提取】多尺度卷积神经网络(MS-CNN)是如何在深度…...

论文解读之learning to summarize with human feedback
最近在看大模型训练相关的论文,预计会追溯经典的和最新的训练策略以及微调原理等 本次解读经典论文learning to summarize with human feedback 一、简介 部分生成任务需要对齐人类偏好,但是根据最大化可能性(对数似然)进行微调…...

STM32学习(六 )
串口初始化IO引脚 串口的引脚在哪里 串口可以利用GPIO_InitTypeDef结构体和GPIO_Init()函数进行初始化 USART_InitTypeDef USART_InitStruct;//建立串口结构体USART_InitStruct.USART_BaudRate 115200;//波特率115200USART_InitStruct.USART_Mode US…...

基于 GitHub API 的 Issue 和 PR 自动化解决方案
文章目录 摘要引言优化 Issue 和 PR 管理的方法工具选择流程优化 自动化 Issue 和 PR 管理代码逻辑详解获取 Issue 数据为 Issue 添加标签将 Issue 分配给开发者主逻辑 实际运行效果进一步扩展QA 环节总结参考资料 摘要 在开源项目中,Issue 和 Pull Request&#x…...

56.在 Vue 3 中使用 OpenLayers 通过 moveend 事件获取地图左上和右下的坐标信息
前言 在现代 Web 开发中,地图应用越来越成为重要的组成部分。OpenLayers 是一个功能强大的 JavaScript 地图库,它提供了丰富的地图交互和操作功能,而 Vue 3 是当前流行的前端框架之一。在本篇文章中,我们将介绍如何在 Vue 3 中集…...

文件本地和OSS上传
这里写目录标题 前端传出文件后端本地存储阿里云OSS存储上传Demo实现上传ConfigurationProperties 前端传出文件 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>上传文件</title> </head&g…...

elementui table 表格 分页多选,保持选中状态
elementui多选时分页,解决选中状态无法保留选中项问题: 在el-table标签中加入row-key,row-key的值取当前数据里的唯一key在el-table-column selection 项中加入以下:reserve-selection“true” 完成后,将需要清空的地方 ( 如返回…...
MSE+Range案例
MSE的demo实现思路:首先准备fmp4格式的视频地址或者切片,接着将MSE挂载到video上,创建createObjectURL转二进制数据,fetch请求在线地址,分段请求,监听这个数据流的获取状态,当这个ReadyState为o…...
C# 设计模式(结构型模式):代理模式
C# 设计模式(结构型模式):代理模式 在软件开发中,有时我们需要通过某种方式间接地访问一个对象,这时就可以使用代理模式(Proxy Pattern)。代理模式通过引入一个代理对象来控制对目标对象的访问…...

YOLO——pytorch与paddle实现YOLO
YOLO——pytorch与paddle实现YOLO 本文将深入探讨YOLO目标检测的理论基础,并通过PyTorch和PaddlePaddle两个深度学习框架来展示如何实现基础的YOLO模型。我们将首先介绍YOLO的基本概念,这些理论基础是理解和实现YOLO网络的基础。通过PyTorch和PaddlePad…...

持续大额亏损,销量增幅有限,北汽蓝谷依旧黯然神伤
撰稿 | 行星 来源 | 贝多财经 “起了个大早,赶了个晚集”,用在如今的北汽蓝谷身上再合适不过。 2025年的第一个工作日,北汽蓝谷新能源科技股份有限公司(SH:600733,简称“北汽蓝谷”)对外披露了子公司北京…...

C# OpenCV机器视觉:背景减除与前景分离
在实验室的一角,阳光仿若一个急性子的小精灵,迫不及待地穿过窗帘缝隙,在阿强的桌面上欢快跳跃,洒下一片片斑驳陆离的光影,似乎在催促着阿强赶紧开启今日的奇妙探索。阿强端坐在桌前,眼神炽热地盯着眼前那台…...
C语言return与 ? :
上次讲解过一次函数,函数要配合return返回东西,但是在编写一些程序的时候我发现了很多冷门逻辑语法还没有掌握,当时讲课也是看一眼就过去了(死去的记忆开始攻击我) Return,爽! 现在有一个小问…...

【论文阅读】SCGC : Self-supervised contrastive graph clustering
论文地址:SCGC : Self-supervised contrastive graph clustering - ScienceDirect 代码地址: https://github.com/gayanku/SCGC 摘要 图聚类旨在发现网络中的群体或社区。越来越多的模型使用自编码器(autoencoders)结合图神经网…...

python pyqt5+designer的信号槽和动态显示
至少需要两个文件,一个是python的主文件,一个是designer的UI文件 1.对UI文件的处理 首先需要将UI文件转化成python文件,并且引入到主文件中。 2.在主文件中接受UI上的一些动作和返回主文件处理的数据到UI界面上。 框中选中的部分,…...

版本控制系统Helix Core 2024.2增强功能:与OpenTelemetry协议集成、Delta同步和传输等
“Perforce团队非常高兴为您带来Helix Core 2024.2版本,它拥有众多旨在提高团队效率、优化工作流程的增强功能。通过新的Open Telemetry协议集成,团队现在可以轻松将结构化日志集成到可观测性平台中。DeltaTransfer现在也适用于同步操作——这是2024.1版…...
certificate verify failed: unable to get local issuer certificate (_ssl.c:10
出现 “certificate verify failed: unable to get local issuer certificate (_ssl.c:10)” 这个错误通常是因为Python在尝试建立HTTPS连接时,无法验证服务器的SSL证书。这可能是因为本地系统中缺少必要的根证书,或者服务器的证书链不完整,导…...
关于大一上的总结
大一上总结 前言 源于学长们都喜欢写总结,今晚也正好听见一首有点触动心灵的歌,深有感慨,故来此写下这篇总结 正文 1.暑假前的准备 暑假之前姑且还是学习了基本的C语法,大概是到了结构体的地方,进度很慢࿰…...
JavaScript的基础知识
在鸿蒙操作系统的应用开发中,JavaScript作为一种广泛使用的编程语言,扮演着重要的角色。无论是构建用户界面还是实现业务逻辑,理解JavaScript的基础知识都是必不可少的。本文将深入探讨鸿蒙开发中与JavaScript相关的几个关键概念:…...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...
tomcat指定使用的jdk版本
说明 有时候需要对tomcat配置指定的jdk版本号,此时,我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...