AWS AppSync 透過促進即時讀者動作來協助公益軟體行善。

Public Good Software 是領先的公益行銷平台,其目標是透過將新聞文章與相關慈善事業關聯,讓新聞變得具有行動性。該公司的小工具 Impact Unit 內嵌於出版商網站上的文章中,可以識別這些相符項並提示讀者採取行動。Public Good Software 與致力於社會公益活動的大型品牌,以及非營利組織和媒體合作夥伴開展合作

媒體合作夥伴將小工具整合至其內容管理系統 (CMS) 的主範本或廣告伺服器中。Impact Unit 的早期版本對眾多服務進行了 API 呼叫,以擷取確定哪些公益事業應與哪些文章關聯所需的資料。API 呼叫的絕對數量增加了小工具操作的延遲,並且小工具背後的程式碼規模對一些發佈商來說存在問題。延遲和程式碼規模共同阻礙了 Public Good Software 滿足其目前客戶需求和吸引新客戶的能力。「我們的客戶正在與更大容量的媒體合作夥伴開展更錯綜複雜雜的活動。我們需要 Impact Unit 提供更好的效能來滿足這一需求,」Public Good Software 的技術長 Michael Manley 說道。

「我們在不到一個月的時間內完成了從概念到生產的過程,只有一名工程師負責 AWS AppSync 服務。」

– Public Good Software 技術長 Michael Manley

 

  • 關於 Public Good
  • Public Good Software 營運著領先的公益行銷平台。該平台透過相關內容和個人化推薦,讓媒體公司和以公益事業為中心的品牌能夠進行以社會事業為中心的互動和行動。

  • 優勢
    • 執行 API 改進並在不到 1 個月的時間內投入生產
    • 更新的 API 改善了客戶體驗並加速頁面載入時間
    • 應用程式可無縫擴展以符合可變的站點流量
    • API 呼叫從大約 12 次減少到 1 或 2 次
    • 卸載基礎架構問題讓開發人員能夠專注於改進 API
  • 使用的 AWS 服務

從概念驗證到生產不到一個月

Public Good Software 計劃實驗 GraphQL,這是一種用於 API 的開源查詢語言。「我們意識到,如果我們正確使用 GraphQL,Impact Unit 只需對我們的服務進行一兩次呼叫。GraphQL 讓您能夠準確指明您想要的資料並請求一次,而不是從多個服務中逐個請求,」Manley 說道。當 Manley 的團隊發現 Amazon Web Services (AWS) 提供 AWS AppSync (一種 GraphQL 受管服務) 時,他們想知道是否可以透過減少 API 呼叫的數量,來協助解決其延遲問題,並且無需維護基礎架構。

Public Good Software 團隊在週一的規劃會議上討論了 AWS AppSync 的使用,到週五已經建立了概念驗證。作為練習的結果,該團隊立即能夠將透過 HTTPS 進行的 API 呼叫數量從大約十幾個減少到一兩個。此外,他們無需維護另一個 API 伺服器就能做到。Manley 已經預算了三個月的工作來尋找解決方案,所以,如此迅速地發現解決方案是一個驚喜。僅在一個月內,該團隊就實作了 AWS AppSync。

「對我們來說,上市時間是最大的優勢。我們在不到一個月的時間內完成了從概念到生產的過程,只有一名工程師負責 AWS AppSync 服務。第二個最具價值的優勢在於該服務能夠根據可變流量進行擴展,」Manley 說道。Public Good Software 推測,相較於在公司的應用程式堆疊中實作自己的供應商,無論是定期費用還是勞力,使用 AWS AppSync 提供其 GraphQL API 的成本要低得多。

由於從用戶端到後端所需的呼叫減少,因此,使用 AWS AppSync 降低了交付可操作內容的延遲。AWS AppSync 和 GraphQL 相結合,意味著可以在單一網路請求中跨多個微型服務擷取和彙總資料。「AWS AppSync 讓我們能夠透過 Impact Unit 小工具交付更精簡的 JavaScript 庫,從而減少了程式碼規模和延遲。這意味著我們可以透過複雜的活動,來為我們的客戶提供更好的體驗,並為我們的媒體合作夥伴加快頁面載入時間,」Manley 說道。

擺脫對基礎架構的擔憂並專注於競爭優勢

Public Good Software 贊同這樣一種理念,即如果技術能力不能在市場上讓公司與眾不同,則應將這些任務移交給其他地方。對於公司而言,這意味著將功能委派給 AWS 產品。將這些問題轉移至 AWS,團隊可以將更多精力集中在其 API 和其他關鍵專案上。Manley 表示:「我們團隊中只有四名工程師。對於我們這樣規模的公司,將 AWS 已經建置的 80% 或 90% 的基礎架構功能移交給 AWS 才有意義。這讓我們能夠將時間花在公共產品軟體獨有的 10% 到 20% 的功能上。」

Public Good Software 考慮了幾個封閉和開源的 GraphQL 供應商,其可作為現有微型服務和用戶端應用程式之間的層。然而,每一個都帶來了額外的營運開銷,主要是團隊需要佈建、強化和擴展的應用程式服務形式。Manley 認為在提供 GraphQL API 方面具有顯著的競爭優勢,但在營運和維護支援其基礎架構方面則要少得多。「如果我們可以委派該 API 基礎架構的營運責任,而將我們的資源集中在定製 API 的行為上,那會是一項巨大的勝利。這就是我們使用 AWS 服務的原因。AWS AppSync 在應用程式堆疊的更高級別提供可擴展的商品功能。」

改進機器學習模型

Public Good Software 不是一間固步自封的公司,它會繼續尋找方法為其客戶提供改進、差異化的服務。該公司即將更多地利用機器學習,因為它正在探索使用 Amazon SageMaker 的方法,該服務可協助開發人員和資料科學家快速建置、訓練和部署機器學習模型。其目標是發現機器學習和自動文字分析如何顯著擴展新聞內容和相關公益事業之間的關聯程序。「我們所做的很大一部分工作是,發現如何將新聞內容與社會公益相關聯。我們如何知道哪些內容可行? 我們如何知道要展示哪些組織以及建議採取哪些行動? 與哪些社會公益活動相關聯? 我們正在使用 Amazon SageMaker 訓練我們的機器學習模型來解答這些問題,」Manley 說道。


進一步了解

若想進一步了解相關資訊,請瀏覽 aws.amazon.com/appsync