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

未来网络技术的新征程:5G、物联网与边缘计算(10/10)

一、5G 网络:引领未来通信新潮流

(一)5G 网络的特点

  1. 高速率:5G 依托良好技术架构,提供更高的网络速度,峰值要求不低于 20Gb/s,下载速度最高达 10Gbps。相比 4G 网络,5G 的基站速度可以达到 10Gb/s,比 4G 的理论速度要快 100 倍。实际使用时,5G 的网速大概比 4G 快 10 倍。例如,5G 网络下仅需要 33 秒就可完成一部电影的下载,每秒的速率达到 726Mbps,而 4G 的 LTE Cat.12 网络下载速率仅 62.2Mbps,花掉了 6 分钟 25 秒的时间。
  2. 泛在网:广泛覆盖和纵深覆盖,不仅覆盖生活各个地方,还能改善网络品质不好的区域,如卫生间、地下停车库等。泛在网有两个层面的含义,一是广泛覆盖,可大量部署传感器,进行环境、空气质量甚至地貌变化、地震的监测等;二是纵深覆盖,可把以前网络品质不好的卫生间、地下停车库等都用很好的 5G 网络广泛覆盖。
  3. 低功耗:支持大规模物联网应用,降低功耗,改善物联网产品的用户体验。5G 要支持大规模物联网应用,就必须要有功耗的要求。5G 能把功耗降下来,让大部分物联网产品一周充一次电,甚或一个月充一次电,大大改善用户体验,促进物联网产品的快速普及。例如,低功耗物联网设备的兴起已成为蜂窝漫游扩展的强大催化剂,5G 物联卡具备低功耗的特点,能够在短时间内完成数据传输并进入休眠状态,大大降低了设备的能耗,延长了物联设备的续航时间。
  4. 低时延:最低要求 1 毫秒,满足无人驾驶、工业自动化等新领域应用。5G 对于时延的最低要求是 1 毫秒,甚至更低。这对网络提出严酷的要求,而 5G 是这些新领域应用的必然要求。例如,在无人驾驶汽车中,一个制动,需要瞬间把信息送到车上做出反应,100 毫秒左右的时间,车就会冲出几十米,5G 可在最短的时延中,把信息送到车上,进行制动与车控反应。在 5G 网络下,远程驾驶的时延仅有六七毫秒,一旦遇到紧急情况,远程驾驶的刹车距离可能会比普通汽车多出 8 到 10 厘米,而 4G 信号刹车距离就有可能多出 1 到 2 米。
  5. 万物互联:让更多不同类型的设备成为智能设备,实现实时管理和智能化功能。5G 的互联性让手机电脑等上网设备以及越来越多智能家电设备、可穿戴设备、共享汽车等更多不同类型的设备以及电灯等公共设施成为智能设备的可能。5G 除了人与人之间的通信,将提供使能 Internet of Things (IoT,物联网) 的平台,以用户为中心构建全方位信息生态系统,提供各种可能和跨界整合。5G 技术将实现未来海量物联网的连接,主要应用在智慧家居、智能城市,以及海量的工业物联网等方面。很多权威的机构都做出预测,到 2020 年,社会中大概会有 500 亿个设备通过人与物、物与物的连接方式实现海量物联网。

(二)5G 网络的潜在影响

  1. 移动信息安全挑战:信息泄露多发,对抗网络攻击难度加大,大量物联网设备接入存在 DDOS 风险等。5G 日益普及,各种新技术、新应用也迎来爆发的契机。5G 技术的超高速率、超大连接、超低时延等特性,必然会涉及到更多的个人信息,甚至是个人敏感信息,由于个人信息被滥用,造成移动信息泄露事件层出不穷。同时,由于 5G 的应用场景比 4G 更加复杂化、多样化,包括增强型移动宽带场景、海量机器通信场景、超可靠低时延通信场景,这些新的通信场景对 5G 网络提出了新的安全要求,5G 网络自身的新安全机制也将给 5G 网络带来新的问题和新的安全挑战,使得对抗移动网络攻击的难度增加。此外,大量物联网设备接入存在 DDOS 风险、伪基站安全威胁依然存在、不同的场景有不同的安全要求、大量异构设备和多种接入方式对认证构成挑战。
  2. 环境和社会影响:5G 需要更多基站和天线,可能增加无线电频率辐射,更耗能,但也能降低能源消耗和污染,对温室气体排放和气候变化有积极影响,还可能影响水资源和海洋生态系统等。5G 技术的出现有可能彻底改变我们的生活和工作方式。从技术角度来看,与前几代无线技术相比,5G 将需要更多的基站和天线,这可能导致人口密集地区的无线电频率辐射增加。预计 5G 网络比现有网络更耗能,这可能会对环境产生影响。然而,5G 技术也有积极的一面,其能源效率可达 4G 技术的十倍,意味着 5G 技术可以减少高达 90% 的温室气体排放,降低高达 70% 的能源消耗,从而降低电费。5G 技术带来的节能也可以对气候变化产生积极影响,减少对化石燃料的依赖,减少空气污染和数据中心的碳足迹。同时,联合国环境规划署的报告指出,5G 基站使用大量的水来冷却其组件,这些水通常被排入大海或其他水体,可能会对当地海洋生物造成严重后果,5G 网络使用的额外无线电频率可能会干扰水生生物的功能,这可能对海洋生态系统的健康产生长期影响。

二、物联网:连接万物的新挑战

