关于erlang的套接字编程
套接字編程即熟悉的Socket編程,根據傳輸層協議,可分為:UDP協議和TCP協議.下面寫一個簡單的例子,再重新認識下它:
???????? 1.在同一主機節點下啟動兩個Erlang節點.
??????????? a).在第一個Erlang節點下,打開端口為1234的UDP套接字;
??????????? b).在第二個Erlang節點下,打開端口為1235的UDP套接字.
??????? 2.使用第二個節點套接字發送二進制《"Hello"》或者 字符串 "Hello"到在本地主機ip地址127.0.0.1的端口1234上監聽的套接字.
??????? 3.在第一個節點下,使用flush()可以刷新郵箱并讀取.
???????? 4.分別關閉這兩個套接字,從而釋放占用的端口.
測試用例如下:
?
備注:這里是在同一個主機下建立兩個不同的節點通過gen——udp模塊發送消息,分別發送了二進制<<"Hello">>和列表''Hello"兩種形式進行發送的,但二進制形式同樣以列表形式進行發送.
??????? 這里也可以和不同的主機進行消息間的發送,即把本地ip(127.0.0.1)改成目標主機的ip即可.但需要注意的是:沒有防火墻阻止相關端口,以及相關端口沒有被占用.
??(上述測試用例是基于UDP協議,用的是gen_udp模塊) 步驟:首先,打開端口;其次,通過Socket發送(send)消息,消息的格式是以列表形式發送;最后,釋放占用的端口.
?
???? 常看常新,看到了inet模塊,下面來認識下這個函數吧:
inet:getstat /1
avg:? 該數據包的平均大小
cnt:已發送或者接收的數據包數量
dvi:套接字已經發送或者接收字節的數據包大小的偏差
max:最大數據包的大小
oct:套接字已發送的或接收的字節數
?
?
轉載于:https://www.cnblogs.com/unqiang/archive/2013/05/15/3080228.html
總結
以上是生活随笔為你收集整理的关于erlang的套接字编程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: struts2-通配符和动态方法调用
- 下一篇: 程序员编程艺术第十一章:最长公共子序列(