簡單介紹 otp (open telecom platform)
學習erlang/otp的理由
otp給了你大量通用的庫程式,用以輕鬆建立具有高度容錯、熱機換碼等功能的高質高效的程式。你至少可以免費享受以下好處:
●通用伺服器、有限狀態機、事件管理器;
●標準化應用程式結構;
●**熱機更換;
●監測樹行為機制,讓你的程序永不停擺。
除此之外,otp也是在erlang之上構建系統平台的標準方式。
大名鼎鼎的erlang應用,如ejabberd, couchdb, 和 mochiweb 等,都是用otp做的。
因此,通過學習otp,你不僅可以掌握搭建erlang系統平台的知識和能力,並且讓你能輕鬆躍入其他開源專案,加以學習,因為它們的總體結構如出一轍。
如果你掌握了erlang的一般語法,就可以開始學習 erlang/otp。
otp的行為機制 gen_*
● gen_server - 用以建立通用伺服器,向多個客戶端提供服務;
● gen_fsm - 用以建立有限狀態機。我用它搭建了 socket 5 **伺服器,它有以下狀態:wait_for_init, wait_for_auth, ready, 以及由不同驗證類別產生的其他中間狀態。有限狀態機還有其他許多用途,這也是我特別喜歡的otp行為機制;
● gen_event - 用以建立事件處理器和發報器。它最常用於執行錯誤日誌(也是發報器),許多物件(終端、檔案等)可與之關聯。
監測器行為機制
應用器行為機制
後面的話題
erlang開發中的簡單程序框架 非OTP
module template record stat,export start 1,stop 0,reload 0,init 1,loop 1 start opts stat parse opts opts pid erlang spawn fun init stat end register m...
基於OTP的AES資料加密
單次有效密碼,即使用一次就失效的密碼,也就說每次使用都是乙個不同的密碼。現在普遍用來作為認證的二次驗證。這種二次驗證的好處是能有效抵禦暴力破解。要使用這種密碼就得有生產此種密碼的生成方式 htop hmac based one time password algorithm 基於計數器生成密碼 to...
erlang專案常見OTP行為模式
最近學習erlang有一些眉目了。在使用otp進行erlang專案開發時,會遇到很多otp的行為模式。而這種行為模式,有一些像面像物件中的設計模式。了解了這些東西,可以更好的使用otp庫進行erlang專案開發。起到了事半功倍的效果。下邊是我最近學習的過程中見到的行為模式,我們從乙個專案的建立開始。...