原创 用Python抓取亞馬遜雲(AWS)的日誌(CloudTrail)數據

如今是雲的時代,許多公司都把自己的IT架構部署在基礎架構雲(IaaS)上。著名的IaaS提供商有亞馬遜,微軟(Azure),IBM等,國內也有諸如阿里雲等。這裏亞馬遜毫無疑問是該市場的領軍者。 AWS提供了非常多的服務,領先了競爭對手一大

原创 在雲上的機器學習

隨着大數據日新月異的飛速發展,機器學習也變的越來越性感。雲和大數據是天生的一對,那麼雲上的機器學習又是什麼樣呢?我們今天就來看看幾個基於雲的機器學習平臺:亞馬遜,微軟和bigml 亞馬遜機器學習 我們先來看看雲的領軍人物亞馬遜的機器學習平

原创 美麗的曼陀羅曲線

最近看到一篇微信朋友圈上的文章,說兩個行星運行軌跡的中心連線可以畫出一個美麗的曼陀羅曲線,於是就寫了一段代碼生成這樣的曲線,結果真是令人驚歎的美麗。 代碼參見 : http://runjs.cn/detail/lbgqwfiu 或者 ht

原创 Go語言的類IPython 交互式編程界面

Bret Victor 的 Inventing on principle 是我看到過的最令人激動和震撼的演示,沒有之一。雖然這位前蘋果公司的UI大牛早在2012年就作出的這次演示,但他的影響一直沒有減弱,編寫程序過程中的任何變化,應該直

原创 使用開源Echarts爲Splunk打造類似語法驅動的分析可視化

Splunk是業內領先的機器數據平臺,有非常易用的用戶界面的可視化的選項。Splunk的可視化圖表是使用開源的highcharts構建的。但是Splunk內置的可視化選項不夠靈活,不能動態的進行數據到圖表的綁定。可喜的是,最新版本的Spl

原创 開源中國用戶分析

加入開源中國也有超過三年的時間了,覺得開源中國已經越辦越好了,突然很想知道它究竟有多好,我是不是開源中國最老的用戶,我有176個開源中國的積分能夠排名第幾,帶着這些問題,我抓取了部分開源中國的用戶信息,做了一個簡單的分析。 數據獲取 要獲

原创 Spark Python 快速體驗

Spark是2015年最受熱捧大數據開源平臺,我們花一點時間來快速體驗一下Spark。 Spark 技術棧 如上圖所示,Spark的技術棧包括了這些模塊: 核心模塊 :Spark Core 集羣管理  Standalone Sch

原创 持續交付的架構成熟度模型

隨着雲和容器技術的發展,大家對DevOps和CI/CD的重要性有了更深入的認識。今天我們就討論一下架構設計如何更好的支持CI/CD。 什麼是持續集成,交付和部署(CI/CD) Martin Fowler 和 Kent Beck 首次提出

原创 Python 並行分佈式框架之 Celery

Celery (芹菜)是基於Python開發的分佈式任務隊列。它支持使用任務隊列的方式在分佈的機器/進程/線程上執行任務調度。 架構設計 Celery的架構由三部分組成,消息中間件(message broker),任務執行單元(work

原创 微服務中的模式和反模式

微服務中的常見設計模式 軟件開發者對“四人幫”的《設計模式》一書應該都很熟悉,微服務中也會有一些常見的模式: 部署模式 如何部署服務是微服務中的一個重要問題,微服務的部署方式非常靈活,有以下的不同選項可供選擇 (參考 http://ww

原创 微服務部署方式的演進

Mutable Monster Server 最早的巨石架構,應用本身包含狀態,整個應用部署在物理節點上,要升級通常需要對整個應用升級,一般需要停止服務。並且這樣的架構很難橫向擴展。 Immutable Server and Rever

原创 Spark 機器學習實踐 :Iris數據集的分類

今天試用了一下Spark的機器學習,體驗如下: 第一步,導入數據 我們使用Iris數據集,做一個分類,首先要把csv文件導入。這裏用到了spark的csv包,不明白爲什麼這麼常見的功能不是內置的,還需要額外加載。 --packages c

原创 使用Python進行併發編程

讓計算機程序併發的運行是一個經常被討論的話題,今天我想討論一下Python下的各種併發方式。 併發方式 線程(Thread) 多線程幾乎是每一個程序猿在使用每一種語言時都會首先想到用於解決併發的工具(JS程序員請回避),使用多線程可以有效

原创 用JS實現簡單的神經網絡算法

筆者嘗試用JavaScript實現最簡單的神經網絡算法。 神經網絡簡介 神經網絡試圖模擬大腦的神經元之間的關係來處理信息。它的計算模型通常需要大量彼此連接的節點。每個神經元通過某種特殊的輸出函數來處理來自其它相鄰神經元的加權輸入值。 神經

原创 使用Python進行分佈式系統協調 (ZooKeeper,Consul, etcd )

筆者之前的博文提到過,隨着大數據時代的到來,分佈式是解決大數據問題的一個主要手段,隨着越來越多的分佈式的服務,如何在分佈式的系統中對這些服務做協調變成了一個很棘手的問題。今天我們就來看看如何使用Python,利用開源對分佈式服務做協調。