锐力易思▼ 2017▼ bbs servlet jetty cookie json

R055.如何搞个论坛-Symphony

不等不靠,有囧有料。攻城狮,是一种精神,亦是一种品质。

Symphony([ˈsɪmfəni],交响乐)是java界最好的开源的社区平台。
它实现了面向内容讨论的论坛(知乎风格),融合了博客和SNS社交能力。

本期分享了一个零入侵的无缝隙的打通既有用户系统和Symphony的场景。
其思路是通过爬虫模拟Symphony的用户操作,把Cookie种到合适的位置。

零入侵~两个系统都不需要知道对方的存在,用户也不用改变现有习惯。
无缝隙~既有用户的登入,登出,改密码等在两个系统上同时生效。

@史荣久 / 2017-10-29 / CC-BY-SA-3.0

观看视频

内容摘要

  • Symphony是java界目前最好的开源的社区平台。
  • 运营一个技术论坛要三思,眼看着论坛和社区的生生死死。
  • Jetty 9的embeded比mvn jetty:run更IDE。
  • 在Jetty debug时,使用main/resource并且不缓存模板。
  • 多域多路径时,浏览器会发送多个同名Cookie,服务器要处理。
  • Jetty 9 线程模型,NIO基础和简单部署。
  • Servlet 3.1 规范,能解决几乎所有面试题。
  • Json是有规范的,Jsonpath能更快操作Json。
  • gitbook.com,是个值得搜索的地方。
  • 我们都从开源受益,但对开源的理解和支持远远不够。

参考资料

欢迎围观

if (you.accept(MoilionCircle.SPIRIT)) {
    if(you.haveADL()){
        MoilionCircle we = you.search(MoilionCircle.SLOGAN);
        we.welcome(you);
    }
    if(you.share(this)){
        We.thank(you);
        We.mayFind7Moilion();
    }
}

后记

Java界真没有拿得出手的开源论坛,和PHP界没法比。
于是搜到了Symphony,非常强大,填补了这个宇宙级空白

作为一个独立论坛,直接部署,拿来就用,是一点问题没有的。
但若让现有系统的用户完全无察觉,直接使用,需要hack代码。

失误:录制过程,手欠,新增cookie时把现存的刷没了。
顺便黑了云栖社区,MD乱爬博客,改发表日期,不注出处。

《R055.如何搞个论坛-Symphony》 Symphony([ˈsɪmfəni],交响乐)是java界最好的开源的社区平台,本期分享了一个零入侵的无缝隙的打通既有用户系统和Symphony的场景。
题图:《黑客与画家》讲了很多共鸣的话,尽管国情和时代差很大。谨以此纪念下苦命的攻城狮和射鸡狮。