一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

基于.NET的大型Web站點StackOverflow架構分析

原文鏈接:Stack Overflow Architecture Update - Now At 95 Million Page Views A Month

編譯/博客園

Stack Overflow網址:http://stackoverflow.com/

當前訪問量:每月9500PV(每天300多萬PV)

當前Alexa排名:149

所用.NET技術:C#、Visual Studio 2010 Team Suite、ASP.NET 4、ASP.NET MVC 3、Razor、LINQ to SQL+raw SQL

下面是英文原文:

A lot has happened since my first article on the Stack Overflow Architecture(2009-8-5). Contrary to the theme of that last article, which lavished attention on Stack Overflow's dedication to a scale-up strategy, Stack Overflow has both grown up and out in the last few years.

自從2009年8月發布了第一篇關于“Stack Overflow 架構”方面的文章,Stack Overflow已經發生了很大的變化。那篇文章更多關注的是Stack Overflow如何解決網站的擴展性(scale-up)問題,而經過幾年的發展,Stack Overflow已經長大成人,成長為了大型網站。

Stack Overflow has grown up by more then doubling in size to over 16 million users and multiplying its number of page views nearly 6 times to 95 million page views a month.  

現在與2009年相比,Stack Overflow每月獨立訪問用戶翻了一倍,超過1600萬;每月PV翻了近6倍,達到9500萬。

Stack Overflow has grown out by expanding into the Stack Exchange NETwork, which includes Stack Overflow, Server Fault, and Super User for a grand total of 43 different sites. That's a lot of fruitful multiplying going on.

Stack Overflow新增了很多站點,比如Server Fault, Super User等,共有43個不同站點組成了Stack Exchange NETwork,可謂碩果累累,迅猛增長。

What hasn't changed is Stack Overflow's openness about what they are doing. And that's what prompted this update. A recent series of posts talks a lot about how they've been handling their growth: Stack Exchange’s Architecture in Bullet PointsStack Overflow’s New York Data CenterDesigning For Scalability of Management and Fault Tolerance, Stack Overflow Search — Now 81% LessStack Overflow NETwork Configuration, Does StackOverflow use caching and if so, how?Which tools and technologies build the Stack Exchange NETwork?.

Stack Overflow的變化翻天覆地,而不變的是他們開放的心態,所以才有了這篇架構分享的文章。最近,他們寫了一系列文章分享他們如何應對這樣的快速增長。

Some of the more obvious differences across time are:
穿越時空,我們來看看有哪些明顯的變化?

  • Just More. More users, more page views, more datacenters, more sites, more developers, more operating systems, more databases, more machines. Just a lot more of more.
    更多:更多的用戶,更多的PV,更多的數據中心,更多的站點,更多的開發者,更多的操作系統,更多的數據庫,更多的服務器...
  • Linux. Stack Overflow was known for their Windows stack, now they are using a lot more Linux machines for HAProxy, Redis, Bacula, Nagios, logs, and routers. All support functions seem to be handled by Linux, which has required the development of parallel release processes.
    Linux:Stack Overflow因使用Windows系統而著稱,現在他們使用越來越多的Linux服務器,比如HAProxy(負載均衡), Redis(NoSQL數據庫), Bacula(數據備份系統), Nagios(遠程監控軟件), 日志, 路由器都運行于Linux系統,幾乎所有需要并行處理的功能都是由Linux處理(這句話的翻譯可能不準確)。
  • Fault Tolerance. Stack Overflow is now being served by two different switches on two different interNET connections, they've added redundant machines, and some functions have moved to a second datacenter.
    容錯:Stack Overflow使用了兩條不同的互聯網線路,增加了更多的冗余服務器,將一些網站服務運行于第二個數據中心。
  • NoSQL. Redis is now used as a caching layer for the entire NETwork. There wasn't a separate caching tier before so this a big change, as is using a NoSQL database on Linux.
    NoSQL:Redis作為整個網站的緩存層。這是一個巨大的改變,以前并沒有將緩存作為一個獨立的層分離出來。Redis運行于Linux。

Unfortunately, I couldn't find any coverage on some of the open questions I had last time, like how they were going to deal with multi-tenancy across so many diffrent properties, but there's still plenty to learn from. Here's a roll up a few different sources:

遺憾的是,一些我關注的問題并沒有從中找到答案,比如面對這么多不同的系統,如何解決多租戶的問題(Multi-tenancy 是一種軟件體系結構,在這種體系結構中軟件運行在 software as a service 服務商的服務器上,服務于多個客戶組織即 tenant)。但是,從中我們依然可以學到很多。下面是收集的一些數據列表:

The Stats

  • 95 Million Page Views a Month
  • 800 HTTP requests a second
  • 180 DNS requests a second
  • 55 Megabits per second
  • 16 Million Users  - Traffic to Stack Overflow grew 131% in 2010, to 16.6 million global monthly uniques. 

Data Centers

  • 1 Rack with Peak InterNET in OR (Hosts our chat and Data Explorer)
  • 2 Racks with Peer 1 in NY (Hosts the rest of the Stack Exchange NETwork)

