EMQ X Enterprise (MQTT Broker) + Apache Kafka 构建高性能物联网消息处理后台
在各类物联网项目中,设备产生的消息不仅仅作用于设备之间,还需要供业务系统使用以实现如安全审计、流量计费、数据统计、通知触发等功能,类似很容易通过以下原型系统完成:
该原型中需要在 EMQ X 上维护多个数据通道,以供每个业务环节按照各自需求从 EMQ X 中获取消息数据。这种解决方案的问题在于:
- 每个业务需要与 EMQ X 建立数据通道,数据通道的建立与保持需要额外的资源开销,数据同步速度严重影响 EMQ X 高速消息交换;
- 随着业务增长,每次新增业务环节都需要牵动整个系统变更;
- 由于每个环节处理速度与时序不一样,消息量较大时部分业务会出现阻塞情况,进一步产生数据丢失、系统稳定性降低等严重后果。
以上问题与当下互联网应用中遇到的问题高度一致,即多个业务系统之间的数据集成与数据同步问题。互联网应用中普遍集成消息队列以进行削峰、限流、队列处理等操作,实现数据与业务的解耦,借助 EMQ X 提供的 RabbitMQ、Kafka、RocketMQ、Pulsar 等消息与流中间件桥接功能,物联网项目也可以使用该模型来解决以上问题。
本文以常见物联网使用场景为例,介绍了如何利用 EMQ X 消息中间件与开源流处理平台 Kafka 处理物联网海量消息数据,以高可靠、高容错的方式存储海量数据流并保证数据流的顺序进行消息数据存储,同时有效地将消息数据提供给多个业务环节使用。
业务场景
假设现在有一个智能门锁项目,所有门锁每间隔 1 分钟或任何时间开/关锁等门锁状态变更时上报一次门锁信息,上报 MQTT 主题如下(QoS = 1):
devices/{client_id}/state
每个设备发送的数据格式为 JSON,包括门锁电量、开锁状态、操作结果等数据,内容如下:
{"process_id": "7802441525528958","action": "unlock","battery": 83.4,"lock_state": 1,"version": 1.1,"client_id": "10083618796833171" }
每个门锁均订阅一个唯一的主题,作为远程下发开锁指令,下发 MQTT 主题如下(QoS = 1):
devices/{client_id}/command
下发的数据包括开锁指令、消息加密验证信息等:
{"process_id": "7802441525528958","action": "unlock","nonce_str": "u7u4p0n8","ts": 1574744434,"sign": "e9f5af7deaa28563" }
上行、下行消息数据需要供以下三个业务环节使用:
- 消息通知:将开锁状态通知到门锁用户绑定的通知方式(手机短信、邮件);
- 状态监控:分析处理门锁定时上报的状态信息,如果电量、状态异常等需触发告警通知用户;
- 安全审计:分析上下行消息数据,记录用户开锁行为,同时防范下行指令被篡改、重放等方式攻击。
该方案中,EMQ X 会将以上主题的消息统一桥接到 Kafka 供业务系统使用,实现业务系统与 EMQ X 解耦。
client_id 为门锁 ID,同门锁连接至 EMQ X 使用的 MQTT Client ID。
方案介绍
Kafka 是由 Apache 软件基金会开发的一个开源流处理平台,由 Scala 和 Java 编写。该项目的目标是为处理实时数据提供一个统一、高吞吐、低延迟的平台。
kafka 有以下特性:
- 高吞吐量:吞吐量高达数十万高并发,支持数千个客户端同时读写;
- 低延迟:延迟最低只有几毫秒,轻松构建实时流应用程序;
- 数据可靠性:将消息数据安全地分布式存储,复制到容错集群中,严格按照队列顺序处理,提供消息事务支持,保证数据完整性和消费可靠性;
- 集群容错性:多节点副本中,允许 n-1 个节点失败
- 可扩展性:支持集群动态扩展。
该方案中集成 Kafka 为 EMQ X 消息服务器与应用程序之间的消息传递提供消息队列与消息总线。生产者(EMQ X)往队列末尾添加数据,每个消费者(业务环节)依次读取数据然后自行处理,这种架构兼顾了性能与数据可靠性,并有效降低系统复杂度、提升系统扩展性。该方案原型如下:
EMQ X Enterprise 安装
安装
如果您是 EMQ X 新手用户,推荐通过 EMQ X 指南 快速上手
访问 EMQ 官网 下载适合您操作系统的安装包,**由于数据持久化是企业功能,您需要下载 EMQ X 企业版(可以申请 License 试用)** 写本文的时候 EMQ X 企业版最新版本为 v3.4.4,下载 zip 包的启动步骤如下 :
## 解压下载好的安装包 unzip emqx-ee-macosx-v3.4.4.zip cd emqx## 将 License 文件复制到 EMQ X 指定目录 etc/, License 需自行申请试用或通过购买授权获取 cp ../emqx.lic ./etc## 以 console 模式启动 EMQ X ./bin/emqx console
修改配置
本文中需要用到的配置文件如下:
- License 文件,EMQ X 企业版 License 文件,使用可用的 License 覆盖:
etc/emqx.lic
- EMQ X Kafka 消息存储插件配置文件,用于配置 Kafka 连接信息、数据桥接主题:
etc/plugins/emqx_bridge_kafka.conf
根据部署实际情况填写插件配置信息如下,其余配置项请熟读配置文件做出调整或直接使用默认配置即可:
## 连接地址 bridge.kafka.servers = 127.0.0.1:9092## 需要处理的 Hooks 由于我们使用 QoS 1 的进行消息传送,可以使用 ack hooks ## 注释其他无关事件、消息 Hooks## bridge.kafka.hook.client.connected.1 = {"topic":"client_connected"} ## bridge.kafka.hook.client.disconnected.1 = {"topic":"client_disconnected"} ## bridge.kafka.hook.session.subscribed.1 = {"filter":"#", "topic":"session_subscribed"} ## bridge.kafka.hook.session.unsubscribed.1 = {"filter":"#", "topic":"session_unsubscribed"} ## bridge.kafka.hook.message.deliver.1 = {"filter":"#", "topic":"message_deliver"}## filter 为需要处理的 MQTT 主题, topoc 为写入的 Kafka 主题 ## 注册多个 Hooks 实现上行、下行消息处理## 上报指令选择 publish hooks bridge.kafka.hook.message.publish.1 = {"filter":"devices/+/state", "topic":"message_state"}## 下发指令选择 acked hooks,确保消息抵达才入库 bridge.kafka.hook.message.acked.1 = {"filter":"devices/+/command", "topic":"message_command"}
Kafka 安装与初始化
通过 Docker 进行安装 Kafka,映射数据 9092
端口供连接使用,Kafka 依赖 Zookeeper,下面提供完整安装命令:
## 安装 Zookeeper docker run -d --name zookeeper -p 2181 -t wurstmeister/zookeeper## 安装并配置 Kafka docker run -d --name kafka --publish 9092:9092 \--link zookeeper --env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \--env KAFKA_ADVERTISED_HOST_NAME=127.0.0.1 \--env KAFKA_ADVERTISED_PORT=9092 \wurstmeister/kafka:latest
预先在 Kafka 创建需要使用的主题:
## 进入 Kafka Docker 容器 docker exec -it kafka bash## 上行数据主题 message_state kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic message_state## 下行数据主题 message_command kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic message_command
至此,可以重启 EMQ X 并启动插件以应用以上配置:
./bin/emqx stop./bin/emqx start## 或使用 console 模式可以看到更多信息 ./bin/emqx console## 启动插件 ./bin/emqx_ctl plugins load emqx_bridge_kafka## 启动成功后会有以下提示 Plugin load emqx_bridge_kafka loaded successfully.
模拟测试
使用 kafka-console-consumer 启动消费
该方案中三个业务环节详细实现本文不再赘述,本文仅需保证消息写入 Kafka 即可,可以使用 Kafka 自带的消费命令查看主题内的数据:
## 进入 Kafka Docker 容器 docker exec -it kafka bash## 上行数据主题 kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic message_state --from-beginning## 开启另外一个窗口查看下行数据主题 kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic message_command --from-beginning
命令成功执行后将阻塞等待消费该主题的数据,我们继续后续操作。
模拟测试数据收发
通过 EMQ X 管理控制台中的 WebSocket 工具可以模拟智能门锁上/下行业务数据。浏览器打开 http://127.0.0.1:1883
进入 EMQ X 管理控制台,打开 Tool -> WebSocket 功能,输入连接信息建立 MQTT 连接模拟门锁设备。连接信息里 Client ID 根据业务指定,本文使用 10083618796833171
。
订阅下行控制主题
根据业务需求,需订阅门锁专属下行控制主题 devices/{client_id}/command
,此处需订阅 devices/10083618796833171/command
主题并**设置 QoS = 1**:
模拟下发指令
向门锁控制主题 devices/{client_id}/command
发送开锁指令,此处下发数据为:
主题:
devices/10083618796833171/command
QoS:1
payload:
{ "process_id": "7802441525528958", "action": "unlock", "nonce_str": "u7u4p0n8", "ts": 1574744434, "sign": "e9f5af7deaa28563" }
下发成功后管理控制台 Publish 界面可以收到一条消息:
同时 Kafka message_command
主题消费者将收到一条或多条消息(EMQ X ack hooks 触发次数以实际收到消息客户端数量为准),消息为 JSON 格式,内容经格式化后如下:
{"client_id": "10083618796833171","username": "","from": "10083618796833171","topic": "devices/10083618796833171/command","payload": "eyAgICJwcm9jZXNzX2lkIjogIjc4MDI0NDE1MjU1Mjg5NTgiLCAgICJhY3Rpb24iOiAidW5sb2NrIiwgICAibm9uY2Vfc3RyIjogInU3dTRwMG44IiwgICAidHMiOiAxNTc0NzQ0NDM0LCAgICJzaWduIjogImU5ZjVhZjdkZWFhMjg1NjMiIH0=","qos": 1,"node": "emqx@127.0.0.1","ts": 1574751635845 }
该条消息包含了 MQTT 接收/发布客户端信息与 Base64 编码后的 Payload 数据:
- client_id: 接收客户端 client_id
- username: 接受客户端 username
- from: 发布客户端 client_id
- topic: 消息发布目标主题
- payload: 经 Base64 编码后的消息 Payload
- qos: 消息 QoS
- node: 消息处理节点
- ts: hooks 毫秒级触发时间戳
模拟上报状态
向门锁控制主题 devices/{client_id}/state
发送状态数据,此处发布数据为:
主题:
devices/10083618796833171/state
QoS:1
payload:
{ "process_id": "7802441525528958", "action": "unlock", "battery": 83.4, "lock_state": 1, "version": 1.1, "client_id": "10083618796833171" }
上报成功后 Kafka message_state
消费者将收到一条消息(**EMQ X publish hooks 触发次数与发布消息有关,与消息主题是否被订阅以及订阅数量无关**),消息为 JSON 格式,内容经格式化后如下:
{"client_id": "10083618796833171","username": "","topic": "devices/10083618796833171/state","payload": "eyAgICJwcm9jZXNzX2lkIjogIjc4MDI0NDE1MjU1Mjg5NTgiLCAgICJhY3Rpb24iOiAidW5sb2NrIiwgICAiYmF0dGVyeSI6IDgzLjQsICAgImxvY2tfc3RhdGUiOiAxLCAgICJ2ZXJzaW9uIjogMS4xLCAgICJjbGllbnRfaWQiOiAiMTAwODM2MTg3OTY4MzMxNzEiIH0=","qos": 1,"node": "emqx@127.0.0.1","ts": 1574753026269 }
该条消息仅包含 MQTT 发布客户端信息与 Base64 编码后的 Payload 数据:
- client_id: 发布客户端 client_id
- username:发布客户端 username
- topic: 消息发布目标主题
- payload: 经 Base64 编码后的消息 Payload
- qos: 消息 QoS
- node: 消息处理节点
- ts: hooks 毫秒级触发时间戳
至此,我们成功完成 EMQ X 桥接消息至 Kafka 所有步骤,业务系统接入 Kafka 后可以根据消费到的消息数量、消息发布者/订阅者的 client_id 以及消息 payload 内容进行业务判断,实现所需业务功能。
性能测试
如果读者对该方案的性能感兴趣,可以采用 MQTT-JMeter 插件对其进行测试。需要注意的是,读者需要在性能测试过程中保证做好 EMQ 集群、Kafka 集群、Kafka 的消费者,以及 JMeter 测试集群相关的优化与配置,才可以得到相关配置下正确的最佳性能测试结果。
总结
通过本文读者可以了解到 EMQ X + Kafka 物联网消息处理方案为消息通信与业务处理带来的重要作用,利用该方案可以搭建松耦合、高性能、高容错的物联网消息处理平台,实现数据高效、安全地处理。
本文编码实现具体的业务逻辑,读者可以根据本文提供的业务原型与系统架构进行扩展。由于 RabbitMQ、RocketMQ、Pulsar 等 EMQ X 已经支持的消息/流处理中间的在物联网项目中集成的架构思想与 Kafka 相近,读者也可以以本文作为参考,根据自身技术栈自由选用相关组件进行方案集成。
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 在centos7中使用systemd部署flask以及golang程序自启动
最近在部署一些web服务,有的是用python的flask框架写的,有的是用golang的beego框架写的。在部署过程中需要将这些服务变成自启动服务,且需要该服务具有启动失败或中断后能够自动重新启动的功能。当然之前很多人喜欢写个shell脚本来处理,但现在比较主流的方法是通过systemd来…...
2024/3/29 12:18:18 - Linux安装Nginx以及常用配置
Nginx安装安装如下依赖:yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget步骤一:执行下面命令下载nginx源码wget http://nginx.org/download/nginx-1.10.2.tar.gz步骤二:执行下面命令…...
2024/5/2 1:06:18 - JVM符号引用与直接引用
Java类从加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括,加载 ,验证 , 准备 , 解析 , 初始化 ,卸载 ,总共七个阶段。其中验证 ,准备 , 解析 统称为连接。而在解析阶段会有一个步将常量池当中二进制数据当中的符号引用转化为直接引用的过程。符号引用 :符号…...
2024/4/11 4:34:56 - davinci报栈溢出
可能是sql验证的正则表达式出问题,导致递归调用 1,调整数据正规化 2,调整正则 3,注释正则校验public List<Map<String, Object>> query4List(String sql, int limit) throws Exception { // sql = filterAnnotate(sql); } java.lang.StackOverflowError…...
2024/3/29 12:18:15 - Jupyter Notebook使用Anaconda虚拟环境
创建和使用虚拟环境的过程见:Anaconda虚拟环境第一步:安装ipykernel: 法一: 1.进入虚拟环境Windows:在Anaconda Prompt, 运行 activate myenv macOS & Linux, 在Terminal, 运行 source activate myenv安装ipykernel:conda install ipykernel法二: 在任何环境下都可以…...
2024/3/29 12:18:14 - 记录一次Glide加载网络图片失败class com.bumptech.glide.load.engine.GlideException: Failed to load resource(真正终结篇)
前段时间项目遇到一个很奇怪的问题,因为另外一个项目之前用glide加载网络图片是正常的,同样的代码,换了项目就是加载不了,用PC浏览器能打开,查了很久依然无获。错误信息如下:com.bumptech.glide.load.engine.GlideException: Failed to load resourceCause (1 of 6): cla…...
2024/4/15 21:55:51 - python初学---分次写文件
text=’’’ frist line second line thrid line end rrrrrrr ‘’’ font=open(‘tmp1.txt’,‘w’) size =len(text) #初始位置 offset= 0 #增量 chunk=100 while offset<size: font.write(book[offset:offset+chunk]) #初始位置加增量 offset=offset+chunk font.close()...
2024/4/21 22:54:09 - idea链接不上虚拟机上的redis问题解决
最近在虚拟机上搭建了redis环境,想在idea中写一个demo工程测试一下,于是乎遇到了链接不上的问题,下面介绍问题排查方式。 1、查看redis是否真正启动,使用下列命令查看 ps -ef |grep redis2、打开配置文件(redis.conf)确保下列内容注释掉,不然redis只会允许虚拟机本机进行…...
2024/3/29 12:18:11 - Redis分布式锁的正确实现方式(Java版)(转载)
https://wudashan.cn/2017/10/23/Redis-Distributed-Lock-Implement/ 写得很难,通俗易懂。...
2024/4/22 13:48:17 - Google命名规范
Google 命名规范 Python 命名方法Type Public InternalModules lower_with_under _lower_with_underPackages lower_with_underClasses CapWords _CapWordsExceptions CapWordsFunctions lower_with_under() _lower_with_under()Global/Class Constants CAPS_WITH_UNDER _CAPS_…...
2024/4/30 2:19:42 - easy_install与pip 区别
easy_insall的作用和perl中的cpan,ruby中的gem类似,都提供了在线一键安装模块的傻瓜方便方式,而pip是easy_install的改进版,提供更好的提示信息,删除package等功能。老版本的python中只有easy_install,没有pip。easy_install的用法:1) 安装一个包$ easy_install <pa…...
2024/4/20 4:19:39 - dart flutter 文件与库的引用导出
前言dart语言的库及其相关语法是了解dart应用代码组织的基础。网上查找的相关资料往往只是涉及某几个点,很难有系统性的认识,这里笔者将结合一些文档和个人实践经验来对dart的库及其相关语法进行一个梳理。 库的引入dart中,任意一个文件都会被认为是一个库,尽管其中可能并没…...
2024/5/1 21:35:56 - Python的内置函数(三十九)、 islower()
描述islower() 方法检测字符串是否由小写字母组成。语法islower()方法语法:str.islower()参数无。 返回值如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False实例以下实例展示了islower()方法的实例:#!/usr/bi…...
2024/4/21 15:08:50 - win系统下载地址
https://www.jianshu.com/p/8d42d0d30f80...
2024/4/22 14:55:16 - Vsphere6.5学习笔记
虚拟机和虚拟基础架构 支持虚拟机的基础架构至少包含两个软件层:虚拟化层和管理层。在 vSphere 中,ESXi 提供虚拟化功能,用于将主机硬件作为一组标准化资源进行聚合并将其提供给虚拟机。可以在 vCenter Server 管理的 ESXi 主机上运行虚拟机。 2、vCenter Server 可用于将多…...
2024/3/29 7:53:42 - Mybaits-plus采坑之IService接口remove 方法一直返回true
版本 springboot 2.0.3 + mybatis-plus 3.1.0起因 在使用MP时,我自己的Service 接口可以实现MP的IService接口,这样外部就可以直接使用Service接口调用MP通用的CRUD方法,MP IService接口save update remove (新增 ,修改,删除)方法返回类型是boolean,正常逻辑来说就是上述…...
2024/3/29 7:53:41 - 一万小时定律
作家格拉德威尔在《异类》一书中指出:“人们眼中的天才之所以卓越非凡,并非天资超人一等,而是付出了持续不断的努力。1万小时的锤炼是任何人从平凡变成超凡的必要条件”。他将此称为“一万小时定律”。要成为某个领域的专家,需要10000小时,按比例计算就是:如果每天工作八…...
2024/3/29 7:53:40 - JAVA-Dubbo上
Dubbo 支持哪些协议,每种协议的应用场景,优缺点? dubbo: 单一长连接和 NIO 异步通讯,适合大并发小数据量的服务调用, 以及消费者远大于提供者。传输协议 TCP,异步,Hessian 序列化; rmi: 采用 JDK 标准的 rmi 协议实现,传输参数和返回参数对象需要实现 Seriali…...
2024/4/29 18:57:47 - 用IDEA编写scala程序并打包提交到虚拟机中运行——补作业、还债系列
本文只要是参考了同学的文章,链接如下: 添加链接描述 环境搭建什么的因为之前就做好了,所以此处不再赘述,直接按照上面的链接做是没有问题的List item 编写hello_world 敲代码的时候,少敲了一个“l”,没办法,凑合着看吧 = = object hello_word {def main(args: Array[St…...
2024/3/29 12:18:08 - mysql相关知识汇总学习
1: mysql 相关按照包下载和使用mysql zip版本的安装和配置Navicat for MySQL macOS xNavicat Premium 12 for Mac 12.0.23 开发版本 xNavicat Premium开发版 V12.0.11.0永久使用 for windows x2: 关于mysql字符集说明,解决不能保存表情问题字符集说明: 参加:字节、字、bi…...
2024/4/1 15:45:04
最新文章
- 华为校招机试 - 找到内聚值最大的微服务群组(20240424)
题目描述 开发团队为了调研微服务调用情况,对 n 个微服务调用数据进行了采集分析,微服务使用数字 0 至 n-1 进行编号。 给你一个下标从 0 开始的数组 edges,其中 edges[i] 表示存在一条从微服务 i 到微服务 edges[i] 的接口调用。 我们将形成 1 个环的多个微服务称为微服…...
2024/5/2 1:32:24 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 视觉循迹小车(旭日x3派、opencv)
基于旭日x3派的视觉循迹小车,未完全实现,参考:https://developer.horizon.cc/forumDetail/146176819622746404 效果硬件视觉循迹原理python代码 效果 硬件 1、旭日x3派(烧录好系统镜像) 2、USB摄像头 3、TB6612 4、小…...
2024/4/15 8:48:11 - nginx的https与动态负载均衡
nginx的https 证书可以根据你的域名和服务器服务商去进行签发 , 比如 : 阿里云 腾讯云 百度云 华为云等 这里使用的是腾讯云 : 下载证书 : 选择 nginx: 下载之后传递到服务器上。 下面开始配置nginx的https: 1. 解压下载的证书包 cd /etc/ssl unzip xxcc.dwa_nginx.zip mv…...
2024/5/1 14:13:19 - 2024蓝桥杯每日一题(区间DP)
备战2024年蓝桥杯 -- 每日一题 Python大学A组 试题一:游戏 试题二:石子合并 试题三:密码脱落 试题四:能量项链 试题一:游戏 【题目描述】 玩家一和玩家二共同玩一个小游戏。给定一个包含 N 个…...
2024/4/29 11:06:19 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/1 17:30:59 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/30 18:14:14 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/29 2:29:43 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/30 18:21:48 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/30 9:43:09 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/29 20:46:55 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/30 22:21:04 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/1 4:32:01 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/30 9:42:22 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/30 9:43:22 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/30 9:42:49 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57