Asmack开发系列之XMPP概述

简介:

这一节,我们从Asmack基于的协议核心出发,XMPP协议,来学习。弄懂XMPP对学习Asmack源码有着重要的原因,做到知其然知其所以然。

本文主要是学习《XMPP The Definitive Guide Building Real-Time Applications with Jabber Technologies》文总结而来。


1,您能够拿XMPP来做什么?

XMPP(Extensible Messaging and Presence Protocol),主要是传输XML数据。

典型的XMPP实现一般包含如下服务(Services):

1)通道加密(Channel Encryption)。虽然加密通信不是必须的,但对于建立安全软件却是非常必须的。

2)鉴权(Authentication)。用户需要通过xmpp来通信,首先要进行登入鉴权。

3)上线/出席(Presence)。主要是负责“好友在线么?不在线?还有就是,我上线了,我下线了”等。

4)花名册/联系人列表(Contact list)。

5)一对一通信(One-to-One Messaging)。

6)群对话(Multi-party Messaging)。

7)通知(Notifications)。广播一样,有点像QQ的右下角弹框。当然,你可以定制主题topic

8)服务发现(Service Discovery)。服务发现,你可以知道别的节点支持什么样的服务。

9)能力广告(Capabilities advertisement)。作为服务发现的一个补充。

10)结构化数据表单(structured data forms)。可以和其他节点交换类似与html表单的数据。

11)流程管理(Workflow Managerment)

12)Peer-to-Peer富媒体会话。这个用来传输多媒体数据,用作语音对话,视频对话,文件传输等。

以上就是一个典型的实现XMPP协议库需要支持的服务。


2,应用

以下是能够使用XMPP来做的应用:

1)即时通信(Instant Messaging)。

2)群组对话(GroupChat)。

3)游戏(Gaming)。

4)系统控制(System Control)。

5)定位。

6)云计算中间件。

7)内容发布系统。

8)IP电话(VoIP)。

9)标识系统。


3,历史(略)






相关文章
|
机器学习/深度学习 传感器 自动驾驶
基于深度学习的图像识别技术在自动驾驶汽车中的应用####
【10月更文挑战第21天】 本文探讨了深度学习中的卷积神经网络(CNN)如何革新自动驾驶车辆的视觉感知能力,特别是在复杂多变的道路环境中实现高效准确的物体检测与分类。通过分析CNN架构设计、数据增强策略及实时处理优化等关键技术点,揭示了该技术在提升自动驾驶系统环境理解能力方面的潜力与挑战。 ####
734 0
|
存储 缓存 NoSQL
《电商库存系统超卖事故的技术复盘与数据防护体系重构》
本文复盘某生鲜电商库存系统因设计漏洞引发的秒杀超卖事故:活动中草莓库存出现负数值,超300用户下单成功后被告知无货,还存在“支付却未扣减库存”“显示有库存却无法支付”等异常。排查发现,问题源于支付回调无幂等校验致重复扣减、库存释放失败未重试引发“幽灵锁定”、Redis与数据库库存同步失效。通过添加接口幂等校验、重构分布式事务逻辑(引入Seata框架)、设计缓存与数据库一致性双保障机制,系统问题得以解决,最终提炼出电商库存系统“接口必幂等、事务必闭环、缓存不代数据库”的核心设计原则。
467 7
|
XML 传感器 网络协议
WebSocket与XMPP:即时通讯技术的本质区别与选择逻辑优雅草卓伊凡|片翼|许贝贝
WebSocket与XMPP:即时通讯技术的本质区别与选择逻辑优雅草卓伊凡|片翼|许贝贝
364 0
|
NoSQL 关系型数据库 MySQL
数据库云大使618活动重磅来袭!
【阿里云云大使618狂欢季】,报名参与活动并邀请新客下单,最高享45%推广返利+9万额外活动奖励!四步躺赚万元现金!
|
存储 人工智能 自然语言处理
云上玩转DeepSeek系列之二:PAI+DeepSeek,打造智能问答助手
本文将为您带来“PAI+DeepSeek,30分钟打造支持连网搜索+私有知识库的智能应用”最佳实践,大模型能力、联网能力再加持 RAG 方案,实现 DeepSeek 系列模型与现有业务的高效融合。
|
安全 Java Android开发
Kotlin为什么没有Java流行
Kotlin流行不起来的原因
680 1
|
SQL 人工智能 数据管理
跨云数据管理平台DMS:构建Data+AI的企业智能Data Mesh
跨云数据管理平台DMS助力企业构建智能Data Mesh,实现Data+AI的统一管理。DMS提供开放式元数据服务OneMeta、一站式智能开发平台和云原生AI数据平台,支持多模数据管理和高效的数据处理。结合PolarDB、AnalyticDB等核心引擎,DMS在多个垂直场景中展现出显著优势,如智能营销和向量搜索,提升业务效率和准确性。通过DataOps和MLOps的融合,DMS为企业提供了从数据到AI模型的全生命周期管理,推动数据驱动的业务创新。
1433 0
|
运维 监控 安全
高效运维管理:提升系统可靠性的策略与实践
本文将深入探讨高效运维管理的关键策略和实践,旨在帮助运维团队提高系统的可靠性、可用性和稳定性。通过分析常见的运维挑战,提出相应的解决方案,并结合实际案例进行说明,为读者提供一套行之有效的运维管理指南。无论是新手还是经验丰富的运维工程师,都能从中获得有价值的见解和实用技巧。
|
存储 Linux Docker
在Docker中,如何更改Docker的默认存储设置?
在Docker中,如何更改Docker的默认存储设置?

热门文章

最新文章