最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Erlang中的OTP簡介

 更新時間:2015年03月09日 09:09:02   投稿:junjie  
這篇文章主要介紹了Erlang中的OTP簡介,OTP包含了一組庫和實現(xiàn)方式,可以構(gòu)建大規(guī)模、容錯和分布式的應(yīng)用程序,包含了許多強大的工具,能夠?qū)崿F(xiàn)H248,SNMP等多種協(xié)議,需要的朋友可以參考下

OTP包含了一組庫和實現(xiàn)方式,可以構(gòu)建大規(guī)模、容錯和分布式的應(yīng)用程序,包含了許多強大的工具,能夠?qū)崿F(xiàn)H248,SNMP等多種協(xié)議,核心概念是OTP行為,可以看作一個用回調(diào)函數(shù)作為參數(shù)的應(yīng)用程序框架,類似一個J2EE容器。行為負責解決問題的非函數(shù)部分,回調(diào)函數(shù)負責解決函數(shù)部分。
 
通過gen_server模塊可以實現(xiàn)事物語義和熱代碼交換,

1)      確定回調(diào)模塊名
2)      編寫接口函數(shù)
3)      在回調(diào)模塊里編寫6個必需的回調(diào)函數(shù)

當服務(wù)器崩潰時,需要一種機制來檢測并重啟它,要用到監(jiān)測樹,即創(chuàng)建一個監(jiān)控器來管理服務(wù)器。監(jiān)測樹有兩種:一對一和一對多。

復(fù)制代碼 代碼如下:

$erl –boot start_sasl

會創(chuàng)建一個運行生產(chǎn)系統(tǒng)的環(huán)境,系統(tǒng)架構(gòu)支持庫(SASL,System Administration Support Libriaries)將負責錯誤記錄和過載保護等工作。
 
使用gen_server, gen_supervisor,application等行為,可以構(gòu)建可靠性為99.9999999的系統(tǒng)。
統(tǒng)一化的erlang消息:

1)  抽象了不同線路協(xié)議之間的區(qū)別
2)  Erlang消息無需解析,接收進程不必先解析消息再處理,而http服務(wù)器就必須解析就收到的所有消息
3)  Erlang消息可以包含任意復(fù)雜度的數(shù)據(jù)類型,而http消息必須被序列化成扁平化才能傳輸
4)  Erlang消息可以在不同處理器之間傳送

常見的第三方庫有rebar(https://github.com/basho/rebar)和cowboy(https://githun.com/extend/cowboy)。 Rebar是管理erlang項目的事實標準,用戶可以通過rebar創(chuàng)建新項目、編譯項目、打包它們,以及把它們與其他項目整合在一起,同時集成了github。Cowboy是一個用erlang編寫的高性能web服務(wù)器,是嵌入式web的熱門實現(xiàn)。另外,庫mochiweb2(http://github.com/mochi/mochiweb)的編碼和解碼方法可以實現(xiàn)json字符串和erlang數(shù)據(jù)類型的相互轉(zhuǎn)換。
 
Erlang程序在多核CPU上運行

1)  使用大量進程
2)  避免副作用,例如不使用共享式ETS或DETS
3)  避免順序瓶頸,可以選擇pmap代替map
4)  小消息,大計算
5)  用mapreduce使計算并行化
mapreaduce是一個并行高階函數(shù),定義如下

復(fù)制代碼 代碼如下:

-specmapreduce(F1,F2,Acc0,L) ->Acc
         F1 = fun(Pid,X) ->void
         F2 = fun(Key,[Value],Acc0) ->Acc
         L = [X]
         Acc = X =term()

Mapreduce 是在并行高階函數(shù)(phofs)模塊中定義的。