Hardware

  • 10 Dell R610 IIS web servers (3 dedicated to Stack Overflow):
    • 1x Intel Xeon Processor E5640 @ 2.66 GHz Quad Core with 8 threads
    • 16 GB RAM
    • Windows Server 2008 R2
  • 2 Dell R710 database servers:
    • 2x Intel Xeon Processor X5680 @ 3.33 GHz
    • 64 GB RAM
    • 8 spindles
    • SQL Server 2008 R2
  • 2 Dell R610 HAProxy servers:
    • 1x Intel Xeon Processor E5640 @ 2.66 GHz
    • 4 GB RAM
    • Ubuntu Server
  • 2 Dell R610 Redis servers:
    • 2x Intel Xeon Processor E5640 @ 2.66 GHz
    • 16 GB RAM
    • CentOS
  • 1 Dell R610 Linux backup server running Bacula:
    • 1x Intel Xeon Processor E5640 @ 2.66 GHz
    • 32 GB RAM
  • 1 Dell R610 Linux management server for Nagios and logs:
    • 1x Intel Xeon Processor E5640 @ 2.66 GHz
    • 32 GB RAM
  • 2 Dell R610 VMWare ESXi domain controllers:
    • 1x Intel Xeon Processor E5640 @ 2.66 GHz
    • 16 GB RAM
  • 2 Linux routers
  • 5 Dell Power Connect switches

Dev Tools

  • C#: Language
  • Visual Studio 2010 Team SuiteIDE
  • Microsoft ASP.NET (version 4.0)Framework
  • ASP.NET MVC 3Web Framework
  • RazorView Engine
  • jQuery 1.4.2Browser Framework:
  • LINQ to SQL, some raw SQLData Access Layer
  • Mercurial and KilnSource Control(分布式版本控制系統)
  • Beyond Compare 3: Compare Tool(文件比較工具)

Software and Technologies Used

  • Stack Overflow uses a WISC stack via BizSpark
  • Windows Server 2008 R2 x64: Operating System
  • SQL Server 2008 R2 running Microsoft Windows Server 2008 Enterprise Edition x64: Database
  • Ubuntu Server
  • CentOS
  • IIS 7.0: Web Server
  • HAProxy: for load balancing(高性能的負載TCP/HTTP均衡器)
  • Redis: used as the distributed caching layer.(作為分布式緩存層的NoSQL數據庫)
  • CruiseControl.NET: for builds and automated deployment(.NET平臺的持續集成工具)
  • Lucene.NET:  for search
  • Bacula: for backups(開源的數據備份系統)
  • Nagios: (with n2rrd and drraw plugins) for monitoring(監視系統運行狀態和網絡信息的遠程監控軟件)
  • Splunk: for logs(日志分析工具)
  • SQL Monitor: from Red Gate - for SQL Server monitoring
  • Bind: for DNS
  • Rovio:  a little robot (a real robot) allowing remote developers to visit the office “virtually.”
  • Pingdom:  an external monitor and alert service.(網站監控服務及網站速度測試工具)

External Bits

Code that is not included as part of the development tools:

  • reCAPTCHA(用于驗證碼驗證,已被Google收購)
  • DotNETOpenId(.NET 平臺上的 OpenID 實現方案)
  • WMD - Now developed as open source. See github NETwork graph (輕量級所見即所得編輯器)
  • Prettify(代碼高亮顯示)
  • Google Analytics
  • Cruise Control .NET
  • HAProxy(負載均衡)
  • Cacti網絡流量監測圖形分析工具)
  • MarkdownSharp(Markdown文本處理器的C#實現)
  • Flot(基于JQuery的純JavaScript實現的繪圖庫)
  • Nginx(反向代理服務器
  • Kiln(分布式版本控制系統)
  • CDN: none, all static content is served off the sstatic.NET, which is a fast, cookieless domain intended for static content delivered to the Stack Exchange family of websites.
    (沒有使用CDN,用一個專門的域名sstatic.NET傳遞所有的靜態內容)

Developers and System Administrators

  • 14 Developers
  • 2 System Administrators

Content

  • License: Creative Commons Attribution-Share Alike 2.5 Generic
  • Standards: OpenSearch, Atom
  • Host: PEAK InterNET

    NET技術基于.NET的大型Web站點StackOverflow架構分析,轉載需保留來源!

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

    主站蜘蛛池模板: 大学生一级毛片全黄真人 | 波多野结衣精品一区二区三区 | 亚洲精品女同中文字幕在线 | 国内成人精品亚洲日本语音 | 九九手机视频 | 亚洲欧美色视频 | 99久久精品免费看国产四区 | 五月婷丁香 | 天天摸天天看天天爽 | 国产爱搞| 在线成人 | 色综合久久88中文字幕 | 久久亚洲欧美日本精品品 | 国产丝袜91 | 久久99国产精品二区不卡 | 夜色精品国产一区二区 | 日本高清在线精品一区二区三区 | 亚洲国产网站 | 国产精品路线1路线2路线 | 日韩美在线 | 簧片免费视频 | 久国产精品久久精品国产四虎 | 久久国产一区二区三区 | 国产精品网站在线进入 | 日韩久草 | 91福利国产在线观看一区二区 | 久久怡红院国产精品 | 欧美日韩一区妖精视频yjsp | 黄视频网站入口 | 色香蕉网 | 日韩成人免费在线 | 婷婷六月激情在线综合激情 | 91高清在线视频 | 日韩大胆人体 | 自拍视频一区二区 | 国产一区二区三区波多野吉衣 | 亚洲国产欧美国产第一区二区三区 | 久精品在线 | 亚洲美女网站 | 日本成人福利视频 | 91一个人的在线观看www |