(一)物联网的网络需求

  1. 低延迟:物联网中的一些应用对延迟非常敏感,比如生产线或油气开采等场景需要低延迟的网络来确保实时控制和高效运作。而像停车计价器这类设备则可以接受较高的延迟,因为它们不需要即时响应。联网的停车计价器可能不需要每分钟报告一次以上,所以像 LoRaWAN 这样的延迟感应无线选项可能是完全可以接受的。对于不耐延迟的应用程序,应使用工业以太网或特别是低延迟的无线链路。
  2. 低数据吞吐量:很多物联网设备的数据传输需求非常低,只需每秒几 KB 甚至更少的数据量。具有低带宽要求的设备包括智能建筑设备,例如连接的门锁和灯开关,其大多数表示 “打开” 或 “关闭”。低功耗 WAN 和 Sigfox 可能没有足够的带宽来处理大量流量,但它们非常适合不需要首先移动大量数据的连接,并且它们可以覆盖重要区域。
  3. 适度处理能力:物联网设备自身的处理能力会影响网络。如果一个设备不断地将原始数据流到网络上,而不进行任何有意义的分析或对其本身进行塑造,那么它所带来的流量负担,可能会比至少完成部分工作的设备更大。在边缘设置中,部分或全部数据分析在靠近端点的设备上完成,这样可以减少网络上的流量。

(二)物联网面临的挑战

  1. 安全问题:物联网设备扩大了网络攻击面,存在安全漏洞。网络犯罪分子可以利用物联网设备中的众多安全漏洞进行攻击,例如 2017 年一家赌场的数据遭到黑客通过其中一个鱼缸中的物联网恒温器访问其网络的攻击,还有父母报告陌生人通过互联网访问他们的物联网婴儿监视器并用它们与孩子交谈。解决此问题的大部分负担落在物联网设备用户身上,他们需像保护手机电脑一样保护物联网设备,比如使用好的密码管理器,创建密码策略并强制执行,让设备保持最新状态等。
  2. 缺乏监管:政府监管往往跟不上物联网发展速度。目前,大量物联网设备从中国等质量和安全标准不同的国家进口,缺乏强有力的物联网法规是物联网仍然存在严重安全风险的一个重要原因。不同国家质量和安全标准不同,需制定通用安全标准,以应对潜在的攻击场景,如当医疗设备、汽车和儿童玩具都连接到互联网时可能出现的问题。
  3. 兼容性挑战:新的技术浪潮带来大量竞争对手,不同协议和标准存在兼容性问题。家庭网状网络是兼容性问题迫在眉睫的领域之一,蓝牙长期以来一直是物联网设备的兼容性标准,但现在有 Zigbee 和 Z-Wave 等协议挑战蓝牙的网状网络产品。市场可能需要数年时间才能稳定下来,为家庭物联网制定一个统一的标准。此外,物联网设备的持续兼容性还取决于用户不断更新和修补其设备,当必须相互通信的物联网设备运行不同的软件版本时,可能会导致各种性能问题和安全漏洞。
  4. 连接性有限:带宽密集型物联网应用可能在当前服务器 - 客户端模型上争夺空间。随着物联网市场规模呈指数级增长,一些专家担心视频流等带宽密集型物联网应用很快就会在物联网当前的服务器 - 客户端模型上争夺空间,因为服务器 - 客户端模型使用集中式服务器来验证和引导物联网网络上的流量,而随着越来越多的设备开始连接到这些网络,它们往往难以承受负载。因此,对于物联网公司来说,需选择可靠的连接提供商,如具有智能切换等功能的移动网络运营商。
  5. 客户期望高:物联网市场竞争激烈,客户期望与产品实际不匹配可能导致系统故障等问题。当客户期望与产品实际不匹配时,结果可能是系统故障、孤立技术和生产力损失。由于物联网市场竞争如此激烈,如果客户的期望没有得到满足,他们会毫不犹豫地转向其他地方。想要进入这个充满竞争和创新的领域的企业应该为永远不会停滞不前的市场和总是想要更流畅、更先进的体验的客户做好准备。

三、边缘计算:网络边缘的新力量

(一)边缘计算的概念

  1. 起源于传媒领域,在靠近物或数据源头的一侧提供服务,满足实时业务、应用智能等需求。

边缘计算最早可以追溯到 1998 年 Akamai 公司提出的内容分发网络(content delivery network,CDN),其目的是为了降低网络拥塞,提高用户访问响应速度和命中率。边缘计算处于物理实体和工业连接之间,或处于物理实体的顶端,其应用程序在边缘侧发起,产生更快的网络服务响应,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。

   2.与云计算相辅相成,可在本地完成数据处理,减轻云端负荷,提高处理效率。

边缘计算与云计算作为两种重要的计算方式,各自承载着不同的使命与优势,同时也在相互协作中推动着数字化转型的进程。云计算能够处理大量数据并提供强大的计算能力,但在实时性和数据传输速度方面可能存在不足。而边缘计算则能够在网络边缘对数据进行实时处理和分析,弥补云计算在这些方面的短板。两者相互协作,可以构建出更加高效、灵活的计算体系。例如,在实际应用中,边缘计算可以处理一些简单的请求和实时性要求高的数据,而复杂的请求和大数据分析则可以传递给云计算系统进行处理。这种协同工作模式不仅提高了系统的整体性能,还降低了数据传输的成本和延迟。

