在 OpenStack 中,關於儲存的服務有 Cinder(Block Storage)以及 Swift(Object Storage)
其中 Cinder 在定位上強調的是永久並且快速的儲存空間
同時 Cinder 也在運算單元產生虛擬機器時,負責提供虛擬機器所需要的實體空間。
Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification.
- Bertrand Meyer
Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems.
- Charles Connell
註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。
註2:本部落格的內容授權請參閱部落格底部的授權宣告。
2014年6月24日 星期二
2014年6月16日 星期一
OpenStack Swift 的儲存結構最佳化
當需要使用大型雲端基礎建設時,在國外有蠻多企業選擇 OpenStack 這個開源雲端專案。
OpenStack 裡面又有 Swift(不是 Apple Swift 程式語言 XD)這個 Object Storage 服務,可以提供關於物件儲存的解決方案。
Swift 主要提供的是高可用性且易於擴展的儲存服務~
它的儲存結構中區分為 account、container 以及 object 三個階層
因此想要建構在 OpenStack 之上的應用服務時,也需要稍微思考一下要如何去建構 Swift 的結構。
OpenStack 裡面又有 Swift(不是 Apple Swift 程式語言 XD)這個 Object Storage 服務,可以提供關於物件儲存的解決方案。
Swift 主要提供的是高可用性且易於擴展的儲存服務~
它的儲存結構中區分為 account、container 以及 object 三個階層
因此想要建構在 OpenStack 之上的應用服務時,也需要稍微思考一下要如何去建構 Swift 的結構。
2014年6月13日 星期五
在 ubuntu 安裝 All-In-One 開發版的 OpenStack
想要安裝 OpenStack 時,一般是可以直接看官方文件一步一步安裝
但因為中間設定很多又很繁雜,開發階段可以用 DevStack 來簡化安裝過程。
要使用 DevStack 來安裝,動作很簡單~
以 ubuntu 來說,只需要在一台剛裝好的 ubuntu 上安裝 git,然後用 git 的指令從 github 上把 DevStack 的安裝包下載下來
最後執行 DevStack 上的安裝指令 [1] 就可以一鍵安裝完成。
但因為中間設定很多又很繁雜,開發階段可以用 DevStack 來簡化安裝過程。
要使用 DevStack 來安裝,動作很簡單~
以 ubuntu 來說,只需要在一台剛裝好的 ubuntu 上安裝 git,然後用 git 的指令從 github 上把 DevStack 的安裝包下載下來
最後執行 DevStack 上的安裝指令 [1] 就可以一鍵安裝完成。
2014年6月5日 星期四
system() 執行的路徑帶有空格的解決方法
正常在 C/C++ 呼叫 system() 時,system() 函式在 Windows 上會呼叫 cmd.exe,然後代入 system() 的括號裡給的參數 [1]
不過參數如果帶有空格,例如想執行某個外部的程式,而該程式位在 Program Files 資料夾內時,有可能出現類似這樣的錯誤訊息:
而解決方法就是把有空格的部分用 \" 包起來 [2-3],讓 C 語言執行時看到的字串是這樣:
例如:
參考資料:
1、c++ system()和WinExec()的区别
2、C語言可以呼叫名字有空格的資料夾嗎???
3、C语言 system()函数打开一个程序,路径有空格的问题
不過參數如果帶有空格,例如想執行某個外部的程式,而該程式位在 Program Files 資料夾內時,有可能出現類似這樣的錯誤訊息:
1 |
windows找不到 'C:\Program' 請確定您輸入的正確名稱,並且重試 |
1 |
C:\ "Program Files" \.... |
1 |
system ( "C:\\\"Program Files\"\\Java\\jdk1.7.0_45" ); |
參考資料:
1、c++ system()和WinExec()的区别
2、C語言可以呼叫名字有空格的資料夾嗎???
3、C语言 system()函数打开一个程序,路径有空格的问题
2014年6月4日 星期三
在 eclipse 上開發 JNI:設定 CDT + MinGW 的操作環境
這篇是在記錄使用 eclipse 開發 JNI 時,在 eclipse 上如何開發 C/C++ 的程式(CDT)
以及在 eclipse 上如何建立 JNI 的關連,讓 C/C++ 的 JNI 程式可以透過 eclipse 完成開發。
主要參考對象是 [1-2],其中 [2] 是比較詳細的教學。
以及在 eclipse 上如何建立 JNI 的關連,讓 C/C++ 的 JNI 程式可以透過 eclipse 完成開發。
主要參考對象是 [1-2],其中 [2] 是比較詳細的教學。
訂閱:
文章 (Atom)