談拓撲關係圖繪製(10.16)
對於資料視覺化,實際上我在16年就寫過資料視覺化的文章,大家可以先參考:
ofollow,noindex">http://blog.sina.com.cn/s/blog_493a84550102w9v5.html
在這篇文章裡面也專門談到相關網路關係圖和拓撲圖製作方面的內容,對於百度的 Echart,Highchart,D3.js 這三個 都有涉及到閘道器關係和整合圖繪製的工具,但是和專門的網路拓撲圖顯示還是有差別。特別是對於ESB服務匯流排這種外部整合多個業務系統,或者涉及到兩級ESB匯流排整合架構的,往往通過視覺化功能很難得到很好的展現。在一級整合架構樹狀展開方面,前期我們也通過百度Echart做了展示,但是如果展示兩級的整合效果,往往並不是很好,擴充套件起來也比較麻煩。
今天整理了下,涉及到拓撲圖展示還可以參考:
利用Flex元件birdeye繪製拓撲關係圖
BirdEye 是一個開源的Adobe Flex圖表製作元件。用於建立多維資料分析視覺化介面。birdeye 可以繪製 拓撲圖,關係圖,流程圖,星空圖,地圖,餅圖等。在網上看了下BirdEye繪製的拓撲圖效果還可以,但是當前Flex元件本身已經很少使用,本身Java框架要為繪製拓撲圖把Flex這種重的元件整合進來也不太合適。因此對於這種方式也不推薦使用。
Qunee
中國人自己開發的,使用HTML5 Canvas技術,繪製清新、流暢的網路圖,可用於社交網路圖、拓撲圖、流程圖、地圖等需求, JS元件封裝,藏繁瑣於簡潔,輕鬆構建優雅的網際網路應用與企業應用,讓資料的線上視覺化變得容易。其元件特點為:
輕巧、高效能 - 支援上萬圖元,流暢操作
向量圖形 - 支援向量圖形,無極縮放
互動體驗 - 漫遊互動,改進互動事件、支援手持裝置
注重細節 - GIF動畫,豐富漸變,層次控制等
網上有完整的線上例項, http://demo.qunee.com/ ,看了下對於網路拓撲展示,對於結合地圖的網路拓撲,Bus匯流排拓撲等展示功能還是很強大。但是這個是收費軟體,如果僅僅是為了一個拓撲圖功能的視覺化和線上展示的話,意義也不太大。
TWaver
專門的資料中心視覺化商業軟體,廣泛應用在資料中心,IT運維,智慧城市等專案裡面,這個軟體功能相當強大,既有2D的展示,還有3D視覺化展示。
功能演示地址:http://www.servasoft.com/download.html#demo
網路拓撲展示:http://demo.servasoft.com/group/
這個商業軟體展示效果明顯比前面幾個好很多,但是如果不是專門的資料中心監控運維,智慧城市大屏展示等專案,實際上使用該商業軟體意義也不太大。但是對於該商業軟體中的視覺化展示效果和Demo,完全可以參考。
Gephi
Gephi是一款開源免費跨平臺基於JVM的複雜網路分析軟體,,其主要用於各種網路和複雜系統,動態和分層圖的互動視覺化與探測開源工具。Gephi 是一種開源軟體,允許開發者去擴充套件和重複使用。
Gephi是在Netbeans平臺上開發,語言是JAVA,並且使用OpenGL作為它的視覺化引擎。依賴於它的APIs,開發者可以編寫自己感興趣的外掛,建立新的功能。Gephi 的優勢在於操作簡便,而且出圖的效果真的非常好,還有很多的外掛可以使用,可以說是做視覺化分析、和後期出圖的利器。
官網主頁 http://gephi.github.io/toolkit/
GitHub主頁 https://github.com/gephi/gephi-toolkit-demos
NetworkX
NetworkX這是一款Python的軟體包,用於創造、操作複雜網路,以及學習複雜網路的結構、動力學及其功能。 有了NetworkX你就可以用標準或者不標準的資料格式載入或者儲存網路,它可以產生許多種類的隨機網路或經典網路,也可以分析網路結構,建立網路模型,設計新的網路演算法,繪製網路等等。
微服務架構監控和視覺化化工具
這篇文章內容量很大,提到了很多涉及到微服務架構和APM監控的工具,參考網址 。
微服務架構的監控和視覺化: 任何構建於微服務架構上的系統都有很多。微服務體系結構通常由幾十個甚至幾百個細粒度的服務組成; 每個使用者交易都經歷了許多這些服務。另外,事務通常是非同步的,涉及多個併發服務請求。傳統的APM產品通常無法監控處理多個併發服務請求的分散式應用程式。
它們固有的複雜性和高可擴充套件性要求導致了使用機器學習,圖形分析,分散式跟蹤,拓撲視覺化和其他尖端技術的應用程式監視和視覺化工具的建立。
AppDynamics: 雖然AppDynamics已經有相當長的一段時間了,但該公司在2015年6月推出了機器學習驅動的APM產品,以監控,管理和分析諸如微服務之類的複雜體系結構。AppDynamics實時顯示應用程式效能並自動發現應用程式拓撲和相互依賴關係。其APM工具還包括分散式跟蹤,拓撲視覺化和動態標記。
開發人員可以使用AppDynamics來確定分散式應用程式的執行狀況,瞭解事務路徑,確定服務失敗的根本原因,並獲得對微服務體系結構的其他重要見解。AppDynamics API可以幫助擴充套件和定製平臺的功能。
Netsil: Netsil分散式應用監控和分析平臺成立於2016年,自動發現完整的應用拓撲結構,持續監控分散式應用,執行分散式跟蹤以及分析應用指標(從歷史到現在)。
基於微服務的應用程式由多個服務組成,通常使用不同的語言和框架構建。雖然分散式應用程式的服務可能使用多種語言和框架,但這些服務的協議通常是相同的(REST,HTTP,RPC,pub / sub等)。像Netsil這樣的一些APM工具可以與這些通用協議監控服務整合,無論語言或框架如何。
Netsil監視和捕獲分散式應用程式服務互動資料,以建立視覺化,幫助開發人員發現和管理事件,衡量應用程式的整體執行狀況,並理解應用程式的元件和依賴關係。