(二)边缘计算在网络中的应用

  1. 智能制造:实现生产过程实时监控和智能控制,提高生产效率和产品质量。

在智能制造领域,边缘计算技术为实现高效的数据处理和实时决策提供了重要的支持。边缘计算网关可以通过实时监测设备的运行数据,如温度、压力、振动等,对设备进行故障预测和异常诊断,及时发现设备故障并进行维护,保证生产过程的稳定性和持续性。同时,边缘计算网关能够实现生产过程的精细化管理,可以收集生产过程中的各种数据,如物料消耗、能源消耗、产品合格率等,为生产管理提供更精确的数据支持,通过数据分析和优化算法,发现生产过程中的瓶颈和问题,提出优化建议和改进措施,提高生产效率和产品质量。

2.智能交通:实现路况预测、车辆识别等功能,提高交通系统运行效率和安全性。

边缘计算在智慧交通中的作用将主要体现在以下三个方面:第一,提升本地处理能力。边缘计算的应用将明显提升交通管制方式的智能化和人性化,因为边缘计算能够更快捷的完成数据处理任务,从而应对交通领域对于实时性的高要求。第二,降低网络和云计算平台的负担。边缘计算可以把本地的数据进行本地处理,而把最终的处理结果发送到云计算平台,这样一方面降低了网络传输的负担,另一方面也加速了数据的处理速度。第三,数据边界化。边缘计算在智慧交通当中起到的另一个重要作用就是数据的边界化,由于交通环境下产生的大量数据在处理之后就没有存储的价值了,此时边缘计算在完成数据处理之后就可以直接把这些数据丢弃掉,这样就能够保障数据处理的边界化。

例如,在车路协同中,AI 边缘计算网关主要负责收集和分析车辆、道路基础设施等设备产生的数据,然后根据这些数据做出决策,为车辆提供更好的行驶环境。当车辆接近一个交叉口时,AI 边缘计算网关可以根据车辆的行驶速度、方向等信息,实时计算出车辆是否有必要减速、变道或者等待。同时,它还可以根据道路的交通密度、车流量等信息,调整路口的信号灯时序,以最优化的方式疏导交通。

3.智能家居:实现设备互联互通和智能化控制,提高家居生活便利性和舒适度。

边缘计算在智能家居中的应用可以实现更加智能化的家居控制。通过将传感器和智能设备连接到边缘计算节点,可以实现实时监测和控制家居设备。例如,当温度传感器检测到室内温度过高时,边缘计算节点可以自动控制空调降温。同时,通过人工智能算法的优化,可以实现更加个性化的家居控制,例如自动学习用户的生活习惯,提供更加智能化的服务。

此外,边缘计算和人工智能的结合应用还可以实现更加智能化的家居安全控制。例如,通过将智能门锁连接到边缘计算节点,可以实现实时监测家门的开关状态,并通过人工智能算法的优化,实现更加智能化的门锁控制,例如自动识别家庭成员的身份,提供更加安全的门锁控制方案。

4.智能城市:实现城市设施智能化管理和能源节约利用,推动城市可持续发展。

边缘计算在智能城市中的应用可以实现城市设施的智能化管理和能源节约利用。例如,通过将城市中的传感器和智能设备连接到边缘计算节点,可以实现对城市环境、交通流量、能源消耗等方面的实时监测和控制。边缘计算可以根据实时数据进行分析和决策,优化城市设施的运行效率,提高能源利用效率,推动城市的可持续发展。

5.物联网:实现设备自组织和协同工作,提高物联网系统效率和稳定性。

物联网的许多应用实现不完全依赖于云平台,边缘计算技术可以实现物联网应用产生更快速的网络响应,满足行业应用在实时业务、应用智能、安全与隐私保护等方面的需求。边缘计算可以为设备提供多种协议的接入能力,提供统一的接入框架,消除私有协议和数据模型的差异,在云端和边缘侧统一定义,减低了系统集成成本,提高设备接入效率。同时,边缘计算还可以实现设备的自组织和协同工作,提高物联网系统的效率和稳定性。

四、5G、物联网和边缘计算的经典代码案例

以下是分别围绕 5G、物联网和边缘计算的 3 个经典代码案例,涵盖 Python、Java 等常用编程语言,旨在帮助你更直观地理解这些前沿技术在实际编程场景中的应用。

案例一:基于 Python 的 5G 网络性能测试脚本

在 5G 网络部署与优化过程中,精准测试网络性能指标至关重要。此 Python 脚本借助 speedtest-cli 库来测试 5G 网络的下载速度、上传速度以及网络延迟,为网络运维人员快速评估网络质量提供便利。

import speedtestdef test_5g_network():st = speedtest.SpeedTest()print("正在测试 5G 网络性能,请稍候...")# 测试下载速度,单位为 Mbpsdownload_speed = st.download() / 1024 / 1024print(f"5G 网络下载速度:{download_speed:.2f} Mbps")# 测试上传速度,单位为 Mbpsupload_speed = st.upload() / 1024 / 1024print(f"5G 网络上传速度:{upload_speed:.2f} Mbps")# 测试网络延迟,单位为毫秒ping_result = st.results.pingprint(f"5G 网络延迟:{ping_result:.2f} 毫秒")if __name__ == "__main__":test_5g_network()

运行这段代码,它将连接到附近的 SpeedTest 服务器,模拟网络数据传输,进而获取并展示当前 5G 网络连接的关键性能指标。网络工程师可依据这些结果,排查网络故障、对比不同区域的 5G 信号质量,助力运营商优化网络布局。

