<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # YouPorn-每天定位 2 億次觀看 > 原文: [http://highscalability.com/blog/2012/4/2/youporn-targeting-200-million-views-a-day-and-beyond.html](http://highscalability.com/blog/2012/4/2/youporn-targeting-200-million-views-a-day-and-beyond.html) ![](https://img.kancloud.cn/49/76/497628fda2e27cb2d6a530ad5ef9654d_240x58.png) **更新**:這是演講的[視頻。](http://www.youtube.com/watch?v=RlkCdM_f3p4) YouPorn.com 的首席開發人員 [Erick Pickup](https://twitter.com/#!/EricPickupYP) 在 [建立可擴展規模的網站](https://joind.in/6123) 的演講中介紹了其架構。 HTG8] ConFoo 會議。 如您所料,YouPorn 是一頭野獸,每秒流傳輸三張完整的 DVD 視頻,每秒處理 300K 查詢,每小時產生多達 15GB 的日志數據。 不幸的是,我們只有演講的幻燈片,因此本文并不像我想的那么技術性,例如在視頻處理方面完全不可見,但我們確實得到了一些有趣的細節 。 最有趣的方法是,YouPorn 是一個非常傳統的 LAMP 堆棧,具有 NoSQL 的功能,因為 Redis 現在在實時數據路徑中替換了 MySQL。 簡單地讓我想起 [YouTube](http://highscalability.com/blog/2012/3/26/7-years-of-youtube-scalability-lessons-in-30-minutes.html) 。 第二個最有趣的收獲是**出色的轉換**。 眾所周知,永遠不要重寫,但在 2011 年,YouPorn 重新編寫了整個站點,以使用 PHP + Redis,而不是基于 Perl + MySQL 的復雜體系結構。 所有人都認為切換非常順利。 該站點的速度提高了 10%,他們遷移了 6 年的舊數據,沒有停機時間。 繼續閱讀以了解有關 YouPorn 架構的更多信息... ## 統計信息 * 于 2006 年推出,于 2011 年被收購。 * 2008 年每天 1 億次頁面瀏覽 * 30 萬個查詢/秒 * 100 Gb / s-每秒流傳輸 3 張完整 DVD * 每小時記錄 8GB-15GB 數據 ## 堆棧 * 最初用 Perl 編寫(具有 DBIx :: Class 后端的 Catalyst 應用程序) * 現在 [PHP-FPM](http://php-fpm.org/) (FastCGI 流程管理器)-是另一種 PHP FastCGI * HAProxy * ActiveMQ * 清漆 * Redis * Nginx * MySQL * Syslog-ng * [Symfony2](http://symfony.com/) -一個 PHP Web 開發框架。 ## 架構 * **大切換** 。 整個站點在 2011 年進行了重寫,以使用 PHP 代替復雜的 Perl 架構,并使用 Redis 代替 MySQL 和 ActiveMQ。 * 定位到 200+百萬的每日請求 * 移動了 6 年的舊數據而沒有停機 * 新網站的速度提高了 10%。 * 該過程花費了比預期更長的時間: * 必須決定要使用哪些技術 * 超出預期的學習曲線 * 將數據從 MySQL 移動和重組到 Redis * 人員配備 * **HAProxy** -提供負載平衡,智能負載分配和運行狀況檢查 * 維護兩個服務器池:一個具有故障轉移到備份主服務器的寫池,一個讀取池將管理除主服務器之外的服務器。 * **清漆** -反向代理有助于加快站點速度并減少服務器負載。 還用于緩存管理,邊緣包括(ESI)和 Web 服務器上的運行狀況檢查。 * **系統記錄**-收集頁面瀏覽量數據,并用于查看計數器和相關視頻。 * **Nginx** -高性能 Web 服務器,運行 PHP-FPM,并充當 CSS,圖像和 JS 等靜態文件的外部 CDN。 * **Symfony** -快速且功能豐富,帶有大量庫。 * 認為 Symfony2 + Redis =快速開發+可擴展網站-一個很好的平衡方程。 * 喜歡依賴注入。 * 選擇 Web 框架并不意味著要破壞性能,只要您在其前面使用可靠的體系結構即可。 * **ActiveMQ** -為大型站點設計的消息總線,用于寫入 MySQL 和 Redis。 * 他們發現,對于一個不斷變化的站點來說,它太僵化了,所獲得的收益不足以維持一個單獨的 Java 基礎架構。 * 希望解決問題,因為問題可能更多是開發人員而不是技術人員。 * **Redis** -一種快速的開源 KV 存儲,現在是主要數據源。 * 實時更新。 * 已排序的集合用于所有列表 * [流水線化](http://rediscookbook.org/pipeline_multiple_commands.html) ,用單個原子命令執行多個 Redis 命令,是提高性能的關鍵 * 切換后,添加了其他 Redis 節點,這不是因為 Redis 勞累過度,而是因為網卡無法跟上 Redis 的步伐。 * 所有讀取均來自 Redis * MySQL 用于允許根據需求更改構建新的排序集。 * [僅附加文件(AOF)[H??TG2]](http://redis.io/topics/persistence) 格式用于增量備份,并且無 IO 痛苦 * 考慮將 Redis 用作 Redis 持久性存儲之前的臨時緩存,以提高性能和減少負載。 * **MySQL** -支持 Redis 的支持角色 * 高度規范化,因為它沒有直接用于網站。 * 一些表有 100+百萬行。 * 用于使用新功能填充 Redis 列表 * 同時使用了 GIT 和 SVN,效果不佳。 * 在其 CMS 中使用 [教義](http://www.doctrine-project.org/) 。 節省了數周開發時間的強大工具。 ## 相關文章 * [什么是 Symfony2? Fabien Potencier 的](http://fabien.potencier.org/article/49/what-is-symfony2) * [Youporn 堆棧上的超級空缺-每天 300K QPS 和 1 億頁面瀏覽量](http://highscalability.com/blog/2012/2/16/a-super-short-on-the-youporn-stack-300k-qps-and-100-million.html) * [在 Reddit 上](http://www.reddit.com/r/programming/comments/rvw6q/youporn_scaling_to_200_million_views_a_day_and/) 演講視頻將很快到來。 我沒有太多內容可以討論。 我的計劃是顯示可能的結果,并在以后的講座/文章中介紹細節。 我正在處理這些。 ?埃里克 沒有批評的意圖,我只是想解釋為什么為什么可能沒有讀者想要的那么多細節。 我知道這需要大量工作,并且期待更多細節。 謝謝。 很棒的文章,很棒的幻燈片。 期待觀看視頻。 聽到有關 svn / git 項目符號的更多詳細信息將很有趣。 Youporn 最初是使用 Perl Catalyst 框架開發的(請參閱 http://www.technewsworld.com/story/70236.html?wlc=1276880514) Manwin 在 2010 年 4 月收購了 youporn。那時,Youporn 已經是一個 BIG 網站。 根據介紹,他們決定將 Perl Catalyst 框架更改為 PHP Symphony 框架的決定并不是為了獲得性能,而是為了使新收購方的非 Perl 開發人員獲得陡峭的學習曲線。 我似乎認為 MySQL,ActiveMQ-> Redis 更改帶來了 10%的性能提升。 即使這似乎不是很大的改進。 不要怪罪 Perl 具有復雜性和低性能。 :) 我很高興視頻播放完了。 在演示過程中的某些時候,埃里克(Eric)曾將 2 個小錯誤稱為 dns 服務器,網絡服務器和內存緩存 Redis。 我想知道的部分,視頻搜索如何工作? Redis 有可能嗎? 還是仍然使用 MySQL 文本搜索? 這一切都在什么硬件上運行? 它是自托管的嗎?
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看