您的位置: 首页 / PHP, Polynews / Polynews 开始测试

Polynews 开始测试

Published at Feb 17, 12pm / Keywords: , , ,

Polynews logoPolynews 是我最近的一个作品,首先简单介绍一下它。简单说 Polynews 是一个中量级新闻聚合程序,它通过用户订阅的 RSS 定时的将新闻汇集到一起,最后以特定的形式(可由用户高度自定义)呈现出来。Polynews 很像开源作品 lilina,但是比 lilina 强大很多,更适合于快速搭建个人门户。目前演示地址在这里,新闻约每小时更新一次。

开发 Polynews 的灵感来源于 lilina,但 lilina 过慢的访问速度让人很难忍受。尤其当订阅超过十个的时候,页面就基本无法打开了。Polynews 运用数据库存储数据,用户在访问时并不进行聚合操作,只进行几个数据库查询,因此速度大大加快。此外由于聚合的信息是存放于数据库中的,因此可以方便的保存下来。

在新闻聚合方面,Polynews 在可能的情况下会利用服务器中的 libCURL 作为 HTTP 客户端。相对于 lilina 的 Snoopy,libCURL 更加高速稳定。在测试中,关掉缓存的情况下,Polynews 聚合 79 个世界各地的 Feeds 仅需要不到 5 分钟,而 lilina 多次访问均返回超时错误。此外,Polynews 对 HTTP/1.1 的良好支持和内建的缓存技术,可以大大缩短更新所需的时间。仍然以上面 79 个 Feeds 做测试,在第一次读取后,后面平均每次更新所需时间不到 1 分钟,聚合速度加快的同时也大大降低了服务器的负担。

polynews feathers

Polynews 还具有很多独特的功能。例如 Tags,标记(推荐)、屏蔽特定的新闻,支持快速浏览带有全文 (content 或 content:encode 标签) 的 Feed 等等,并利用 Ajax 技术,使这些操作变的更加方便。

目前 Polynews 的完成度大概在 70% 左右,但基本核心已经完成,所以于昨天放到服务器上测试。目前已知的问题就是时区的问题,这个问题确实很烦人,因为很多 Feed 本身提供的时区就是错的。此外更多的问题需要在测试中一点一点的发现,也欢迎大家报告错误。

最后,Polynews 在开发完成后估计会开源,不过估计距离完成还会有一段时间,呵呵。

发表您的观点或推荐本文 Loading...