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

    订单实时消息通知实现

    前段时间我们项目有个消息实时推送的需求,比如用户在我们软件下了一个订单,商家在我们软件上不用手动刷新页面就会收到客户下单的消息,就是我们后端主动给前端推送消息。我们就考虑用了实时通讯的技术。 这个项目是暴露出一个发送消息的接口,供我们商城后台调用发送消息实时推送的逻辑功能实现逻辑是前端连接上我们消息同步服务(可以理解为进入游戏大厅),然后订阅我们指定的 url 地址(可以理解为进入某个游戏房间),我们软件调用同步服务发送消息的接口对指定的订阅 url 地址发送消息,这样我们就可以主动给前端推送消息了。 我自己手写了一个简单的聊天室的例子 用浏览器打开两个相同的标签页,在一个标签页输入聊天内容,另外一个聊天页也能收到消息。 ? 也可以通过接口向聊天室发送消息。 ?

    1.8K10发布于 2020-06-16
  • 来自专栏向治洪

    实时消息传输协议(RTMP)详解

    通常情况下,不同类型的消息会被分配不同的优先级,当网络传输能力受限时,优先级用来控制消息在网络底层的排队顺序。 RTMP块流 实时消息传递协议块流(RTMP块流)。 RTMP块流被设计用来传输实时消息协议,它可以使用任何协议来发送消息流。每个消息都包含时间戳和有效类型标识。 C1和S1格式 C1和S1包长度为1536字节,包含以下字段: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 C2和S2格式 C2和S2包长度为1536字节,作为C1和S1的回应,包含以下字段: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 Message Type ID为8,9消息分别用于传输音频和视频数据。Message Type ID为15-20的消息用于发送AMF编码的命令,负责用户与服务器之间的交互,比如播放,暂停等等。

    13.5K52发布于 2018-02-06
  • 来自专栏饭勺oO的技术博客

    造轮子之消息实时推送

    说到消息推送,很多人肯定会想到Websocket,既然我们使用Asp.net core,那么SignalR肯定是我们的首选。 接下来就用SignalR来实现我们的消息实时推送。 约定消息通知结构 为了方便并且统一结构,我们最好约定一组通知格式,方便客户端处理消息。 Type,以及消息数据Data。 配合EventBus进行推送 有时候我们有些任务可能非实时响应,等待后端处理完成后,再给客户端发出一个消息通知。或者其他各种消息通知的场景,那么配合EventBus就可以非常灵活了。 可以看到成功接收到了消息通知。 对接非常容易且灵活。 就这样我们轻轻松松完成了消息实时通知的功能集成。

    71910编辑于 2023-10-18
  • 来自专栏Owen's World

    php实现websocket实时消息推送

    然而在实时通信中,并没有多大的作用,http只能由client发起请求,server才能返回信息,即server不能主动向client推送信息,无法满足实时通信的要求。 Upgrade: websocket //告诉服务器现在发送的是WebSocket协议 Connection: Upgrade Sec-WebSocket-Key: x3JJHMbDL1EzLkh9GBhXDw 那么 $changes = array([1] => Resource id #4),此时用于接收新客户端2连接 * 情况二:如果是客户端1(Resource id #5)发送消息 socket_select有两个作用,这也是实现了IO复用 * 1、新客户端来了,通过 Resource id #4 介绍新连接,如情况一 * 2、已有连接发送数据,那么实时切换到当前连接 // 打开websocket webSocket.onopen = function (event){ onOpen(event); }; //监听消息

    3.1K10编辑于 2021-12-08
  • 来自专栏分享学习

    springBoot集成websocket实时消息推送

    springBoot集成websocket实时消息推送 WebSocket是一种在Web应用程序中实现双向通信的协议。 常见的消息推送方法 WebSocket:通过使用WebSocket协议,可以在Java后端实现双向通信,从而实现消息实时推送。 消息队列:通过使用消息队列如RabbitMQ、ActiveMQ或者Kafka等,Java后端可以将消息发布到消息队列中,然后客户端通过订阅消息队列来获取实时消息推送。 如下图所示,原理就是客户端不断地向服务端发请求,如果服务端数据有更新,服务端就把数据发送回来,客户端就能接收到新数据了 长轮询(Long Polling):虽然不同于实时推送,但长轮询是一种模拟实时推送的技术 在Java后端,你可以实现长轮询机制来达到类似实时推送的效果。 以上是一些常见的Java后端实现消息实时推送提醒的方法。

    3.2K40编辑于 2023-11-17
  • 来自专栏实战docker

    Flink实战:消费Wikipedia实时消息

    article/details/85205622 关于Wikipedia Edit Stream Wikipedia Edit Stream是Flink官网提供的一个经典demo,该应用消费的消息来自维基百科 ,消息中包含了用户名对wiki的编辑情况,demo的官方资料地址:https://ci.apache.org/projects/flink/flink-docs-release-1.2/quickstart /run_example_quickstart.html 消息来源 消息的DataSource是个名为WikipediaEditsSource的类,这里面建立了到irc.wikimedia.org的Socker ,然后统计每个用户十五秒内所有的消息,将每次操作的字节数累加起来,就得到用户十五秒内操作的字节数总和,并且每次累加了多少都会记录下来并最终和聚合结果一起展示; 和官网demo的不同之处 和官网的demo blog_demos.git 该项目源码的仓库地址,ssh协议 这个git项目中有多个文件夹,本章源码在wikipediaeditstreamdemo这个文件夹下,如下图红框所示: [5ha7v7vz9e.jpeg

    1K20发布于 2019-06-02
  • 来自专栏悠扬前奏的博客

    Kafka-9.设计-消息分发语义

    显然,有多个可能的消息专题保证可以提供: 最多一次——消息可能会丢失,但是永远不会重复传递 至少一次——消息永远不会丢失,但是可能会被重新传递 恰好一次——这是人们真正想要的,每条消息传递一次 值得注意的是 ,这会分解成两个问题:发布消息的持久性保证以及消费消息时的保证。 在发布消息时,我们有一个消息被“提交”到日志的概念。一旦提交已经发布的消息,只要把消息复制到分区的broker保持“活动”,它就不会丢失。 如果生产者尝试发布消息并遇到网络错误,则无法确定在提交消息之前或者之后发生了此错误。这类似于使用自动生成的密钥插入数据库表的语义。 为了实现这个目的,broker为每个生产者分配一个ID,并使用生产者发送的序列号和每条消息对每条消息进行重复数据删除。

    62530发布于 2019-06-15
  • 来自专栏子晋城

    IM消息机制(一):保证在线实时消息的可靠投递

    或者说信息)的实时性、必达性。 要想实现应用层的消息可靠投递,必须加入应用层的确认机制,即:要想让发送方client-A确保接收方client-B收到了消息,必须让接收方client-B给一个消息的确认,这个应用层的确认的流程,与消息的发送流程类似 一个应用层即时通讯消息的可靠投递,共涉及6个报文,这就是im系统中消息投递的最核心技术(如果某个im系统不包含这6个报文,不要谈什么消息的可靠性)。 为了保证消息的可靠性,也需要有ack机制,但由于拉取离线消息不存在N报文,故实际情况要简单的多,即先发送offline:R报文拉取消息,收到offline:A后,再发送offlineack:R删除离线消息 ack,群消息就没有这么简单了,群消息存在一个扩散系数,im群消息的可靠投递问题感兴趣的可查阅相关资料。

    2.8K21编辑于 2022-01-18
  • 来自专栏友弟技术工作室

    AlertOver简单好用的实时消息工具

    Alertover是一个高效免费的团队消息中心,可以用来作为中小型创业团队或者公司的消息中心,随时随地,分级别分组接收来自服务器预警,运营管理后台消息,提高技术团队,运营团队的消息响应速度。 支持多发送源,消息分级,声音提示。 从此远离昂贵的短信通知,抛弃乱糟糟的邮件通知。

    1.6K110发布于 2018-04-25
  • 来自专栏跟着飞哥学编程(全栈联盟社区)

    WebSocket实现长连接实时消息推送

    getClients() { return clients; } } 3.具体业务中应用,此处根据自身业务使用 //业务代码,例如:前台发起二维码扫码实名认证请求,需要后台认证完成后主动推送消息给前台修改二维码状态 websocket.onopen = function() { console.log(username+"WebSocket连接成功"); // sock.send(JSON.stringify());//客户端发送消息 }; websocket.onmessage = function(e) {//接收消息 e = e || event; var message = e.data; console.log(username+"接收到消息:"+message); //根据不同状态操作二维码 if(message!

    2.3K10编辑于 2022-11-30
  • 来自专栏飞鸟的专栏

    Redis实现消息队列和实时通信

    消息队列消息队列是一种常用的通信模式,用于解耦消息的发送者和接收者,并实现异步处理。Redis提供了一个名为"List"的数据结构,可以用于实现简单的消息队列。 如果有消息存在,我们打印出消息内容,否则打印出提示信息。使用Redis的List数据结构实现消息队列的优势在于其高效的插入和读取操作,以及支持多个消费者并发消费的能力。 实时通信Redis也可以用作实时通信的工具,其中最常用的方法是通过发布/订阅模式进行消息传递,这在前面的回答中已经详细介绍过了。 另外,Redis还提供了一些其他功能,如集合(Set)和有序集合(Sorted Set),可以用于实现更复杂的实时通信场景。 用户可以加入聊天室、发送消息,并实时接收其他用户发送的消息

    1.3K40编辑于 2023-05-17
  • 来自专栏浮躁的喧嚣

    对象、消息、运行期--9:类族模式

    这种模式最大的好处就是,可以隐藏抽象基类背后的复杂细节,使用者只需调用基类简单的方法就可以返回不同的子类实例。比如NSArray、NSDictionary、UIButton等

    26310编辑于 2023-11-22
  • 来自专栏最新最全的大数据技术体系

    分布式实时消息队列Kafka(四)

    分布式实时消息队列Kafka(四) 知识点01:课程回顾 Kafka中生产者的数据分区规则是什么? 建议使用的分配规则 Kafka中数据读写的流程 分布式存储工具 Zookeeper:分布式协调服务工具 HDFS:分布式文件系统 Hbase:分布式NoSQL数据库 Kafka:分布式消息队列

    1.4K20编辑于 2021-12-07
  • 来自专栏架构之家

    使用Flink 与 Pulsar 打造实时消息系统

    随着数据规模日益增长,产品不断迭代,BIGO 消息流平台承载的数据规模出现了成倍增长,下游的在线模型训练、在线推荐、实时数据分析、实时数仓等业务对消息流平台的实时性和稳定性提出了更高的要求。 为了提高消息队列的实时性、稳定性和可靠性,降低运维成本,我们开始考虑是否要基于开源 Kafka 做本地化二次开发,或者看看社区中有没有更好的解决方案,来解决我们在维护 Kafka 集群时遇到的问题。 实时数据分析和实时推荐。 Pulsar + Flink 实时流平台 在 BIGO,我们借助 Flink 和 Pulsar 打造了实时流平台。 BIGO 基于 Pulsar 和 Flink 构建的实时流平台主要用于实时 ETL 处理场景和 AB-test 场景。

    1.7K20编辑于 2022-07-12
  • 来自专栏最新最全的大数据技术体系

    分布式实时消息队列Kafka(三)

    分布式实时消息队列Kafka(三) 知识点01:课程回顾 请简述Kafka的集群架构及角色功能? acks:返回的确认,当接收方收到数据以后,就会返回一个确认的消息 生产者向Kafka生产数据,根据配置要求Kafka返回ACK ack=0:生产者不管Kafka有没有收到,直接发送下一条

    1.1K40编辑于 2021-12-07
  • 来自专栏最新最全的大数据技术体系

    分布式实时消息队列Kafka(一)

    分布式实时消息队列Kafka(一) 知识点01:课程回顾 Hbase是什么? 分布式基于内存按列存储NoSQL数据库,用于实时、随机读写大量的数据 Hbase的设计思想是什么? 简单点说:消息队列MQ用于实现两个系统之间或者两个模块之间传递消息数据时,实现数据缓存 功能 基于队列的方式,实现数据缓存 应用场景 用于所有需要实现实时、高性能、高吞吐、高可靠的消息传递架构中 优点 目标:掌握Kafka中的分区副本机制 路径 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7Hzk95MA-1625806073233)(20210329_分布式实时消息队列 Offset 知识点15:Kafka概念:概念对比总结 目标:掌握Kafka中的概念与其他工具的对比,加深理解 路径 HDFS:分布式文件离线存储系统 Hbase:分布式NoSQL实时列存储数据库 Kafka:分布式实时消息队列系统 实施 概念HDFSHbaseKafka第一层逻辑划分第二层逻辑划分存储分区及划分规则分区存储规则分区安全存储单元架构HA 概念 HDFS Hbase

    1.4K30编辑于 2021-12-07
  • 来自专栏最新最全的大数据技术体系

    分布式实时消息队列Kafka(一)

    分布式实时消息队列Kafka(一) 知识点01:课程回顾 Hbase是什么? 分布式基于内存按列存储NoSQL数据库,用于实时、随机读写大量的数据 Hbase的设计思想是什么? 引入Redis,作为读缓存,解决高并发的读 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RaU9EfHR-1617011887969)(20210329_分布式实时消息队列 引入消息队列:解决高并发写问题 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wwEN0xMz-1617011887970)(20210329_分布式实时消息队列Kafka 简单点说:消息队列MQ用于实现两个系统之间或者两个模块之间传递消息数据时,实现数据缓存 功能 基于队列的方式,实现数据缓存 应用场景 用于所有需要实现实时、高性能、高吞吐、高可靠的消息传递架构中 优点 (img-BQ9B1LCt-1617011887972)(20210329_分布式实时消息队列Kafka(一).assets/image-20210328155147841.png)] 实施

    1.8K30发布于 2021-04-09
  • 来自专栏最新最全的大数据技术体系

    分布式实时消息队列Kafka(五)

    分布式实时消息队列Kafka(五) 知识点01:课程回顾 一个消费者组中有多个消费者,消费多个Topic多个分区,分区分配给消费者的分配规则有哪些? 目标:了解消息队列的三种一次性语义 路径 什么是一次性语义? 实施 at-most-once:至多一次 会出现数据丢失的问题 at-least-once:至少一次 会出现数据重复的问题 exactly-once:有且仅有一次 只消费处理成功一次 所有消息队列的目标 小结 Kafka从理论上可以实现Exactly Once 大多数的消息队列一般不能满足Exactly Once就满足at-least-once 知识点07:Kafka保证生产不丢失 知识点08:Kafka 毫秒值segment标记删除后多长时间删除log.cleaner.backoff.ms毫秒值多长时间检查一次是否有数据要删除log.flush.interval.messagesLong.MaxValue消息的条数达到阈值

    1.2K40编辑于 2021-12-07
  • 来自专栏最新最全的大数据技术体系

    分布式实时消息队列Kafka(二)

    分布式实时消息队列Kafka(二) 知识点01:课程回顾 什么是消息队列? 用于两个系统之间或者两个模块之间实现消息传递,基于队列机制实现数据缓存 消息队列的优点是什么? 实现解耦 通过异步,提高性能 消息队列的缺点是什么? 架构更加复杂:如果消息队列出现故障,整个系统都会故障 分布式集群 副本机制 数据维护更加复杂:不丢失,不重复 生产安全:幂等性机制 消费安全:Offset 什么是同步与异步? Kafka是一个基于订阅发布模式的高性能、高吞吐的实时消息队列系统 Kafka在大数据的应用场景是什么? 用于实时架构中:实现数据的临时存储 Kafka中的Producer、Consumer、Consumer Group 、Broker分别是什么?

    70020编辑于 2021-12-07
  • 来自专栏开源技术小栈

    MQTT 与 PHP 使用实时消息传递指南

    client disconnect') ->setLastWillQualityOfService(1); 订阅 程序订阅 emqx/test 的 topic,并为订阅配置回调函数来处理接收到的消息 message on topic [%s]: %s\n", $topic, $message); }, 0); 发布 构造一个有效负载并调用 publish 函数将消息发布到 emqx/test 主题 发布后,客户端需要进入轮询状态来处理传入的消息和重传队列: for ($i = 0; $i< 10; $i++) { $payload = array( 'protocol' => 'tcp MQTT 主题以及接收实时消息。 这是使用 PHP 和 MQTT 构建功能强大的实时应用程序的基础步骤。

    60510编辑于 2025-07-24
领券