案例二:Java 实现物联网设备(智能温湿度传感器)数据采集与上传

物联网设备常需采集环境数据并上传至云端服务器,以供后续分析与监控。下面这段 Java 代码模拟一个智能温湿度传感器,定时采集温湿度数据,通过 HTTP 协议发送至指定的服务器 API 端点。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Random;public class IoT_TemperatureHumiditySensor {private static final String SERVER_URL = "http://yourserver.com/api/sensor-data";public static void main(String[] args) {while (true) {// 模拟生成温湿度数据double temperature = generateRandomTemperature();double humidity = generateRandomHumidity();try {URL url = new URL(SERVER_URL);HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("POST");connection.setRequestProperty("Content-Type", "application/json");connection.setDoOutput(true);String data = "{\"temperature\":\"" + temperature + "\", \"humidity\":\"" + humidity + "\"}";OutputStream os = connection.getOutputStream();os.write(data.getBytes());os.flush();os.close();int responseCode = connection.getResponseCode();if (responseCode == HttpURLConnection.HTTP_OK) {BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));String inputLine;StringBuilder response = new StringBuilder();while ((inputLine = in.readLine())!= null) {response.append(inputLine);}in.close();System.out.println("数据上传成功,服务器响应:" + response.toString());} else {System.out.println("数据上传失败,错误码:" + responseCode);}} catch (IOException e) {e.printStackTrace();}try {// 每隔 5 分钟采集并上传一次数据Thread.sleep(5 * 60 * 1000);} catch (InterruptedException e) {e.printStackTrace();}}}private static double generateRandomTemperature() {Random random = new Random();return 20 + random.nextDouble() * 10; // 模拟生成 20 - 30 摄氏度之间的温度值}private static double generateRandomHumidity() {Random random = new Random();return 40 + random.nextDouble() * 20; // 模拟生成 40 - 60% 之间的湿度值}
}

这段代码构建了一个简易的物联网设备数据采集与上传机制。在实际应用中,SERVER_URL 需替换为真实的服务器地址,并且代码可进一步优化,比如加入设备认证、数据加密等安全机制。它展现了物联网设备如何融入网络生态,源源不断为云端提供关键环境数据。

案例三:使用 Python 与边缘计算框架(如 EdgeX Foundry)实现边缘设备数据预处理

边缘计算强调在靠近数据源的位置处理数据,减轻云端负担。假设我们有一组边缘设备采集的工业生产数据,需在边缘端进行初步清洗与均值计算,再选择性上传至云端。这里借助 Python 结合 EdgeX Foundry 框架的示例代码如下:

import requests
import json
from edgex_foundry import EdgeXClient# 初始化 EdgeX 客户端,连接本地边缘计算节点
edgex_client = EdgeXClient()# 假设从边缘设备获取原始数据的 API 端点
device_data_endpoint = "http://localhost:49986/api/v2/device/name/industrial-sensor01/readings"def get_device_data():try:response = requests.get(device_data_endpoint)if response.status_code == 200:return response.json()else:print(f"获取设备数据失败,错误码:{response.status_code}")except requests.RequestException as e:print(f"请求设备数据出错:{e}")return Nonedef preprocess_data(raw_data):values = [reading['value'] for reading in raw_data if 'value' in reading]if values:cleaned_data = [float(val) for val in values if isinstance(val, (int, float))]mean_value = sum(cleaned_data) / len(cleaned_data)return mean_valuereturn Nonedef main():raw_data = get_device_data()if raw_data:preprocessed_value = preprocess_data(raw_data)if preprocessed_value is not None:# 将预处理后的数据发送至云端特定端点,此处为示例cloud_upload_endpoint = "http://yourcloudserver.com/api/edge-data"payload = {"preprocessed_value": preprocessed_value}try:response = requests.post(cloud_upload_endpoint, json=payload)if response.status_code == 200:print("预处理数据成功上传至云端")else:print(f"数据上传至云端失败,错误码:{response.status_code}")except requests.RequestException as e:print(f"上传数据至云端出错:{e}")if __name__ == "__main__":main()

上述代码先从本地边缘设备获取原始生产数据,利用 preprocess_data 函数剔除异常值、计算均值,完成初步数据清洗。随后将处理后的数据发送至云端指定端点,达成边缘端数据精简与高效上传。实际部署时,要依据 EdgeX Foundry 具体版本与环境适配代码细节,且完善云端交互的安全及可靠性保障。这套流程契合边缘计算核心理念,让数据在源头附近 “瘦身”,优化整体网络数据流转效率。

五、文章总结和学习资源分享

(一)文章总结

本文深度剖析了未来网络技术三驾马车 ——5G、物联网与边缘计算。5G 以其超高速率、泛在覆盖、低时延、低功耗及万物互联特性,重塑通信格局,虽面临移动信息安全、环境能耗挑战,但潜力无限;物联网勾勒万物智联愿景,却受困于安全、监管、兼容、连接及客户期望难题;边缘计算则于网络边缘发力,就近处理数据,赋能多元场景,与云计算协同增效,为实时性、本地化业务开辟新径。三者相互交织、彼此促进,共同勾勒未来网络智能、高效、便捷的宏伟蓝图,虽征途漫漫、挑战重重,但前景璀璨,必将颠覆生产生活方式,引领数字经济新潮流。

(二)学习资源分享

  1. 在线课程平台
    • Coursera 与全球顶尖高校、机构合作,推出多门 5G、物联网及边缘计算相关专项课程。如 “Introduction to 5G Wireless Systems”,由通信领域权威教授授课,从基础理论到前沿实践,深度讲解 5G 架构、技术细节;还有 “Internet of Things Specialization” 系列课程,涵盖物联网全栈技术,含硬件搭建、软件开发、网络部署等内容,配备实操项目,助学习者扎实掌握知识。
    • edX 同样汇聚丰富课程资源,“Edge Computing Fundamentals” 专注边缘计算核心概念与应用场景,结合案例分析、实验模拟,带学员领略边缘计算魅力;部分课程修完还能获取认证证书,为求职、学术深造添砖加瓦。
  2. 专业书籍推荐
    • 《5G Mobile Networks: A Comprehensive Overview》堪称 5G 领域 “宝典”,全面详述 5G 技术标准、网络规划、性能优化,兼顾产业生态与商业应用,是深入理解 5G 技术的不二之选。
    • 《Designing the Internet of Things》聚焦物联网系统设计,从传感器选型、网络协议剖析到数据分析挖掘,配合大量实际案例,指导读者构建可靠、高效物联网解决方案。
    • 《Edge Computing: Principles and Paradigms》系统阐述边缘计算原理、架构范式,探讨边缘与云、雾计算关联,为探索边缘计算前沿技术提供坚实理论支撑。
  3. 技术社区与论坛
    • CSDN 作为国内领先技术社区,设有 5G、物联网、边缘计算专属板块,汇聚业内大咖分享技术干货、项目实战经验;新手求助帖下常有热心网友答疑解惑,助你攻克技术难关;定期举办技术征文、线上研讨会,紧跟行业脉搏。
    • Stack Overflow 全球知名编程问答社区,技术问题秒速回应。涉及代码实现、算法优化、故障排查等难题,在此提问常能收获多元思路、优质代码示例,是程序员日常 “充电”、技术进阶必备平台。
  4. 行业会议与研讨会
    • 每年举办的世界 5G 大会,全球通信巨头、科研院所齐聚一堂,展示最新 5G 成果、商用案例,探讨产业趋势、技术瓶颈攻克策略;同期开设多场技术分论坛、工作坊,提供与行业精英面对面交流机会。
    • 物联网世界峰会聚焦物联网全产业链,涵盖智能硬件、平台搭建、行业应用等主题,汇聚海量行业资源,助你洞悉物联网前沿动态,捕捉商机;边缘计算相关研讨会常嵌入其中,共话边缘与物联融合创新路径。

投身未来网络技术学习之旅,恰似踏上数字时代冒险征程,借上述学习资源 “利器”,望各位读者能于这片技术 “星辰大海” 乘风破浪、学有所成,携手共创未来网络科技盛世。

本文关联文章:

1、计算机网络基础全攻略:探秘网络构建块(1/10)

2、TCP/IP 协议:网络世界的基石(2/10)

3、局域网与广域网:探索网络的规模与奥秘(3/10)

4、NAT:连接私有与公共网络的关键技术(4/10)

5、网络安全防护指南:筑牢网络安全防线(5/10)

6、Wi-Fi 进化论:从过去到未来(6/10)

7、网络性能优化全攻略:让你的网络速度飞起来(7/10)

8、解锁 VPN:守护在线隐私的数字护盾(8/10)

9、网络设备全知道:路由器、交换机与防火墙的奥秘(9/10)

相关文章:

未来网络技术的新征程:5G、物联网与边缘计算(10/10)

一、5G 网络:引领未来通信新潮流 (一)5G 网络的特点 高速率:5G 依托良好技术架构,提供更高的网络速度,峰值要求不低于 20Gb/s,下载速度最高达 10Gbps。相比 4G 网络,5G 的基站速度…...

【北京迅为】iTOP-4412全能版使用手册-第六十八章 U-boot基础知识

iTOP-4412全能版采用四核Cortex-A9,主频为1.4GHz-1.6GHz,配备S5M8767 电源管理,集成USB HUB,选用高品质板对板连接器稳定可靠,大厂生产,做工精良。接口一应俱全,开发更简单,搭载全网通4G、支持WIFI、蓝牙、…...

go 中线程安全map

在 Go 语言中,官方包 sync.Map 确实提供了线程安全的映射数据结构。然而,正如你所提到的,使用 sync.Map 时,有时需要进行类型断言,这可能会让代码显得冗长或不直观。 如果你希望使用一个更加易用的线程安全映射&#…...

封装类与普通类的区别

1 封装类的好处 数据隐藏:通过封装,我们可以将类的内部实现细节隐藏起来,只暴露有限的接口。这样,外部代码就不能直接访问或修改类的内部状态,从而保证了数据的安全性和完整性。 数据保护:封装可以…...

StarRocks-hive数据类型导致的分区问题

背景: 有个hive的表,是月分区的(month_id),分区字段用的是string类型。数据量比较大,为了保证计算性能,所以把数据导入到SR里,构建一个内部表。但是在建表的时候想使用月分区使用pa…...

Java面试题精选:设计模式(二)

1、装饰器模式与代理模式的区别 1)代理模式(Proxy Design Pattern ) 原始定义是:让你能够提供对象的替代品或其占位符。代理控制着对于原对象的访问,并允许将请求提交给对象前后进行一些处理。 代理模式的适用场景 功能增强 当需要对一个对…...

【JavaEE】多线程(7)

一、JUC的常见类 JUC→java.util.concurrent,放了和多线程相关的组件 1.1 Callable 接口 看以下从计算从1加到1000的代码: public class Demo {public static int sum;public static void main(String[] args) throws InterruptedException {Thread …...

技术型企业如何高效搭建企业博客以增强品牌影响力和市场竞争力

在数字化时代,技术型企业面临着激烈的市场竞争和快速变化的行业环境。为了在这场竞争中脱颖而出,企业需要寻找新的营销渠道和品牌建设工具。企业博客作为一种低成本、高效率的在线内容平台,已经成为技术型企业增强品牌影响力和市场竞争力的重…...

【qt环境配置】windows下的qt与vs工具集安装\版本对应关系

vs工具集安装通过vs的在线安装器勾选工具集即可 工具包下载路径:https://www.microsoft.com/zh-cn/download/details.aspx?id40784 配置工具集在qt中可以自动扫描到 《正确在 Windows 上配置 MSVC(2019) 作为 Qt 编译器》https://b3logfile.com/pdf/article/15922…...

XTuner 微调实践微调

步骤 0. 使用 conda 先构建一个 Python-3.10 的虚拟环境 cd ~ #git clone 本repo git clone https://github.com/InternLM/Tutorial.git -b camp4 mkdir -p /root/finetune && cd /root/finetune conda create -n xtuner-env python3.10 -y conda activate xtuner-env…...

docker compose

Docker的理念是一个容器只运行一个服务。而 Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具 1 2。通过 docker-compose.yml 文件,用户可以配置应用程序服务,并使用简单的一条命令便可以创建和启动所有服务。这是关于 Docker Compose …...

Java 中的方法重写

在 Java 中,方法重写(Method Overriding)是面向对象编程的一个重要概念,它指的是子类中存在一个与父类中相同名称、相同参数列表和相同返回类型的方法。方法重写使得子类可以提供特定的实现,从而覆盖(或改变…...

阿里云ECS服务器域名解析

阿里云ECS服务器域名解析,以前添加两条A记录类型,主机记录分别为www和,这2条记录都解析到服务器IP地址。 1.进入阿里云域名控制台,找到域名 ->“解析设置”->“添加记录” 2.添加一条记录类型为A,主机记录为www&#xff0c…...

非父子通信(扩展)-- event bus 事件总线

创建一个空实例Bus, export default 导出Bus 过程:由A组件对Bus组件进行监听,B组件触发Bus对应的事件,由于A组件进行监听,触发事件之后就会进行A组件的回调,那么就可以将消息发送给A了 在src文件夹下新建utils文件夹&a…...

【Linux系列】获取当前目录

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

大模型:把GPT搬回家 - chatGPT的本地化API -Node.js调用

chatGPT拒绝了中国大陆和中国香港的访问,包括api的调用。这使得我们无法使用目前来讲确实YYLX的生产工具,仔细想一下其实还是可以曲线解决的,本文的介绍仅供学习参考。 用Node.jschatGPT提供的API,就可以在自己本地或者自己的服务…...

【Qt项目实战】使用脚本拓展CPP应用程序(2)——Lua脚本及编辑器

考古 《【Qt项目实战 】:使用脚本拓展CPP应用程序(1)——Lua脚本及编辑器》 一、LuaBridge 最近在项目的某个模块再次使用Lua作为程序拓展语言,开发了一些新的功能。 这里借助 LuaBridge 轻松实现Qt调用C类成员函数及成员对象等…...

【RBF SBN READ】hadoop社区基于RBF的SBN READ请求流转

读写分离功能的背景及架构 当前联邦生产集群的各个子集群只有Active NameNode在工作,当读写任务变得繁忙的时候,只有一个Active负责处理的话,此时集群的响应和处理能力业务侧感知会明显下降,为此,我们将引入Observer架构,实现读写功能的分离,使得Active只负责写请求,而…...

【教学类-36-08】20241210对称蝴蝶——去白边(图案最大化)一大和一大二小

背景需求 前期制作了对称蝴蝶,用来涂色,幼儿很喜欢 【教学类-36-07】20230707三只对称蝴蝶(midjounery-niji)(涂色、裁剪、游戏(飞舞的蝴蝶))_对称图案涂色-CSDN博客文章浏览阅读49…...

Flume——sink连接hdfs的参数配置(属性参数+时间参数)

这可不是目录 配置文件官网说明属性参数时间参数 配置文件官网说明 可以参考官网的说明 属性参数 属性名称默认值说明channel-type-组件类型名称,必须是hdfshdfs.path-HDFS路径,例如:hdfs://mycluster/flume/mydatahdfs.filePrefixFlumeDa…...

lc字符串相加——模拟

415. 字符串相加 - 力扣(LeetCode) 不准调用封装好的那些库。手动模拟两数相加,记录进位。主要当其中短的数字计算完了怎么办,技巧为下标为负数时就当做0,相当于补0一样。 class Solution {public String addStrings…...

框架建设实战6——缓存组件

说起分布式缓存,如今redis大行其道。不过,我们在创建缓存组件时,需要着重考虑如下几点: 1.客户端选型 本组件基于springboot2的默认实现,即lettuce客户端。不同客户端区别如下: 名称描述 优缺点分析 jedis1.springboot1.5.*默认 2.老牌客户端,使用稳定…...

基于springboot使用Caffeine

Caffeine 是一个基于 Java 的高性能、现代化的缓存库。它由 Ben Manes 开发,受 Google Guava 缓存库的启发,但具有更好的性能和更多的功能。 Caffeine 的核心特点 高性能 基于 Java 8 的现代化设计,利用高级并发算法,提供极低的延…...

深入解析 JavaScript 中的 Blob 对象:二进制数据处理的核心

文章目录 1.Blob是什么2.Blob用法实例属性Blob方法slice方法text方法 示例1:字符串 Blob示例2:数组和字符串 Blob示例3:从文件输入创建 3.使用场景1.创建 Blob 并生成 URL,下载文件2.文件上传3.切片上传3.Blob用于URL在线预览PDF文…...

fastboot

Fastboot 是 Android 和嵌入式开发中常见的一个低级工具,它允许通过 USB 与设备直接交互,用于分区的管理和系统的刷写等任务。以下是其工作原理和核心机制的解析: 1. Fastboot 的基本概念 Fastboot 是一种通信协议,通常在设备的引…...

yosys内部数据结构

一、参考链接 1.Yosys内部结构doxygen文件 yosys-master: RTLIL Namespace Reference 2.yosys内部结构介绍 https://yosyshq.readthedocs.io/projects/yosys/en/docs-preview-cellhelp/yosys_internals/formats/rtlil_rep.html 二、概览 图 1 网表核心数据结构 如图 1所示…...

前端导出excel实战(xlsx库和exceljs库)

一. 概览 前端导出excel是比较常见的需求,比如下载excel模板和批量导出excel。目前比较常用的库有xlsx和excel,接下来就着两种方式进行梳理。 二. 下载模板 xlsx库实现: 示例核心代码如下: const excelColumn {details: {ma…...

TCP/IP杂记

TCP三次握手、四次挥手 从应用角度,不用多考虑为什么有三次,遵循标准即可。 ubuntu 下 wireshark安装: sudo add-apt-repository universe sudo apt install wireshark 三次握手实证: 第一次握手的情况如下:&#…...

深入解析 Spring Security —— 打造高效安全的权限管理体系

目录 前言1. 初识 Spring Security1.1 Spring Security 的两大核心功能1.2 Spring Security 的主要特点 2. 配置 Spring Security2.1 配置类概述2.2 基础配置示例2.3 示例解析 3. Spring Security 的进阶功能3.1 自定义用户服务3.2 注解式权限控制3.3 动态权限控制 4. 实战应用…...

PostGIS分区表学习相关

在Postgresql中对空间数据进行表分区的实践_postgresql空间数据-CSDN博客文章浏览阅读1.4k次,点赞26次,收藏21次。Postgresql的分区功能允许将一个大表按照特定的规则拆分成多个小的分区表。这样做的好处在于,在查询数据时,可以只…...

避大坑!Vue3中reactive丢失响应式的问题

在vue3中,我们定义响应式数据无非是ref和reactive。 但是有的小伙伴会踩雷!导致定义的响应式丢失的问题。 reactive丢失响应式的情况1(直接赋值) 场景: 1.你定义了一个数据:let datareactive({name:"",age:"" }) 2.然后你…...

绿虫光伏设计系统:清洁能源的未来

煤炭、石油、天然气是我们现在依赖的重要能源,但这些能源难以再生,而且开采过程中会产生污染。太阳能发电作为清洁能源的一种重要形式,受到了越来越多的关注。绿虫光伏发电系统,不仅考虑到其发电效率,还可以考虑其经济…...

Python中的文件操作与数据处理

一、前言 文件操作是数据处理和持久化存储的基础。Python内置了强大的文件操作能力,并提供了丰富的库支持复杂数据处理需求。本文将从基础的文件读写到高效的数据处理,带您全面掌握Python文件操作技能。 二、文件操作基础 1. 文件的读写 # 写入文件 with open("examp…...

在huggingface.co的Spaces中推理,得到错误:No space left on device

如果你的前几次或者上一次推理运行成功了,或者至少GPU加载过了,导致你这次问题的原因可能是某种缓存文件太大 删除它试试,如果你的推理没有在运行,这不影响任何东西 rm -rf /data-nvme/zerogpu-offload/如果有帮助,请…...

el-table expand-row-keys默认展开,数据更新后默认展开的问题

开发项目时遇到个问题&#xff0c;菜单展开后&#xff0c;刷新数据&#xff0c;再次点击收起按钮不好用了&#xff0c;要点两次才好使&#xff0c;解决方案如下&#xff1a; 1、table设置 <el-table:loading"load":data"menuDataList":load"load…...

Linux下redis环境的搭建

1.redis的下载 redis官网下载redis的linux压缩包&#xff0c;官网地址:Redis下载 网盘链接&#xff1a; 通过网盘分享的文件&#xff1a;redis-5.0.4.tar.gz 链接: https://pan.baidu.com/s/1cz3ifYrDcHWZXmT1fNzBrQ?pwdehgj 提取码: ehgj 2.redis安装与配置 将包上传到 /…...

海外的bug-hunters,不一样的403bypass

一种绕过403的新技术&#xff0c;跟大家分享一下。研究HTTP协议已经有一段时间了。发现HTTP协议的1.0版本可以绕过403。于是开始对lyncdiscover.microsoft.com域做FUZZ并且发现了几个403Forbidden的文件。 &#xff08;访问fsip.svc为403&#xff09; 在经过尝试后&#xff0…...

使用 EasyExcel 提升 Excel 处理效率

目录 前言1. EasyExcel 的优点2. EasyExcel 的功能3. 在项目中使用 EasyExcel3.1 引入依赖3.2 实体类的定义与注解3.3 工具类方法的实现3.4 在 Controller 中使用 4. 总结5. 参考地址 前言 在日常开发中&#xff0c;Excel 文件的处理是不可避免的一项任务&#xff0c;特别是在…...

驱鸟器自定义播放音乐,低成本语音方案选型-N9305九芯电子

一、开发背景&#xff1a; 随着农业现代化的不断推进&#xff0c;鸟类对农作物的侵扰问题愈发严重。传统的驱鸟方法&#xff0c;如人工驱赶或使用化学药剂&#xff0c;不仅效率低下&#xff0c;而且可能对环境造成污染。因此&#xff0c;开发一种高效、环保、低成本的驱鸟器成…...

【html css选择器】

在 CSS 中&#xff0c;你可以通过选择器来选择 HTML 元素&#xff0c;并为其设置样式。以下是一些常见的 CSS 选择器和样式设置方法&#xff1a; 1. 基本选择器 元素选择器&#xff1a;选择特定的 HTML 元素。 p {color: blue;font-size: 16px; }类选择器&#xff1a;选择具有…...

mongoDb的读session和写session权限报错问题

go在使用mongoDb时用到了全局会话&#xff0c;发现在创建的session的逻辑相同&#xff0c;首先会进行数据的查询&#xff0c;此时获取了全局session执行读操作&#xff0c;查询所有文档&#xff0c;则当前会话为读会话&#xff0c;当再去插入时发现会报错&#xff0c;此时sessi…...

如何避免缓存击穿?超融合常驻缓存和多存储池方案对比

作者&#xff1a;SmartX 解决方案专家 钟锦锌 很多运维人员都知道&#xff0c;混合存储介质配置可能会带来“缓存击穿”的问题&#xff0c;尤其是大数据分析、数据仓库等需要频繁访问“冷数据”的应用场景&#xff0c;缓存击穿可能会更频繁地出现&#xff0c;影响业务运行。除…...

c语言专题之单链表的实现

在之前的博客中小编已经讲解了顺序表及其应用&#xff0c;所以在将讲单链表之前&#xff0c;我们先来重新思考一下顺序表&#xff0c;这里我先来讲顺序表的几个小缺点&#xff1a; 1.顺序表中在我们数据时&#xff0c;如头插、在指定位置插入等&#xff0c;我们通常需要整体挪动…...

Spring 源码学习(七)——注解后处理器

通过之前对注解式配置的解析&#xff08;Spring 源码学习&#xff08;三&#xff09;—— 注解式配置解析_spring源码学习-CSDN博客&#xff09;可以发现其使用 AnnotationConfigUtils 类的 registerAnnotationConfigProcessors 静态方法对象注解后处理器对象进行注册&#xff…...

GEE训练教程——基于 Sentinel-1 数据对 Felső-Kiskunság 湖区的可视化分析

目录 简介 代码解释 代码 结果 简介 GEE训练教程——基于 Sentinel-1 数据对 Felső-Kiskunsg 湖区的可视化分析 此处打开后运行后直接在script界面上就可以输入指定的年份和月份,但不是GEE APP的运算,是直接在弹出的框内输入即可。 代码解释 以下是您提供的 Google …...

docker 相关操作

1. 以下是一些常见的 Docker 命令&#xff1a; docker --version显示安装的 Docker 版本。 docker pull <image_name>从 Docker Hub 或其他镜像仓库下载镜像。 docker build -t <image_name> <path>从指定路径的 Dockerfile 构建 Docker 镜像。 docker i…...

【汽车】-- 燃油发动机3缸和4缸

3缸和4缸燃油发动机是小轿车常见的发动机配置。以下从结构特点、性能、经济性等方面对两者进行对比&#xff0c;并分析优缺点及使用注意事项&#xff1a; 1. 结构与运行原理 3缸发动机 特点&#xff1a;少一个气缸&#xff0c;内部零部件更少&#xff0c;整体结构更紧凑。优点…...

Python - 处理包含非utf-8 的字符编码

有这样的字符串&#xff0c;utf-8 编码中包含 ascii 编码内容 你好\x0a\x0a哈哈s 你好\x0a\x0a哈哈 b s.encode(utf-8) b.decode(utf-8)其它尝试 >>> b s.encode(utf-8) >>> b.decode(ascii) Traceback (most recent call last):File "<stdin&g…...

主坐标分析(PCoA)

主坐标分析&#xff08;PCoA&#xff09;是一种多变量统计方法&#xff0c;用于研究样本间的相似性或差异性&#xff0c;是一种非约束性的数据降维分析方法。以下是PCoA的关键点和实施步骤&#xff1a; 什么是PCoA&#xff1f; PCoA通过将样本距离矩阵转换为坐标&#xff0c;…...

Linux 网络接口配置

在 Linux 中,网络接口配置文件用于控制系统中的软件网络接口,并通过接口实现对网络设备的控制。当系统启动时,系统通过这些接口配置文件决定启动哪些接口,以及如此对这些接口进行配置. 在 Linux 中,网络接口配置文件用于控制系统中的软件网络接口,并通过这些接口实现对网络…...