首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Ray学习笔记

    10SpringCloud Stream消息驱动

    org.springframework.boot.autoconfigure.SpringBootApplication; /** * @Description: * @Author Ray * @Date 2020/10 * @Author Ray * @Date 2020/10/21 9:14 * @Version 1.0 */ public interface IMessageProvider { * @Author Ray * @Date 2020/10/21 9:14 * @Version 1.0 */ @EnableBinding(Source.class) //定义消息的推送管道 org.springframework.boot.autoconfigure.SpringBootApplication; /** * @Description: * @Author Ray * @Date 2020/10 import org.springframework.stereotype.Component; /** * @Description: * @Author Ray * @Date 2020/10

    43740发布于 2020-11-04
  • 来自专栏NetCore 从壹开始

    【BlogBook书】10、RabbitMQ:消息队列

    框架中重点使用RabbitMQ和Kafka作为消息队列的中间件工具,本章节说明RabbitMQ的具体使用方式。 框架已经完整的封装了EventBus事件总线,如果想要使用更加完善的消息队列的方式,建议使用事件总线,当然也可以直接如下文进行使用。 UserName": "admin", "Password": "admin", "Port": "5672", "RetryCount": 2 }, 二、使用方式 1、在任意位置做消息的发送 "myQueue"); return Ok(); } 3、具体的代码,请参考RabbitMQPersistentConnection.cs即可 ///

    /// 发布消息 : 消费这个消息

    33210编辑于 2024-02-22
  • 来自专栏java架构1+1

    iOS 10 消息推送(UserNotifications)秘籍总结

    楼主装逼,打他 背景 iOS10 新特性一出,各个大神就早已研究新特性能给场景智能化所带来的好处(唉,可惜我只是一个小白)。我也被安排适配iOS10的推送工作! 本文主要是针对iOS 10消息通知做介绍,所以很多代码没有对iOS 10之前做添加适配。 服务端程序向APNS服务发送消息。 APNS服务将消息发送给iPhone应用程序。 NSLog(@"iOS10 收到远程通知:%@",userInfo); }else { // 判断为本地通知 //此处省略一万行需求代码。。。。。。 推送消息的横幅都可以展示出来!

    3.5K40发布于 2019-06-19
  • 来自专栏游戏开发司机

    UNIX(进程间通信):10 消息队列

    一、消息队列的特点 1.消息队列是消息的链表,具有特定的格式,存放在内存中并由消息队列标识符标识. 2.消息队列允许一个或多个进程向它写入与读取消息. 3.管道和命名管道都是通信数据都是先进先出的原则 4.消息队列可以实现消息的随机查询,消息不一定要以先进先出的次序读取,也可以按消息的类型读取.比FIFO更有优势。 目前主要有两种类型的消息队列:POSIX消息队列以及系统V消息队列,系统V消息队列目前被大量使用。系统V消息队列是随内核持续的,只有在内核重起或者人工删除时,该消息队列才会被删除。 参数: msqid:消息队列ID,消息队列标识符,该值为msgget创建消息队列的返回值。 ,即向消息队列中发送一条消息

    1.3K31发布于 2021-03-04
  • 来自专栏老男孩成长之路

    使用消息队列的 10 个理由

    在被许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理过程明确的指出该消息已经被处理完毕,确保你的数据被安全的保存直到你使用完毕。 3. 消息队列降低了进程间的耦合度,所以即使一个处理消息的进程挂掉,加入队列中的消息仍然可以在系统恢复后被处理。 无论有多少进程在从队列中领取数据,每一个消息只能被处理一次。这之所以成为可能,是因为获取一个消息只是"预定"了这个消息,暂时把它移出了队列。 消息系列通过消息被处理的频率,来方便的辅助确定那些表现不佳的处理过程或领域,这些地方的数据流都不够优化。 10. 异步通信 很多时候,你不想也不需要立即处理消息消息队列提供了异步处理机制,允许你把一个消息放入队列,但并不立即处理它。你想向队列中放入多少消息就放多少,然后在你乐意的时候再去处理它们。

    45110发布于 2020-01-15
  • 来自专栏浮躁的喧嚣

    对象、消息、运行期--10:runtime关联对象

    在category中的使用 @property添加属性 ,不会生成带下划线的成员变量,也不会有setter和getter方法实现,所以我们通过runtime关联对象的技术为已经存在的类添加“属性”,这样我们只是实现了setter和getter方法,依然不会有带下划线的成员变量

    38310编辑于 2023-11-22
  • 来自专栏Java技术栈

    使用消息队列(MQ)的 10 个理由!

    在被许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理过程明确的指出该消息已经被处理完毕,确保你的数据被安全的保存直到你使用完毕。 消息队列降低了进程间的耦合度,所以即使一个处理消息的进程挂掉,加入队列中的消息仍然可以在系统恢复后被处理。 无论有多少进程在从队列中领取数据,每一个消息只能被处理一次。这之所以成为可能,是因为获取一个消息只是"预定"了这个消息,暂时把它移出了队列。 消息系列通过消息被处理的频率,来方便的辅助确定那些表现不佳的处理过程或领域,这些地方的数据流都不够优化。 10、异步通信 很多时候,你不想也不需要立即处理消息消息队列提供了异步处理机制,允许你把一个消息放入队列,但并不立即处理它。你想向队列中放入多少消息就放多少,然后在你乐意的时候再去处理它们。

    93830发布于 2020-12-18
  • 来自专栏林德熙的博客

    win10 uwp 在 Grid 接收键盘消息

    小伙伴问我为什么他的选中的 Grid 无法接收到键盘消息,原因是在 UWP 中只有 Control 类才可以拿到键盘焦点,而 Grid 是 Panel 没有继承 Control 类所以 Grid 无法拿到焦点 void OnKeyDown(KeyRoutedEventArgs e) { Debug.WriteLine("Foo key down"); } } 在需要接收键盘消息的 Grid 里面放这个控件 <Grid x:Name="Grid2" Margin="<em>10</em>,<em>10</em>,<em>10</em>,<em>10</em>" Width="100" Background="#565656" HorizontalAlignment Grid2_OnKeyDown"> <local:Foo x:Name="Foo"></local:Foo> </Grid> 此时在 Foo 有焦点的时候,让 Grid2 收到消息

    1K20编辑于 2022-08-07
  • 来自专栏攻城狮Chovas

    微服务架构Day10-SpringBoot之消息

    消息服务 消息服务中间件可以用来提升系统异步通信,扩展解耦能力 消息服务两个重要概念: 消息代理(message broker) 目的地(destination) 当消息发送者发送消息后,将由消息代理接管 ,消息代理保证消息传递到指定目的地 消息队列主要有两种形式的目的地: 队列(queue)-主题(topic) 队列(queue): 点对点消息通信(point-to-point) 点对点式: 消息发送者发送消息 ,消息代理将消息放入一个队列中,消息接收者从队列中获取消息内容,消息读取后被移除队列 消息只有唯一的发送者和接受者,但不是说只有一个接收者 主题(topic): 发布(publish)-订阅(subscribe 消息是不具名的,由消息头和消息体组成 消息体(数据)是不透明的,消息头由一系列可选属性组成 routing-key: 路由键 priority: 优先级 delivery-model: 是否持久性存储 是消息的容器,也是消息的终点 一个消息可以投入一个或多个队列 消息一直在队列里面,等待消费者连接到这个队列取走 Binding: 绑定 用于消息队列和交换器之间的关联 一个绑定就是基于路由键将交换器和消息队列连接起来的路由规则

    54320编辑于 2022-01-22
  • 来自专栏腾讯云中间件的专栏

    腾讯云消息队列产品10月产品动态

    10月动态 消息队列 RocketMQ 版 【商业化】消息队列 RocketMQ 版专享集群正式商业化。基于开源RocketMQ打造,兼容社区SDK,具有低延迟、高性能、高可靠、万亿级消息吞吐等特点。 【新功能】新增消息验证能力,查询到特定消息后,用户可以将指定消息推送给指定的在线客户端,以检测客户端消费逻辑和结果是否符合预期等。 ★ 消息队列 RabbitMQ 版 【商业化】10月9日起,消息队列 RabbitMQ 版专享集群正式商业化。 基于开源 RabbitMQ 消息队列引擎,提供稳定可靠、高扩展性、易用免运维的消息队列服务。AMQP 协议的标杆,提供灵活的路由适应各类业务的消息投递规则。 group页面展示消费客户端优化,支持查看消息的消费状态、订阅关系一致性和过滤表达式等。 控制台支持发送测试消息消息队列 RabbitMQ 版 专享集群支持升配。

    3.7K20编辑于 2022-11-02
  • 来自专栏骤雨重山

    H5 端唤醒 win10 消息通知

    浏览器也可以调用Win10系统的消息提示,纯JS代码,复制到HTML网页中直接打开即可。

    46620编辑于 2022-01-17
  • 来自专栏林德熙的博客

    win10 支持默认把触摸提升 Pointer 消息

    只要新建框架为 .net 4.7 以上,运行的系统是 Windows 10 Creators Update 1703 10.0.15063 就可以。 打开新建的工程,设置框架。 ? 开启了这个属性就可以使用 Pointer 消息。 因为有小伙伴说使用了我上面代码无法打开 Pointer 消息,我看了他代码,发现他写错了,所以我把全部 App.config 代码写出来。 <? Mitigation: Pointer-based Touch and Stylus Support 在 dotnet core 的 WPF 下,请参阅 WPF dotnet core 如何开启 Pointer 消息的支持

    56220发布于 2020-12-28
  • 来自专栏正则

    如何把Kafka消息时延秒降10

    用户在页面点击从而产生一个HTTP请求,这个请求发送到业务生产进程,就会启动一个投递线程(Deliver Thread)调用Kafka的SDK接口,并发送3条消息到DMS(分布式消息服务),每条消息大小 相比较而言,客户在Pod区使用的是自己搭建的原生Kafka,在并发访问量为100时测试到的时延大约只有10~20ms左右。 入队时延: 消息进入Kafka sdk后,先进入到要发送分区的队列,完成消息打包后再发送,这一过程所用的时间。 发送时延:消息从生产者发送到服务端的时间。 复制时延:消费者只可以消费到高水位以下的消息(即被多个副本都保存的消息),所以消息从写入到Kafka Leader,到所有副本都写入该消息直到上涨至高水位这段时间就是消息复制的时延。 轻轻松松把Kafka消息时延秒降10倍,就用腾讯云DMS

    99661编辑于 2022-04-11
  • 来自专栏个人开发

    10 张图告诉你 RocketMQ 是怎样保存消息

    作为测试,我往 MyTestTopic 这个 Topic 发送了 100 条消息,这些消息保存在了 commitlog 文件。 比如上面的前两个文件,第一个文件中消息最小偏移量是 0,第二个文件中消息最小偏移量是 1048576。 这样通过偏移量查找消息时可以先用二分查找找到消息所在的文件,然后通过偏移量减去文件名就可以方便地找到消息在文件中的物理地址。 如下图: 不同的是,如果消息先写入堆外内存,则 MappedByteBuffer 主要用来读消息,堆外内存用来写消息。这一定程度上实现了读写分离,减少 PageCache 写入压力。 commitlog 中的偏移量,中间 4 个字节保存消息消息大小,最后 8 个字节保存消息中 tag 的 hashcode。

    1.2K31编辑于 2022-12-20
  • 来自专栏福大大架构师每日一题

    2023-07-10:Kafka如何做到消息不丢失?

    2023-07-10:Kafka如何做到消息不丢失? 答案2023-07-10: Kafka采用多种机制来确保消息的不丢失,其中包括副本机制、ISR(In-Sync Replicas)机制以及ACK机制等。 这种方式可能会导致消息丢失,不建议使用。 • acks=1表示生产者在消息被Leader副本确认接收后,视为消息发送成功。如果Leader副本在发送消息后立即发生故障,消息可能会丢失。 如果Follower副本成功复制了消息,但Leader副本在故障前未能将消息写入磁盘,那么这条消息将会丢失。 • acks=all表示生产者在所有ISR副本都确认接收到消息后,才将消息视为发送成功。 这种方式可以最大程度地确保消息不会丢失,但会降低消息发送的性能。 通过合理配置acks参数,我们可以在消息可靠性和性能之间进行权衡,以确保Kafka中的消息不会丢失。 在这里插入图片描述

    1.1K20编辑于 2023-07-25
  • 来自专栏【腾讯云开发者】

    10分钟搞懂!消息队列选型全方位对比

    RocketMQ开源版本延迟消息临时存储在一个内部主题中,不支持任意时间精度,支持特定的level,例如定时5s,10s,1m等。 消息回溯 一般消息在消费完成之后就被处理了,之后再也不能消费到该条消息消息回溯正好相反,是指消息在消费完成之后,还能消费到之前被消费掉的消息消息TTL 消息TTL表示一条消息的生存时间,如果消息发出来后,在TTL的时间内没有消费者进行消费,消息队列会将消息删除或者放入死信队列中。 Kafka根据设置的保留期来删除消息。 例如,如果订阅B没有活动消费者,则在配置的TTL时间段过后,消息M10将自动标记为已确认,即使没有消费者实际读取该消息。 RocketMQ提及到消息TTL的资料比较少,不过看接口似乎是支持的。 Pulsar的优先级队列方案 8.消息中间件选型分析:从Kafka与RabbitMQ的对比看全局 9.RocketMQ中消息的优先级 10.消息队列--NSQ&Kafka 11.三分钟了解RocketMQ

    16.3K11编辑于 2022-02-17
  • 来自专栏全栈程序员必看

    windows10 记事本进程 键盘消息钩子 dll注入

    message.Format("未定义的按键"); break; } return message; } //获取到的wparam是16位的int(也可能是long,这个无所谓),用于标识键盘截取到的消息是哪个键 LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) //这是一个键盘钩子消息的回调函数,当设置钩子成功,dll被注入到目标线程 ,该回调函数会在每次有键盘消息 //传递给目标线程时被调用,第二个参数在这个类型的钩子中放回的是虚拟键盘的信息,其他两个参数我不太清楚 { MessageBox(NULL, IsNumber(wParam "Message"), 0); return CallNextHookEx(g_hHook, nCode, wParam, lParam); //我理解这句代码意思是,如果g_hHook非空,就把消息传给这个句柄 在源文件目录下新建一个名为DLL的def文件: 9、添加如下代码,可以将KeyboardProc函数导出: LIBRARY DLL EXPORTS KeyboardProc 整个项目下只有“源文件”下的两个文件: 10

    2.2K10编辑于 2022-09-17
  • 来自专栏林德熙的博客

    win10 支持默认把触摸提升鼠标事件 打开 Pointer 消息

    只要新建框架为 .net 4.7 以上,运行的系统是Windows 10 Creators Update 就可以。 打开新建的工程,设置框架。 ? 开启了这个属性就可以使用 Pointer 消息。 因为有小伙伴说使用了我上面代码无法打开 Pointer 消息,我看了他代码,发现他写错了,所以我把全部 App.config 代码写出来。 <? library/mt800336(v=vs.110).aspx ---- 本文会经常更新,请阅读原文: https://lindexi.gitee.io/lindexi/post/win10

    1.3K10发布于 2018-09-18
  • 来自专栏暴走大数据

    Spark Core源码精读计划10 | NettyRpcEnv客户端消息发送逻辑

    Dispatcher涉及到的主要是消息接收、路由与处理的机制,也就是NettyRpcEnv作为服务端应该具备的功能。既然它的名字叫“RPC环境”,那么就应该既能接收,也能发送消息。 本文就主要来看一看NettyRpcEnv作为客户端向远端端点发送消息的逻辑。 NettyRpcEnv与消息发送相关的成员 这些成员有些在代码#8.5中出现过,但当时只讲了几个基础的含义,并没有细说。 outboxes维护有远端RPC地址与各个发件箱的映射,需要发送的消息首先会放入Outbox中,再进行处理。所有的消息都继承自OutboxMessage特征。 它也只有两个实现类,分别是无需应答的消息OneWayOutboxMessage和需要应答的消息RpcOutboxMessage。 创建成功之后,再次调用drainOutbox()方法试图处理消息。 向Outbox投递消息 向Outbox投递消息的逻辑位于NettyRpcEnv.postToOutbox()方法中。

    1.1K20发布于 2019-08-08
  • 来自专栏IT大咖说

    RocketMQ源码详解:事务消息、批量消息、延迟消息

    ◆ 概述 在上文中,我们讨论了消费者对于消息拉取的实现,对于 这个黑盒的心脏部分,我们顺着消息的发送流程已经将其剖析了大半部分。本章我们不妨乘胜追击,接着讨论各种不同的消息的原理与实现。 ◆ 事务消息 ◆ 概念 RocketMQ 中的事务消息功能,实际上是 分布式事务中的本地事务表 的实现,只不过,在这里用消息中间件来代替了数据库,同时也帮我们做好了回查的操作。 ◆ 事务流程 客户端发送 half 消息 吐槽一下为什么要叫半消息(half message),叫 prepare 消息不是更直观吗 Broker 将 half 消息持久化 客户端根据事务执行结果,发送 ,来标记可以被移除的 half 消息(op 消息的存在代表对应事务的结束) /** * 读取op消息,解析op消息,填充removeMap * * @param removeMap 要删除的半消息,key ◆ 批量消息 ◆ 概念 在消息队列中,批量消息也是一个重要的部分,将消息压缩在一起发送不仅可以减少带宽的消耗,还能节省头部占用的空间。

    1.6K20发布于 2021-11-26
领券