• <td id="i5ofi"></td>

  • <td id="i5ofi"></td>
    <acronym id="i5ofi"><label id="i5ofi"><xmp id="i5ofi"></xmp></label></acronym>

      <td id="i5ofi"><option id="i5ofi"></option></td>
      1. 日本雅虎怎么注冊(雅虎日本如何用)

        雅虎日本是一家雅虎和軟銀合資的日本互聯網公司,是日本最受歡迎的門戶網站之一。雅虎日本的互聯網服務在日本市場占主導地位。

        下圖從三個維度顯示了雅虎日本的經營規模。第一個是服務數量,雅虎日本提供上百種互聯網服務;第二個是服務器數量,雅虎日本使用超過 150,000 臺服務器(大多為裸機服務器)全天候支持這上百種互聯網服務的正常運作;第三個是每月總頁面瀏覽量,2017 年的數據顯示,雅虎日本每月瀏覽量超過 700 億。由此可見,雅虎日本的服務規模之大。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        挑戰

        運營規模巨大對雅虎日本來說是個挑戰。高性能和可擴展的服務才能滿足海量用戶的需求。同時還需要提供多租戶支持來滿足運營眾多服務的需求。有時需要處理敏感消息或關鍵任務,因此持久性也很重要。此外,雅虎擁有眾多的數據中心,對跨地域復制有強烈的需求。在諸多方面,我們面臨著巨大挑戰,希望找到一個穩定且可擴展的消息平臺,能滿足上述需求并大規模地運行服務,同時能確保數據的完整性。

        為什么選擇 Apache Pulsar

        為了解決這些挑戰,我們開始調研各種消息平臺。

        Apache Pulsar vs Apache Kafka

        首先,我們比較了 Apache Pulsar 和 Apache Kafka,這兩個業界不同的消息系統,結果如下。

        這兩個系統最主要的不同在于數據分布。在數據負載均衡方面,Pulsar 比 Kafka 處理得更勝一籌。以下圖為例,圖中有 1 個分區,3 個存儲節點,每個分區數據存儲兩個副本。Kafka 中,分區中的所有數據都保存在 leader broker(Broker 2)中,然后復制到另一個 follower broker(Broker 1)中。Broker 3 既不是 leader 也不是 follower,因此沒有任何數據。在 Kafka 中,由于一個分區中的所有數據都由一個 broker 保存,因此分區的容量受 broker 的容量限制。一旦要擴展分區,就需要重新分布數據;否則就會出現負載不均衡的情況。而 Pulsar 中,分區中的數據被劃分為粒度更細的單元,稱為分片(segment)。它們均勻地分布和保存在 bookies 中,分區容量不受單個 bookie 節點容量的限制,擴展分區時不需要重新分布數據。因此,Pulsar 比 Kafka 更靈活,更容易擴展。

        另一個區別是跨地域復制。Kafka 使用 MirrorMaker 來處理跨地域復制,但需要使用額外的機器來運行和管理 MirrorMaker。而 Pulsar 內置了跨地域復制功能,不需要額外部署跨地域復制組件。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        OpenMessaging Benchmark

        使用 OpenMessaging Benchmark 可以很容易比較不同消息處理系統。據報道,Apache Pulsar 處理吞吐量和延遲的性能更好。圖中藍線代表 Pulsar,紅線代表 Kafka。左圖顯示吞吐量,上方線條說明吞吐量更高。右圖顯示延遲,下方線條說明延遲更低。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        為什么 Apache Pulsar 最適合

        這些對比說明 Apache Pulsar 比 Apache Kafka 更好,所以我們決定進一步研究 Apache Pulsar,并總結了 Pulsar 更適合我們的原因。

        高性能

        即使主題數量巨大,還要保證數據的可靠性,Apache Pulsar 也能實現高吞吐和低延遲。例如,Oath Inc. 每天要處理 230 萬個 topic,1000 億條消息。在這個巨大的體量下,要確保消息不能丟失且必須按順序處理。Apache Pulsar 不僅能滿足這些需求,還實現了 1,000,000 吞吐量(msg / s)和 5 ms 的延遲。

        易擴展

        Apache Pulsar 擴展性很好。要實現擴容,只需添加服務器即可。Pulsar 的服務層和存儲層是分開的,可以根據數據路徑靈活地添加 broker 或 bookie。如果需要提升服務容量,添加 broker 即可。如果需要擴大存儲容量,添加 bookie 即可。

        多租戶

        多租戶是指多種服務共用一個 Pulsar 系統。每個服務和應用程序作為 “租戶” 使用 Pulsar。因此,不同的服務無需單獨維護各自消息系統。Apache Pulsar 有不同的認證和授權機制,可保護消息不被攔截??梢耘渲谜J證和授權機制,并共享到命名空間或主題,從而保護消息。因此,可以在一個 Pulsar 系統上運行多種服務,有效降低維護和勞動力成本。

        跨地域復制

        雅虎日本在多個數據中心運行很多服務。Pulsar 提供內置的跨地域復制功能,在數據中心之間復制消息,可以有效處理災備,恢復數據,提高服務質量。更重要的是,跨地域復制是 Pulsar 的內置功能,方便啟用和使用。

        Pulsar Functions

        Pulsar Functions 是輕量級計算框架(如 AWS lambda 或 Google Cloud Functions),不需要外部系統(如 Apache Heron,Apache Storm,Apache Spark 或其他類似系統)。只需構造邏輯并部署至 Pulsar 集群。Pulsar Functions 支持 Java、Python 和 Go 語言。

        Pulsar on Kubernetes

        Kubernetes 有眾多用戶,雅虎日本也是其中之一。在 Kubernetes 集群上部署 P??ulsar 很容易。下圖展示了 Pulsar 在 Kubernetes 引擎上的使用狀態。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        經過詳細調研,我們發現 Apache Pulsar 不僅比 Apache Kafka 的性能更好,還能夠滿足我們企業運行的所有需求,在 Kubernetes 上容易部署,所以我們最終決定采用 Apache Pulsar 作為內部消息平臺。

        Apache Pulsar 在雅虎日本的應用

        雅虎日本在生產環境中使用 Pulsar 已經好幾年了。我來分享下 Apache Pulsar 在雅虎日本的應用場景。

        下圖是雅虎日本的系統構架。我們有兩個數據中心:一個在東部,一個在西部。每個數據中心都有 broker、bookie、ZooKeeper 和 WebSocket 代理服務器。我們使用 Prometheus 收集指標,并通過 Grafana 將其可視化。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        Prometheus 可以用來監控 topic、生產者和消費者的數量,如下圖所示。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        自助服務工具

        在雅虎日本,我們開發了一套工具,用來創建和管理租戶、命名空間和主題。用戶可以在 UI 界面自己創建租戶和命名空間,并配置設置。目前,這個 UI 僅在雅虎日本內部使用,所以是日語的,沒有開源。使用這個 UI,可以創建租戶和命名空間,并查看 topic 的統計信息,如吞吐量、平均消息規模等。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        案例 1: 內容更新通知

        我們把 Apache Pulsar 作為通知服務系統使用。各種內容文件(例如天氣,地圖或新聞數據)從合作伙伴公司推送到雅虎日本。服務需要了解這些更新的內容,所以服務把文件當作 topic。內容更新時會向 topic 發送通知。服務一旦收到通知,就會從文件服務器獲取更新的內容文件。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        案例 2: 郵件服務中的工作隊列

        我們使用 Apache Pulsar 構建異步工作隊列。郵件索引工作繁重,所以異步執行。首先,Mail BE 服務器中的生產者在 Pulsar 中注冊 job,消費者按照自己的節奏從 Pulsar 獲取 job。如果索引失敗,生產者會重新注冊。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        案例 3: 日志管道

        我們使用 Apache Pulsar 收集日志。雅虎日本幾乎所有的服務和應用程序都運行 PaaS 平臺(如 Heron)或 CaaS 平臺(如 Kubernetes),我們想從中收集日志。首先,日志發布到 Pulsar 后會分成 topic。根據使用 Pulsar Functions 的最終目的地和服務,日志最終會發送到其他數據庫或平臺,例如 HBase、Prometheus 和 Twilio。下圖是雅虎日本的日志收集架構。

        雅虎日本如何用 Pulsar 構建日均千億的消息平臺?


        結論

        Apache Pulsar 是一個快速、持久、可擴展的 pub-sub 消息系統,配備很多有用的內置功能,如跨地域復制、多租戶、Pulsar Functions 等。

        多年來,雅虎日本使用 Apache Pulsar,關注 Pulsar 社區的新聞,更新和活動,在應用場景中使用 Pulsar 新功能,Pulsar 的穩定性一直很好。

        Pulsar 社區雖然年輕,但發展迅猛,在不同的應用場景下不斷有新的案例落地。我們會持續關注并和 Apache Pulsar 社區深入合作,進一步完善、優化 Pulsar 的特性和功能。

        相關信息

        以下是 Apache Pulsar 的相關信息:

        • Apache Pulsar官網
        • 在線視頻
        • 演示文稿

        關于作者

        Nozomi Kurihara, 雅虎日本消息平臺團隊經理、Apache Pulsar 項目 committer。負責創建基于 Apache Pulsar pub-sub 為中心的消息處理平臺,該平臺能夠處理海量服務和應用程序流量。

        聲明:燕來學堂所有作品(圖文、音視頻)均由用戶自行上傳分享,僅供網友學習交流,版權歸原作者InfoQ所有,原文出處。若您的權利被侵害,請聯系 956463625@qq.com 刪除。

        本文鏈接:http://www.iklangratis-online.com/b/63721.html

        一级a级毛片,一级a久久国内,一级a毛一级a做视频免费观看,一级a免一级a做免费看视频
      2. <td id="i5ofi"></td>

      3. <td id="i5ofi"></td>
        <acronym id="i5ofi"><label id="i5ofi"><xmp id="i5ofi"></xmp></label></acronym>

          <td id="i5ofi"><option id="i5ofi"></option></td>