XMPP 架构

XMPP 架构和其他的应用层协议架构有着很多相似之处,XMPP 架构中,具有恒定名称的客户机会通过相关服务器与其他具有恒定名称的客户机进行通信。XMPP 中根据功能与属性划分了客户端、服务器、网关三个角色。通信行为会在这三个角色中的任意两个之间双向发生。与此同时,服务器承担了客户端信息记录,连接管理和信息的路由功能;网关承担着与异构即时通信系统进行互联互通的功能,异构系统包括短信,音视频传输,文件传输等。

XMPP 功能

XMPP 的主要功能是实现了信息的即时通信,会对与即时通讯相关的指令进行传输。早期在传送与即时通讯相关的指令时,信息通常以二进制、或是纯文本指令+空格+参数+换行符的方式进行发送。而XMPP 传输即时通讯指令时,保留了早期传送指令的逻辑,但是协议的形式是 XML 格式的纯文本。XMPP 拥有着通信相关的诸多功能,可进行音视频会议、文件传输、群组聊天、服务搜索等,XMPP 还拥有防火墙功能,保障用户的使用安全。

XMPP 的应用

XMPP 是一种基于可扩展标记语言 (XML) 的网络通信协议,延续了在 XML 环境中的可扩展属性,基于 XMPP 的应用都也都具有较强的可扩展性。扩展后的 XMPP 可以发送扩展的信息来满足用户需求,还可以在 XMPP 的顶端建立内容发布系统,和基于地址的服务等应用程序。XMPP 包含了针对服务器端的软件协议,并且支持通话功能,便于开发者为客户应用程序或是现有的系统添加功能。XMPP 还被广泛应用于即时消息通讯以及在线现场探测,促进了服务器之间的准即时操作。

XMPP 的基本特点

XMPP 的基本特点_XMPP 是基于XML的协议

XMPP 是基于 XML 的协议

XMPP 作为基于标准通用标记语言的子集 XML 的协议,延续了 XML 环境中的可扩展属性,基于 XMPP 的应用程序也都有超强的可扩展性,并且信息是以嵌入到 XML 结构化的数据格式中来进行传输的。

XMPP 的基本特点_XMPP 拥有即时通讯特点

XMPP 拥有即时通讯特点

XMPP 是为即时通讯而量身定制的通讯协议,是一组系统间通信的标准,使用非常高效的推送机制来实时发送用户消息。基于 XML 的强大可拓展性特性,XMPP 在其他方面也广泛适用。  

XMPP 协议的优缺点

XMPP 协议的优缺点_XMPP 协议的分布式优点

XMPP 协议的分布式优点

XMPP 没有中央主服务器,它的核心协议通信方式,是先创建一个 stream,用于 XMPP 进行 TCP 传递 XML 数据流。无论是个人还是组织,任何人都可以自主运行自己的 XMPP 服务器,便于随时掌控他们的实时传讯。

XMPP 协议的优缺点_XMPP 协议的安全优点

XMPP 协议的安全优点

任何运行了 XMPP 协议的服务器,都可以独立于公众 XMPP 网络(例如在企业内部网络中)运行,并且核心的 XMPP 技术规格中自带 SASL 及 TL 等技术,为用户提供了可靠的安全性保障。

XMPP 协议的优缺点_XMPP 协议的可扩展优点

XMPP 协议的可扩展优点

XML 命名空间支持任何人在 XMPP 核心协议的基础上建造定制化的功能。在 XMPP 协议中,即时消息和到场信息这些基于 XML 的结构化信息,都会以 XML 节 (XML Stanza) 的形式在通信实体间交换。

XMPP 协议的优缺点_XMPP 协议的没有二进制数据的缺点

XMPP 协议没有二进制数据的缺点

XMPP 协议采用的是单一的长 XML 文件的数据形式,没有二进制数据,也无法提供修改二进制数据。因此文件传输协议会通过使用外部 HTTP 协议来弥补这一缺点。

亚马逊云科技热门云产品

Amazon EC2 Auto Scaling

Amazon EC2 Auto Scaling

弹性伸缩计算能力以满足业务需求  

Amazon S3

Amazon S3

云中的可拓展存储  

Amazon ECS

Amazon ECS

高度安全、可靠且可扩展的容器运行方式  

Amazon Batch

Amazon Batch

任意规模完全受管的批处理

欢迎加入亚马逊云科技培训中心

欢迎加入亚马逊云科技培训中心

从 0 到 1 轻松上手云服务,获取更多官方开发资源及培训教程
从 0 到 1 轻松上手云服务,获取更多官方开发资源及培训教程
  • 快速上手训练营
  • 第一课:亚马逊云科技简介

    本课程帮助您初步了解云平台与本地环境的差异,以及亚马逊云科技平台的基础设施和部分核心服务,包括亚马逊云科技平台上的弹性高可用架构,架构设计准则和本地架构迁移上云的基本知识。

    亚马逊云科技技术讲师:李锦鸿

    第二课:存储与数据库服务

    您将在本课程中学习到亚马逊云科技上的三个存储服务分别是什么。我们也将在这个模块中为您介绍亚马逊云科技上的关系型数据库服务 Amazon Relational Database Service (RDS)。

    亚马逊云科技资深技术讲师:周一川

    第三课:安全、身份和访问管理

    在这个模块,您将学习到保护您在亚马逊云科技上构建的应用的安全相关知识,责任共担模型以及身份和访问管理服务, Identity and Access Management (IAM) 。同时,通过讲师演示,您将学会如何授权给 EC2 实例,允许其访问 S3 上的资源。

    亚马逊云科技技术讲师:马仲凯
  • 账单设置与查看
  • 视频:快速完成税务设置

    部署时间:5 分钟

    视频:账户账单信息

    部署时间:3 分钟

    视频:如何支付账单

    部署时间:3 分钟

  • 动手实操
  • 快速上手云上无服务器化的 MySQL 数据库

    本教程将引导您创建一个Aurora Serverless 数据库并且连接上它。

    部署时间:10 分钟

    启动一台基于 Graviton2 的 EC2 实例


    本教程将为您讲解如何在云控制台上启动一台基于 Graviton2 的 EC2 实例。

    部署时间:5 分钟

    使用 Amazon Systems Manager 进行云资源统一跟踪和管理

    在这个快速上手教程中,您将学会如何使用 Amazon Systems Manager 在 Amazon EC2 实例上远程运行命令。

    部署时间:10 分钟