微信号:infoqchina

介绍:有内容的技术社区媒体

【对话】孙立:去哪儿网Java生态环境演进之路

2014-06-16 17:07 InfoQ

InfoQ:去哪儿网一开始就是用Java吗?去哪儿网在Java的演进道路上经历了哪几个阶段?

孙立:我们去哪儿网从最开始的时候就是一直用的就是Java,我们从05年一直到现在,其实我们经历了大概有几个阶段,最开始的时候,因为我们是做搜索的,然后是以性能为主,所以说我们没有引入任何的框架,所有的开发都是基于最原生的,比如说我们页面就直接用Servlet,直接用JSP这样的方式在开发,然后到后面一个阶段的时候,我们开始引入,比如说那个Ant这样的编译方式来做一些编译,然后再到后面的时候,我们就,这边有产出交易系统,我们业务变得更加的复杂,那么用那个JSP,还有Servlet原生的方式的时候,我们遇到了很多的问题,所以说我们就引入了比如SpringMVCMyBatis这些业界比较流行的框架来做我们业务系统的开发,然后到目前为止,我们公司的开发人员接近一千人,那么在这个人员规模的情况下,那我们要把大家的开发流程,包括所有的这些遇到这些问题都很好的去解决的话,那我们也产生了很多的工具,很多的系统来做支撑,那么我次就主要分享这些工具和系统,为我们带来一些帮助。

InfoQ:您公司在那个框架的选择上是,在开源和自己研发这个上面是怎么抉择的,或者哪些是用开源的,哪些会自己研发?

孙立:我们公司的理念是说更倾向于使用现有成熟的开源产品,因为我们觉得现有成熟的开源产品,他在已知的一些Bug上可能解决的已经差不多了,如果我们都自己去开发,第一是成本问题,第二,我们可能会重新走一遍别人走过的路,所以我们更倾向于用现有的开源的产品,如果说现有的开源产品满足不了我们的需求的情况下,那么我们可能去改造它,另外一个,如果现有没有这些开源产品的时候,我们可能才会自己去研发一些东西。

InfoQ:我在您的博客上看到您有写过一个开源的框架FQueue

孙立:这个Fqueue是一个开源的一个消息系统,应该说是开源的一个队列系统,他是我在上一家公司开始有这个想法的时候,它主要是为了解决一个高性能的这样一个队列这样一个问题的,然后它,我当时做的时候似乎是比那个LinkedIn那个Kafka好像还要早一点。

InfoQ:你刚才还是提到了其他公司的FQueue,我这块特别关心就是,你研发这个FQueue有什么优势,它有什么优点或者是特点?

孙立:FQueue有几个特点,第一个是说,它是基于Memcache协议的,也就是说现有的这些各种语言,能用Memcache的各种语言都是可以用的,它兼容Memcache协议,这是它的一个优点。第二个是说,它的持久存储,它是用持久存储,并且是顺序写的方式,它不会因为那个队列里面堆积的消息,或者你写的消息的多少,而影响它的写入速度,它写的速度是恒定的,这是它的一个优势。第三个,就是它的性能比较高,这也是算它的一个比较大的一个优势。

InfoQ:然后这个FQueue在你还在维护吧?

孙立:现在还在维护。

 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 小白学编程:Python 编程不可能这么可爱 不再彷徨:完全弄懂JavaScript中的this Linux input子系统分析之一:软件层次 传智感恩教师节特辑 iOS 宏(define)与常量(const)的正确使用