随笔分类 -  Openfire

摘要:前言 在第六章《路由表》中,客户端进行会话时,首先要获取对方的Session实例。获取Session实例的方法,是先查找本地路由表,若找不到,则通过路由表中的缓存数据,由集群定位器获取。 路由表中定义的缓存,如下: 这些缓存中,存储了整个集群内的所有Session信息,用于做集群同步,Openfir 阅读全文
posted @ 2017-10-19 19:49 Fordestiny 阅读(1837) 评论(0) 推荐(1)
摘要:前言 Openfire的单机并发量,一直是一个比较含糊的东西,即使官方也没有很清楚的介绍。但按我自已评估,以4核、8G内存这样的机器配置,5万+的并发应问题不大。而当用户体量逐步上涨,前期可以通过扩容的方式提升性能,但若体量足够大,如几十万并发,单机的扩容已不是首选的方案,一来考虑性价比,二来如果整 阅读全文
posted @ 2017-10-18 19:44 Fordestiny 阅读(1097) 评论(0) 推荐(0)
摘要:还是从会话管理说起 上一章,Session经过预创建、认证之后,才正常可用。认证时,最重要的操作,就是将Session加入到路由表,使之拥用了通信功能。 添加到至路由表的操作,是在SessionManager中操作的,如下: SessionManager.addSession(LocalClient 阅读全文
posted @ 2017-10-14 16:48 Fordestiny 阅读(2563) 评论(0) 推荐(0)
摘要:什么是会话? 上面所喻整个过程就是所谓的会话。 会话(Session)是一个客户与服务器之间的不中断的请求响应序列。注意其中“不中断”一词。 Openfire的通信,是以服务器为中转站的消息转发机制,客户端与服务器要实现通信,必须保持连接,即持有会话。Session的管理,集中在SessionMan 阅读全文
posted @ 2017-10-11 21:23 Fordestiny 阅读(2297) 评论(6) 推荐(1)
摘要:两个人的孤独 两个人的孤独,大抵是,你每发出去一句话,都要经由无数网络、由几百个计算机处理后,出在他的面前,而他就在你不远处。 连接建立之后 Openfire使用MINA网络框架,并设置ConnectionHandler为MINA的处理器,连接的启停、消息的收发,都在这个类中做中转。这是我们上一章《 阅读全文
posted @ 2017-09-06 21:17 Fordestiny 阅读(3469) 评论(3) 推荐(2)
摘要:Openfire是怎么实现连接请求的? XMPPServer.start()方法,完成Openfire的启动。但是,XMPPServer.start()方法中,并没有提及如何监听端口,那么Openfire是如何接收客户端的请求? 因为Openfire的核心功能,是通过Module来管理的,那么对应的 阅读全文
posted @ 2017-09-02 19:36 Fordestiny 阅读(2926) 评论(0) 推荐(0)
摘要:引言 宇宙大爆炸,于是开始了万物生衍,从一个连人渣都还没有的时代,一步步进化到如今的花花世界。 然而沧海桑田,一百多亿年过去了…. 好复杂,但程序就简单多了,main()函数运行,敲个回车,一行Hello World就出来了,所以没事多敲敲回车,可以练手感…. 一、程序入口 Java的程序入口是ma 阅读全文
posted @ 2017-09-01 22:00 Fordestiny 阅读(1328) 评论(0) 推荐(1)
摘要:引言 目前互联网产品使用的即时通信协议有这几种:即时信息和空间协议(IMPP)、空间和即时信息协议(PRIM)、针对即时通讯和空间平衡扩充的进程开始协议SIP(SIMPLE)以及XMPP。PRIM与XMPP、SIMPLE类似,但已经不再使用了。 本次要讲的是XMPP,由Openfire实现. 1、O 阅读全文
posted @ 2017-09-01 13:00 Fordestiny 阅读(4855) 评论(0) 推荐(2)