GoCollaborate: Golang輕量級分布式伺服器架構搭建系列 - 0 (索引篇)

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

前言

Golang 是 Google 在2007年發布的一門開源的靜態編譯型程式設計語言,在記憶體回收、結構類型以及並發編程的處理上擁有自己的獨到之處,近年來更是成為使用頻率上升速度最快的程式設計語言之一。

想必大家對於 Golang 的大名早已有所耳聞,而今天作者菌則準備通過自己的一個開源項目 GoCollaborate 為例,給大家介紹一下我們如何利用Golang快速開發高效能伺服器叢集,並將之應用到能源網路,量化交易,區塊鏈,機器學習等等大資料計算情境。

GoCollaborate 是什麼?

很多同學看到這裡可能會問了,這個架構什嗎?我又能用它來做什麼呢?

簡而言之,

GoColaborate 是一個提供分布式服務管理搭建的輕量級通用架構,您可以輕鬆地用它進行編程,構建擴充,以及建立自己的高效能分布式服務。

有相關從業經驗的同學可能聽說過 Apache Hadoop,阿里的 Dubbo 以及 Facebook 的 Thrift,一套工具集下來是不是感覺暈頭轉向呢?不要緊,我們在這姑且暫時把它當成一個輕量級的 Hadoop 好了,隨著教程展開,讓我們一起來體驗Golang的神奇魅力。

目錄 (進行中...)

  1. 初始化項目結構
  2. 啟動命令列
  3. 日誌模組搭建
  4. 本地函數管理
    4.1. 函數註冊
    4.2. 函數調用
    4.3. 函數執行傳回值監聽
    4.4. 雜湊函數
  5. 伺服器核心模組搭建
    5.1. Master-Worker 模式
    5.2. Task 的定義與優先順序調度機制
    5.3. 定製任務 runtime 環境 TaskContext
    5.4. 任務發布器 Publisher 的設計
  6. RPC 通訊機制的應用
    6.1. 網路地址管理
    6.2. 同步通訊
    6.3. 任務分發及非同步呼叫
    6.4. 映射表map的進程安全設計
  7. Restful 架構設計
    7.1. JSON API 標準
    7.2. JSON Schema 的應用
  8. 微服務架構搭建與管理
    8.1. Service 的初始化
    8.2. Service 的註冊與訂閱
    8.3. 微服務路由設計
  9. Map-Reduce 的實現
    9.1. Mapper 介面
    9.2. Reducer 介面
  10. 記憶體管理及 Garbage Collection 機制

在這裡作者菌也說句題外話,俗語有言,冰凍三尺非一日之寒,GoCollaborate 社區需要藉助大家的力量才能繼續成長,歡迎 star,歡迎 fork ,更歡迎各位大蝦提交代碼哦~

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.