- 2025-01-07最近使用stm32遇见的一些坑
遇见很多无厘头的问题让人实在头疼1.STM32STLinkv2本来自己画一款控制板,开心焊接完后发现stlink用不了,本来之前一直使用usbtypeC接口下载程序,后续因为特殊需求修改为只有stlink接口,但是发现用不来,不论如何修改stm32cubeprogrammer都无法连接,一直出现nostm32targetfound。
- 2025-01-07Java io模型
为了保证操作系统的稳定性和安全性,一个进程的地址空间划分为用户空间(Userspace)和内核空间(Kernelspace)。像我们平常运行的应用程序都是运行在用户空间,只有内核空间才能进行系统态级别的资源有关的操作,比如文件管理、进程通信、内存管理等等。也就是说,我们想要进行
- 2025-01-06PHP语言的并发编程
PHP语言的并发编程引言随着互联网技术的迅速发展,Web应用的复杂性和用户并发请求的增加,要求开发者在构建高性能应用时考虑并发编程。并发编程允许程序在同一时间执行多个任务,这对于处理高流量网站、API和实时应用程序至关重要。虽然PHP是一种广泛使用的服务器端编程语
- 2025-01-05[ Netty ] 通过Netty聊天业务来加深理解Netty运行以及网络编程.
引言这几天在学习Netty网络编程的过程当中对Netty的运作原理及流程有一定的了解,通过Netty实现聊天业务来加深对Netty的理解.这里用一张图概括运行流程这里我在Github上面找到一位大神总结的尚硅谷的学习笔记,里面有写Netty的运作原理(但是因为前面一直在讲原理我自己身原因容
- 2025-01-04Python--pika (rabbitmq)
connectionconnection=BlockingConnection(ConnectionParameters(host='xxx',port=xxx,credentials=PlainCredentials(username='xxx',password='xxx')))channelchannel=connection.channel()生
- 2025-01-02记录一次SQL慢查询优化
作者:京东物流赫占星一、慢SqL发现在一次需求UAT上线后,本来在测试环境没问题的接口,UAT环境出现了接口超时,通过查询接口日志发现是SQL查询超时了,原因是UAT环境的数据量比测试环境大得多。一般来说,我们可以通过数据库本身的慢查询日志去定位出问题的慢SQL,但是对于京东,易维平台为
- 2024-12-318、RabbitMQ队列之发布确认【RabbitMQ官方教程】
Publisher确认是一个RabbitMQ扩展,用于实现可靠的发布。当发布者确认在通道上启用时,客户端发布的消息将由代理异步确认,这意味着它们已在服务器端得到处理。概述在本教程中,我们将使用发布者确认来确保发布的消息已安全到达代理。我们将介绍使用出版商确认的几种策略,并解释它们的优
- 2024-12-317、RabbitMQ队列之远程调用(RPC)【RabbitMQ官方教程】
在第二个教程中,我们学习了如何使用工作队列在多个工作人员之间分配耗时的任务。但是,如果我们需要在远程计算机上运行一个函数并等待结果呢?好吧,那是另一回事。这种模式通常被称为远程过程调用或RPC。在本教程中,我们将使用RabbitMQ构建一个RPC系统:一个客户端和一个可扩展的RPC服务
- 2024-12-316、RabbitMQ队列之主题【RabbitMQ官方教程】
在前面的教程中,我们改进了日志系统。我们没有使用只能进行虚拟广播的扇出交换机,而是使用了直接交换机,从而有可能选择性地接收日志。虽然使用直接交换改进了我们的系统,但它仍然有局限性——它不能基于多个标准进行路由。在我们的日志系统中,我们可能不仅要根据严重性订阅日志,还要
- 2024-12-315、RabbitMQ队列之路由【RabbitMQ官方教程】
在前面的教程中,我们构建了一个简单的日志系统。我们能够向许多接收器广播日志消息。在本教程中,我们将为其添加一个功能——我们将使仅订阅消息的一个子集成为可能。例如,我们将能够仅将关键错误消息定向到日志文件(以节省磁盘空间),同时仍然能够在控制台上打印所有日志消息。 绑定
- 2024-12-314、RabbitMQ队列之发布/订阅模式【RabbitMQ官方教程】
在前面的教程中,我们创建了一个工作队列。工作队列背后的假设是,每个任务只传递给一个工作者。在这一部分中,我们将做一些完全不同的事情——我们将向多个消费者传递一个信息。这种模式被称为“发布/订阅”。为了说明这种模式,我们将构建一个简单的日志系统。它将由两个程序组成——
- 2024-12-30rabbitmq-1
1.消息队列点到点模式发布订阅模式2.rabbitMQ简介3.AMQP协议4.工作原理图及核心概念原理图核心概念Broker:接收和分发消息的应用,RabbitMQServer就是MessageBrokerVirtualhost:出于多租户和安全因素设计的,把AMQP的基本组件划分到一个虚拟的分组中,类似于网络中
- 2024-12-302、RabbitMQ队列之HelloWorld【RabbitMQ官方教程】
简介1.本教程假设RabbitMQ已安装并在本地主机的标准端口(5672)上运行。如果您使用不同的主机、端口或凭据,则需要调整连接设置。2.如果你在学习本教程时遇到困难,可以通过 GitHubDiscussions或者RabbitMQcommunityDiscord与我们联系RabbitMQ是一个消息代理:它接受和转发消息。
- 2024-12-29Go 并发之goroutine和Channel讲解
目录1并发1.1简介1.2Goroutine1.2.1简介1.2.2特点1.2.3检测数据访问冲突1.2.4示例1.3通道(Channel)1.3.1普通通道1.3.1.1简介1.3.1.2声明通道1.3.1.3普通通道示例1.3.2带缓冲区通道1.3.2.1简介1.3.2.2带缓冲区通道示例1.3.3遍历1.3.3.1for遍历1.3.3.2range遍历
- 2024-12-24Go channel 原理
作用Go语言的channel是一种goroutine之间的通信方式,它可以用来传递数据,也可以用来同步goroutine的执行。chan是goroutine之间的通信桥梁,可以安全地在多个goroutine中共享数据。使用chan实现goroutine之间的协作与同步,可用于信号传递、任务完成通知等。select
- 2024-12-24C# Channel学习
Channel是C#新推出的一个容器类型,具有异步、高性能、线程安全等特点,相当于一个封装好的队列容器,可以一边向里面放数据,一边从里面拿数据,用来做消息队列非常的方便Channel有2个静态方法可以创建有限和无限2种通道创建的时候,可以设置Options(BoundedChannelOptions或者UnboundedCha
- 2024-12-23操作003:工作队列模式
文章目录操作003:工作队列模式一、生产者代码1、封装工具类2、编写代码3、发送消息效果二、消费者代码1、编写代码2、运行效果操作003:工作队列模式一、生产者代码1、封装工具类packagecom.atguigu.rabbitmq.util;importcom.rabbitmq.client.Connection;
- 2024-12-23在.NET Core中使用异步多线程高效率的处理大量数据的一种解决方案
目录一、引言二、假设场景三、解决方案四、示例代码一、引言处理大量数据是一个常见的需求,传统的同步处理方式往往效率低下,尤其是在数据量非常大的情况下。本篇将介绍一种高效的多线程异步处理大数据量的方法,通过边处理边消费的方式,极大地提高了处理效率,并且减少了内存开销。这
- 2024-12-22第四届“鹏城杯”联邦网络靶场协同攻防演练(初赛)WriteUp
miscSimplesteganography解压出来一个png修复宽高出1半flag。hint.txt用ntfs流导出一张png图片。从里面拆出一个jpg。arnold置乱解码一次得到flag另一半。取证dump出桌面的base.zip。爆破解压得到base64码表u3=LEnoG9HX2fJPVyIUpjax+8CSqsBOYWmzekwA1Z5grM0F/6DTNhQb
- 2024-12-22如何在易优CMS中定义并使用自定义变量?
在易优CMS中,你可以使用assign标签来定义自定义变量,并在其他标签中引用这些变量。以下是一个具体的示例:{eyou:assignname='typeid'value='5'/}{eyou:typetypeid='$typeid'}<ahref="{$field.typeurl}">{$field.typename}</a>{/eyou:type}{eyou:cha
- 2024-12-19flutter_harmonyOS编写自己的插件(一)
flutter_harmonyOS编写自己的插件(一)一.注册自己的插件融入ohos工程1.EntryAbility端代码exportdefaultclassEntryAbilityextendsFlutterAbility{configureFlutterEngine(flutterEngine:FlutterEngine){super.configureFlutterEngine(flutterEngine)flut
- 2024-12-18netty echo例子
netty使用方法:1.选择事件处理线程池EventLoopGroup,要与下面的管道选择对应名称,服务端要两个(一个是接收客户端连接,另一个是处理客户端请求),客户端只需要一个(处理客户端请求)2.创建Bootstrap对象,配置事件处理线程池(上面new的Group)3.设置管道(有NioSocketChannel,Ep
- 2024-12-18Netty网络框架详细讲解
一、Netty基本内容1.什么是netty?Netty是一个异步的、基于事件驱动的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端。异步的:事件驱动:基于JavaNIO(Non-blockingI/O)的Selector实现的。Netty的核心设计目标是:高性能:充分利用JavaNIO的非阻塞特性。可扩
- 2024-12-18harmony_flutter_udid
harmony_flutter获取udidUDID说明:在恢复出厂设置后,UDID(唯一设备标识符)可能会发生变化!另外,如果设备通过OTA(在线更新)升级到了Android8.0,并且应用程序被重新安装了,由于Android8.0的安全性更改,UDID也可能会改变。对于已经获取root权限或越狱的设备,其ID是可以被更改的,请注意这一点
- 2024-12-17实时数据采集Flume
Flume概述Flume是一个分布式、可靠且高可用的海量日志采集、聚合和传输的系统,它能够从不同的数据源(比如各种服务器上产生的日志文件等)实时地收集数据,并将这些数据高效地传输到诸如Hadoop的HDFS、HBase等数据存储或分析平台中,方便后续进行数据处理与分析等操作。Flume架构及组