`
lukeshei
  • 浏览: 391672 次
  • 性别: Icon_minigender_1
  • 来自: 台北
社区版块
存档分类
最新评论

xmpp 實做的分享

阅读更多
最近在寫jabber server, jabber 是建構在xmpp protocol 上的一個IM,因為RFC的規格制定曠日費時,所以;jabber 以xmpp 為基礎,自己又定義了約200 個協定XEP-0001~0214,而 xmpp 主要由五個protocol所組成,分別是RFC-3920~3923 RFC-4622

我目前的進度已經可以讓像 Exodus or Pandion(IM Client) 連接上我自己實做的jabber server,預計下星期我就能讓im client 直接在上面talk,且訂閱彼此的狀態...在寫的過程成中越來越覺得他的複雜,其實,這大概是我目前寫過最複雜的伺服器,不過有一點心得可以先分享給大家,其實有一些人有一個疑問,jabber長的像什麼? 如果我們撇開他在IM的實做(處理訊息的傳遞也是一種運算資源),我們可以把它看成是一家公司,一家公司會有他對客戶的服務,而當產品要製作時,它需要資源,需要應徵人員,每個應徵的人員需要依照公司的制度來運行(component plug-in),每個人員應徵後需要報到,然後正式工作,依照給個人的專業知識分派工作 ....循環不已,當新的產品要製作時,這個公司可以再應徵新的 不同專業領域的資源,而且可以重新制定新的工作規則...而公司組織裡的這些運行其實都是靠制度,而這個制度相對於jabber 就是他的protocol,所以我把xmpp形容成是一個資源/運算的分散者,因此他可以建構一個基本的Grid Computing 環境,把每個運算工作分散到無限台機器上....如果你要問他可以做什麼? 事實上在jabber 的protocol 裡幾乎定義了絕大部分
的應用,voip 影音...,所有的運算資源都可以在事後 plug in 進去,google_talk 所實做的部份可能還不到整個jabber 的1/20,由此;我們可以看出他的規模/擴充性之大... 總之把他想成是一個有組織的公司,只是公司的規模有大有小罷了,xmpp 的工作資源分配真的跟這個描述很像,有機會自己實做一次體會一下囉!
分享到:
评论

相关推荐

    XMPP中文参考

    XMPP(Extensible Messaging and Presence Protocol),即可扩展消息和出席信息协议,是一种基于XML的即时通讯和在线出席状态分享的协议。其核心规范定义于RFC3921中,由Jabber软件基金会提出,旨在提供一套标准化的...

    XMPP研究分享

    XMPP(Extensible Messaging and Presence Protocol)是一种基于XML的实时通信协议,被广泛应用于即时通讯、在线状态管理和数据交换等领域。这份"XMPP研究"的资料可能是深入探讨XMPP技术的详细文档,包括其原理、...

    xmpp框架文件!@_@

    描述虽然为空,但从提供的博客链接(https://hxxyyang.iteye.com/blog/1329640)可以推测,博主分享了一些关于使用XMPP框架的经验或教程。不过,由于无法直接访问该链接,具体的博客内容将无法详细阐述。 标签为...

    XMPP研究.zip

    《XMPP在Android平台的应用与实现》 XMPP(Extensible Messaging and Presence Protocol)是一种基于XML的即时通讯协议,广泛应用于各种实时通信场景,包括聊天、视频通话、协作办公等。在Android平台上,开发者...

    xmpp ios demo

    8. **扩展功能**:XMPP支持许多扩展,如文件传输、语音/视频通话、地理位置分享等,可以根据需求进行实现。 为了在“MyXmpp”项目中运行和调试,你需要: 1. **配置XMPP服务器**:设置一个支持XMPP的服务器,如...

    XMPP协议 wodXMPP v1.5.4

    7. **扩展性**:支持XMPP的扩展机制,可以实现如文件传输、位置分享等高级功能。 在使用wodXMPP-v1.5.4这个版本时,开发者可以获取到完整的开发文档、示例代码以及库文件,以帮助他们快速集成和测试XMPP功能。通过...

    CCChat:使用XMPP协议的聊天客户端

    在CCChat中,用户可能需要分享文件。这通常涉及文件上传到服务器,然后通过链接或直接传输文件数据。为了确保安全性,客户端可能使用HTTPS加密文件传输,并对用户身份进行验证,防止未授权访问。 ### 6. 扩展功能与...

    smack包.zip

    - 文件传输,分享文件给其他用户。 - 接收和处理服务器发送的在线状态和-presence-信息,了解联系人的在线状态。 为了使用这些库,开发者需要在Android项目中添加对应的JAR文件,并根据Smack的API文档编写代码来...

    openfire简介.pdf

    开发Openfire插件或定制Openfire时,有几个重要的心得分享: - **深入理解XMPP协议**:无论是开发还是维护,对XMPP协议的深入了解都是至关重要的。 - **利用现有资源**:Openfire社区和文档提供了丰富的资源,充分...

    Android Smack聊天室 Demo

    这个Demo是开发者在CSDN博客上分享的一个项目,链接为[http://blog.csdn.net/fkingu007/article/details/23281971](http://blog.csdn.net/fkingu007/article/details/23281971)。以下是对这个Demo涉及的主要知识点的...

    OpenFire深入浅出(完整版电子书)

    OpenFire是一款开源的即时消息服务器,它基于XMPP(可扩展通讯和表示协议)协议进行通信。...虽然作者自谦资历尚浅,但其实际经验与分享的精神难能可贵。本书不仅是作者的学习笔记,也是一本适合读者参考的实用指南。

    Smack帮助文档中文版

    12. **性能优化**:分享提高Smack性能的技巧,例如批量处理、连接池和异步编程。 13. **最佳实践**:给出在实际开发中使用Smack的最佳实践,以确保代码的健壮性和可维护性。 通过阅读这份中文文档,开发者可以系统...

    Smack API中文版

    - **社交应用**:构建聊天、分享、群组讨论等功能。 - **在线客服**:建立实时在线客服系统,提高客户满意度。 - **游戏内通信**:实现游戏内的玩家聊天、组队等功能。 总之,Smack API中文版为开发者提供了构建...

Global site tag (gtag.js) - Google Analytics