1. 程式人生 > 其它 >APM市場冰火兩重天,或許只是行業無處安放的焦慮

APM市場冰火兩重天,或許只是行業無處安放的焦慮

近兩年來,無論從國內還是到國外,市場出現一種APM批判的論調,甚至有“傳統APM已經落後”的個別聲音出現。

可放眼望去,國外主流APM廠商如:DATADOG、 Dynatrace、New Relic等市值卻在不斷創著新高,甚至連Splunk這種大廠也在發力佈局APM。國內賽道玩家同樣深受資本市場的熱捧,例如基調聽雲融資額屢屢逆市創新高,可以說當之無愧為二級市場的弄潮兒。

如此現實與輿論的一冰一火的反差,到底是意味著這個行業將面臨的變革,還是僅僅只是業內人無處安放的焦慮?

細究之下,持這種看衰論調的人大多是用的一個依據——傳統的APM將不再適應雲原生時代。

我們不妨順著這種思路來看一下,是不是如此。

新架構時代的確來了

之前很長一段時間裡,對大多數公司而言云計算基本都停留在雲資源層,而應用仍舊是傳統的單體架構。那些設計成能上天入地的功能被辛勤的研發轉化為成千上萬行的程式碼,並犧牲睡眠時間和頭髮數量來保證進度,著實另人震撼。直到某一天,客戶要求加個小功能模組時,我們有幸能夠看到又一次堪比登月的工程重構。

做為公司的PM曾經是有理想有抱負的,“我曾經跨過山和大海, 也穿過人山人海”是經歷過歲月滄桑留下的自信。但是面對這不知道換了多少架構和研發才完成的堆積成山的裡三層外三層的程式碼堆,他們也不得不感慨:“誰能來救救我?”。

故事裡通常都是這樣,該拯救世界的英雄出馬了,於是它真的來了。

微服務的出現可以說順應了這個時代,它通過分散式的元件即容器來封裝不同的功能並使用API通訊,並能夠在與之前面向服務的架構保持一致的前提下提供程式碼更新的靈活性,這怎麼聽著都像是拯救蒼生來了。

這一項項的提升效果,誰能保證不心動?

  • 改善可擴充套件性
  • 提高生產力
  • 更快的定位問題
  • 提升系統的可用性
  • 最終提供最佳的使用者體驗

可是習慣理想主義的我們經常會這樣,解決一些問題的同時又會製造另外一些問題出來。換成這個架構我該咋管理呀?

面對困難,我們其實早就習慣性焦慮

微服務很好很強大,但是這背後卻帶來了前所未有的複雜性。你所拆散成的微服務它們必須相互通訊,而且還要保證將延遲降到最低,當管理一個由微服務組成的應用程式時,你實際上在管理的是一個相互關聯的元件網路,還真是應了那句話“前門拒虎,後門進狼”。

從人類歷史看來,我們不擅長解決未知問題,甚至對未知有種本能的恐懼。大到國與國之間的外交,小到每個人的婚姻工作,彷彿不焦慮就對不起這個時代一樣,尤其是這兩年的疫情更是給了我們焦慮製造了快速發展的空間。

於是乎我們需要找個藉口以避免顯示自己解決問題能力上的不足,既然雲原生是大趨勢,那麼凡是和它八字不合的東西統統可以說落後了,這樣事情就變得簡單了是吧?

以APM為例,反正APM發展了這些年也有一些積累的問題,應該也不算冤枉它,何況還有一批新興的廠商也迫切的希望在這裡做些文章呢。於是,幾大罪狀幾乎板上釘釘。

APM的罪狀:

  • 非全量採集帶來的追蹤資料遺漏,不具備基礎資源的監控指標及系統日誌的獲取能力
  • 基於批處理的分析模式不滿足快速定位要求
  • 專有探針模式難滿足定製化採集需求,並且資料格式難統一
  • 定價模式限制了使用者業務增長所需的必要的擴容
  • 難以和其它監控工具聯動提升可觀測性

確實不錯,至少是有理有據,而且都說到點子上了。結果自然也是成功的把自己的難題推給了別人,於是焦慮神奇的轉移了。

只有直面才能解決問題

既然罪狀有了,APM圈總得有個應對辦法吧,否則豈不是欺我無人麼。於是一波聰明人聚到一起,思想的碰撞有了結果,靈光一現就是它:可觀測性。

這個看似神祕的“可觀測性”其實並不複雜,它定義使用新的方法來提高對應用程式的效能的洞察能力,目前主要提供三類的資料:指標(Metrics)、追蹤(Traces)、日誌(Logs)。

是不是很熟悉?沒錯,這不就是市面上多如牛毛的廠商一直在各自做的事情麼?原來是眾人獨自闖江湖,現在需要變成有幫派了,不管是直覺還是幻覺都在告訴所有人,這對大家來說是件好事。

於是,APM就理所應當的需要修煉進化了,所謂“兵來將擋,水來土掩”也是屢試不爽的高招。

  • 全量採集與資料整合

針對應用本身的效能監控,應提供全量Trace資料的採集能力,並能夠支援標準化指標體系,提供對基礎資源監控指標及日誌的整合能力。

  • 加強AI能力

通過機器學習/AI技術使用更高效的資料分析流程和演算法模型來分析APM及其它資料的結果,以提供比人工監控更快的發現和解決問題的能力。

  • 支援定製探針或相容開源探針

客戶能夠對現有探針進行定製,或是客戶自己遵循開源協議(如:OpenTracing)開發的探針,甚至現有的開源平臺探針,如:SkyWalking、Pinpoint等。

  • 針對微服務的新的定價方式

不再侷限於探針數量的定製模式,提供更加靈活且高性價比的方案,如:按採集資料量計費、按採集時長計費等。

  • 與企業現有IT系統的有效對接

對夠對接已有監控系統如:基礎資源監控、日誌監控、網路流量分析,實現統一的監控平臺。

與CMDB、ITSM、CMP系統對接的能力,提供從資源到應用的全維度管理視角的資料。

結合自動化工具,實現應用級的自動化運維能力。

總結起來其實就一句話:超越監控,向可觀測性邁進。

知而不行是未知,善始才能善終

莎翁說過“一千個人眼中有一千個哈姆雷特”,即便是在這個行業裡沉浸多年的人也未必看得通透。放眼整個APM江湖:有的人換了賽道不再說自己是這行了,有的人拉了關係來證明自己骨子裡的基因已經變了,還有的人直接從之前的賣藝不賣身改成賣身不賣藝了。不可謂不是風起雲湧,暗藏危機。

所以,豪言壯語的口號顯得不那麼重要了,重要的是能不能做到。“未有知而不行者,知而不行,只是未知”,陽明先生幾百年前就給出過答案。對於一個行業來說這是一個蛻變的過程,會有人牴觸改變,似乎改變總是伴隨著推倒重來,這的確不夠理性。

機遇和挑戰並存的才是理性的市場,歷史淘汰的始終都是不適應改變的人。改變本身並不可怕,可怕的是你根本不知道該怎麼改變。“千招會不如一招絕,樣樣通等於樣樣鬆”,這在江湖裡至少一直算是個至理名言,可以共勉。

謹以此文獻給那些在自己行業裡一直專注的人,因為他們始終相信“堅持初心,方得始終”。無論我們說什麼,APM市場依舊在那裡,或衰或榮並不由個人意願決定。