相關(guān)文章

  • Erlang中的socket編程簡單例子

    Erlang中的socket編程簡單例子

    這篇文章主要介紹了Erlang中的socket編程簡單例子,本文給出了TCP服務(wù)器echo示例、Tcp 的echo客戶端示例、UDP server示例、UDP client 示例,需要的朋友可以參考下
    2015-03-03
  • Erlang中的OTP簡介

    Erlang中的OTP簡介

    這篇文章主要介紹了Erlang中的OTP簡介,OTP包含了一組庫和實現(xiàn)方式,可以構(gòu)建大規(guī)模、容錯和分布式的應(yīng)用程序,包含了許多強大的工具,能夠?qū)崿F(xiàn)H248,SNMP等多種協(xié)議,需要的朋友可以參考下
    2015-03-03
  • 一篇文章帶你從入門到精通:RabbitMQ

    一篇文章帶你從入門到精通:RabbitMQ

    RabbitMQ是實現(xiàn)了高級消息隊列協(xié)議(AMQP)的開源消息代理軟件(亦稱面向消息的中間件)。RabbitMQ服務(wù)器是用Erlang語言編寫的,所有主要的編程語言均有與代理接口通訊的客戶端庫
    2021-06-06
  • Erlang并發(fā)編程介紹

    Erlang并發(fā)編程介紹

    這篇文章主要介紹了Erlang并發(fā)編程介紹,本文講解了進程的創(chuàng)建 、進程間通信、超時設(shè)置以及給出代碼實例,需要的朋友可以參考下
    2015-01-01
  • Erlang初學(xué):Erlang的一些特點和個人理解總結(jié)

    Erlang初學(xué):Erlang的一些特點和個人理解總結(jié)

    這篇文章主要介紹了Erlang初學(xué):Erlang的一些特點和個人理解總結(jié),本文總結(jié)了函數(shù)式編程、一切都是常量、輕量進程、進程端口映射及典型缺點等內(nèi)容,需要的朋友可以參考下
    2015-02-02
  • Erlang中執(zhí)行l(wèi)inux命令的兩種方法

    Erlang中執(zhí)行l(wèi)inux命令的兩種方法

    這篇文章主要介紹了Erlang中執(zhí)行l(wèi)inux命令的兩種方法,本文著重講解了erlang:open_port的使用,需要的朋友可以參考下
    2015-01-01
  • Erlang中遍歷取出某個位置的最大值代碼

    Erlang中遍歷取出某個位置的最大值代碼

    這篇文章主要介紹了Erlang中遍歷取出某個位置的最大值代碼,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
    2015-03-03
  • Erlang中3種生成隨機數(shù)的方法

    Erlang中3種生成隨機數(shù)的方法

    這篇文章主要介紹了Erlang中3種生成隨機數(shù)的方法,它們分別是random:uniform()、erlang:now()、crypto:strong_rand_bytes(N),需要的朋友可以參考下
    2015-01-01
  • Erlang分布式節(jié)點中的注冊進程使用實例

    Erlang分布式節(jié)點中的注冊進程使用實例

    這篇文章主要介紹了Erlang分布式節(jié)點中的注冊進程使用實例,本文直接給出實例代碼,需要的朋友可以參考下
    2015-02-02
  • Erlang中的函數(shù)與流程控制介紹

    Erlang中的函數(shù)與流程控制介紹

    這篇文章主要介紹了Erlang中的函數(shù)與流程控制介紹,本文先是講解了函數(shù)的一些知識,然后講解了case語句和if語句及算術(shù)表達式等內(nèi)容,需要的朋友可以參考下
    2015-01-01

最新評論

合山市| 德格县| 龙泉市| 射洪县| 汉中市| 资兴市| 东阿县| 沾化县| 杨浦区| 渭源县| 乡城县| 偃师市| 林西县| 深州市| 望都县| 襄城县| 饶阳县| 潼南县| 建瓯市| 色达县| 龙陵县| 苍梧县| 镇雄县| 天柱县| 岢岚县| 诸城市| 厦门市| 林甸县| 印江| 清镇市| 大余县| 偏关县| 马龙县| 贵州省| 辉南县| 罗定市| 广丰县| 改则县| 循化| 湛江市| 建平县|