开发者

Suggested technologies for reimplementing stackoverflow.com

If you were going to reimplement SO now, what technologies would you use? What technologies would you use if you were restricted to Java technologies开发者_运维技巧.


And here's the answer I was writing.

This is an interesting question, because SO is actually architected in a very conventional way for web applications, but doesn't share a lot of characteristics with the usual web application. in particularly, it needs to be highly scaleable, but the business rules and data storage requirements are not complex.

So, using today's technology, I'd use

  1. conventional javascript; SO uses jquery, that'd be fine.

  2. I'd use a workpool-oriented web application like Unicorn for easy scalability.

  3. I'd use Hadoop and Cassandra to store questions and comments.

  4. I'd implement the scoring and ranking rules using MapReduce across the database.

Conveniently, most of these are available from Java, although I'd prefer a scripting language like Ruby or Python.

I would avoid the usual Java EE based world. In my opinion -- and I was a very early user of Java EE at Sun -- that techno.logy is overheavy. I'd also avoid Windows-based servers; they're hard to manage and comparatively expensive. (I can build the server hardware for about the same price as the OS license.)


I wouldn't have a server rack sitting at the corner of my office :) , have it in Cloud.

btw here is an overview of current architecture


Scale OUT rather than scale UP.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