Some tips from the architeture of StackOverflow(cont. 1)

Software:
1)HAProxy(load balancer)
HAProxy is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications. It is particularly suited for web sites crawling under very high loads while needing persistence or Layer7 processing. Supporting tens of thousands of connections is clearly realistic with todays hardware. Its mode of operation makes its integration into existing architectures very easy and riskless, while still offering the possibility not to expose fragile web servers to the Net.

2)Redis(distributed NOSQL memory DB)
Redis is an open-source, networked, in-memory, persistent, journaled, key-value data store. It is written in ANSI C. Supported languages or language bindings include C, C++, C#, Clojure, Common Lisp, Erlang, Haskell, Java, JavaScript (both client and serverside), Lua, Objective-C, Perl, PHP, Python, R, Ruby, Scala, Go, and Tcl.

3)Lucene.Net(search engine)
Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET Framework users.
Apache Lucene is a free/open source information retrieval software library, originally created in Java by Doug Cutting.Lucene has been ported to other programming languages including Delphi, Perl, C#, C++, Python, Ruby and PHP.
While suitable for any application which requires full text indexing and searching capability, Lucene has been widely recognized for its utility in the implementation of Internet search engines and local, single-site searching.

4)Bacula(backup system)
Bacula is an open source, enterprise level computer backup system for heterogeneous networks. It is designed to automate backup tasks that had often required intervention from a systems administrator or computer operator.

5)Nagios(monitor system)
Nagios is a popular open source computer system and network monitoring software application. It watches hosts and services, alerting users when things go wrong and again when they get better.

Technology:
1)reCAPTCHA(Authentication code)
reCAPTCHA is a system originally developed at Carnegie Mellon University that uses CAPTCHA to help digitize the text of books while protecting websites from bots attempting to access restricted areas.

2)DotNetOpenId(open ID)
OpenID is an open standard that describes how users can be authenticated in a decentralized manner, obviating the need for services to provide their own ad hoc systems and allowing users to consolidate their digital identities.
OAuth (Open Authorization) is an open standard for authorization. It allows users to share their private resources (e.g. photos, videos, contact lists) stored on one site with another site without having to hand out their credentials, typically username and password.

3)WMD(editor)
WMD is a small, simple WYSIWYM (What You See Is What You Mean) markdown editor written in Javascript.

4)Prettify(code syntax highlighting)

Google Prettify. A Javascript module and CSS file that allows syntax highlighting of source code snippets in an html page.

5)Cacti(server graph tool)
Cacti is an open source, web-based graphing tool designed as a frontend to RRDtool's data storage and graphing functionality. Cacti allows a user to poll services at predetermined intervals and graph the resulting data. It is generally used to graph time-series data of metrics such as CPU load and network bandwidth utilization.

6)MarkdownSharp(dev editor tool)
Open source C# implementation of Markdown processor, as featured on Stack Overflow.
Markdown is a lightweight markup language, originally created by John Gruber and Aaron Swartz allowing people "to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML)".

7)Flot(client graph lib)
Flot is a pure Javascript plotting library for jQuery. It produces graphical plots of arbitrary datasets on-the-fly client-side.
The focus is on simple usage (all settings are optional), attractive looks and interactive features like zooming and mouse tracking.

8)Nginx(web server/proxy)
Nginx is a lightweight, high-performance Web server/reverse proxy and e-mail (IMAP/POP3) proxy.
Nginx quickly delivers static content with efficient use of system resources. It can deploy dynamic HTTP content on a network using FastCGI handlers for scripts, and can serve as a very capable software load balancer.


你可能感兴趣的:(overflow)