好的,程序员,这是给你的。
我正在编写一个开放源码的IM客户机/协议,作为学习练习,并解决当前协议的一些问题。
不过,我很穷。我确实运行了一台服务器,但是我自己的低带宽住宅连接(我宁愿在它上运行一个IM服务器而不是饱和)。
我正在考虑这个问题,并研究了各种替代方案(这是在我考虑编写自己的客户机/协议之前),但是没有什么不需要任何服务器硬件。
原因很明显,为了保持联系人列表的持久性和同步性,最简单的解决方案是远程存储联系人列表,并让用户每次登录时下载联系人列表。
我考虑过的一个解决方案是将联系人列表信息存储在USB闪存驱动器上,但这远非理想(尤其是因为我自己也没有)。另一种选择是实现类似于bonjour的对等发现网络,但这不会提供您的朋友的联系人列表,只提供其他在线用户的联系人列表。比USB的想法更可行,但在这种情况下功能并不理想。
有没有人对无服务器的IM协议有其他的想法?
发布于 2011-04-04 12:46:24
本质上,您是在谈论P2P IM协议(P2P = Peer)。这为您提供了一系列不同用途的选项。
搜索其他P2P技术正在做什么,看看这是否激励您。
注意:使用P2P解决方案对您来说是一个很大的挑战,因此,当两个对等点在线时,它们就可以相互连接。如果我有一个朋友在日本,我住在美国,我想打开聊天,如果我们碰巧同时在线与他们沟通。假设联系人包括IM协议需要建立连接的连接点,则除了临时连接之外,还将始终检查联系人。
发布于 2011-04-04 15:04:54
如果你想要一台服务器,试试免费的亚马逊EC2主机,它们是完全免费的。
https://softwareengineering.stackexchange.com/questions/64997
复制相似问题