原创 Ceph簡介及評論

#分佈式文件系統# #OpenStack# Ceph是一個分佈式文件系統(RADOS),一個文件,首先按照固定塊大小切分爲Object,並給予oid(oid的唯一性實際上由客戶端提供和保證);oid經過hash“近似均勻”映射到PG。(P

原创 用NodeJS開發雲計算時代Web服務的真正技術難點

因爲前一陣子做項目用NodeJS/express開發了一個測試服務(代碼現已從github刪除,無非就是一個查詢MySQL的REST/JSON接口的Web服務實現),一些感想: (1)基於NodeJS的Web服務開發實在不要太簡單,其u

原创 Hadoop應用架構-OReilly 2015-讀書筆記

Hadoop Application Architectures-OReilly 2015-ReadingNotes.md 數據建模 p23 HBase基於TTL的舊數據清除(合併到新HFile時跳過)p25 爲了能夠在Hive外部使

原创 Apress-Pro Java Clustering and Scalability(2017)讀書筆記

Apress-Pro Java Clustering and Scalability_ Building Real-Time Apps with Spring, Cassandra, Redis, WebSocket an

原创 Cloud Native Java-OReilly 2017 讀書筆記

Cloud Native Java-OReilly 2017-ReadingNotes.md Basics SaaS的12 Factor: Bootcamp: Introducing Spring Boot and Cloud Fou

原创 Hadoop權威指南(第4版)-OReilly 2016 讀書筆記

Hadoop權威指南(第4版)-OReilly 2016-ReadingNotes.md 初識Hadoop 關於MapReduce mapper和reducercombiner* HDFS p48 Hadoop2: HA,備用nam

原创 MySQL運維內參_ MySQL、Galera、Inception核心原理與最佳實踐 讀書筆記

MySQL運維內參_ MySQL、Galera、Inception核心原理與最佳實踐 點評:看這本書就是想知道MySQL用於互聯網行業大併發場景下現在是怎麼處理的。講解MySQL核心存儲源碼實現原理的部分不細緻,MVCC則未涉及。曾經

原创 Node Cookbook 3rd-Packt Publishing 2017 讀書筆記

Node Cookbook 3rd-Packt Publishing 2017-ReadingNotes.md 調試進程 用DevTools調試Node $ mkdir app $ cd app $ npm init

原创 Cloud Native時代SaaS類Web應用的後端數據庫架構設計:核心概念的簡化:主鍵設計

雲計算時代要求偏業務類的SaaS Web應用做到:可伸縮可擴展、高可用高併發。核心在於數據庫後端架構設計。怎麼做到這一點呢?引入微服務,將原來的單體Web應用拆分爲多個分離的服務(實質就是數據庫存儲層的拆分,分庫分表),以及敏捷/精益的項

原创 Mastering Microservices with Java-Packt Publishing(2016) 讀書筆記

Mastering Microservices with Java-Packt Publishing(2016)-ReadingNotes.md A Solution Approach ignite v. 點燃 ~ your mind

原创 Practical Microservices-Packt Publishing(2017) 讀書筆記

Practical Microservices-Packt Publishing(2017)-ReadingNotes.md 微服務架構介紹 boot2docker依賴於VirtualBox?那麼docker的圖形化界面

原创 DHT裏面Hash算法的設計,及其如何抵禦極端情況下的DoS攻擊?

DHT裏,要存儲的數據對象,根據其id(或者其內容本身),經過hash運算,映射到一個32位或者64位整數的區間範圍。譬如可以使用密碼學hash,如MD5、SHA1、乃至SHA256。Cassandra 3.0裏使用的是Murmur3(非

原创 用NodeJS/express-4.0實現的靜態文件服務器(serveStatic插件直接支持HTTP Range請求,因此可用來做mp4流媒體服務器)

var express = require('express'), serveIndex = require('serve-index'), //只能列表目錄,不能下載文件? serveStatic = r

原创 MySQL管理之道_ 性能調優、高可用與監控(第2版)-by 賀春暢-讀書筆記

MySQL管理之道_ 性能調優、高可用與監控(第2版)-讀書筆記 MariaDB架構與歷史 MariaDB:用Percona XtraDB代替InnoDB(前者是後者的增強版,完全兼容後者) 新功能:多源複製、基於表的並

原创 基本算法:生成元素數組的所有排列(permute)

static void permute(int[] A, int k){ //[0, k-1] is prefix, [k, n) is for recursive call; if(k==A.length