青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Fork me on GitHub
隨筆 - 215  文章 - 13  trackbacks - 0
<2017年2月>
2930311234
567891011
12131415161718
19202122232425
2627281234
567891011


專注即時通訊及網(wǎng)游服務(wù)端編程
------------------------------------
Openresty 官方模塊
Openresty 標(biāo)準(zhǔn)模塊(Opm)
Openresty 三方模塊
------------------------------------
本博收藏大部分文章為轉(zhuǎn)載,并在文章開頭給出了原文出處,如有再轉(zhuǎn),敬請保留相關(guān)信息,這是大家對原創(chuàng)作者勞動成果的自覺尊重!!如為您帶來不便,請于本博下留言,謝謝配合。

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

相冊

Awesome

Blog

Book

GitHub

Link

搜索

  •  

積分與排名

  • 積分 - 220943
  • 排名 - 117

最新評論

閱讀排行榜

http://www.csdn.net/article/2015-10-26/2826038-Erlang
http://blog.csdn.net/swordfishx82/article/details/45227813

http://blog.csdn.net/swordfishx82/article/details/45241887
從網(wǎng)上下載erlang64位,python2.7安裝到電腦上,然后設(shè)置環(huán)境變量

,然后在網(wǎng)上下載傾國傾城的客戶端和服務(wù)器端,進(jìn)入服務(wù)器端文件夾,點擊startup.bat


修改客戶端連接的配置文件

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
  3. <plist version="1.0">  
  4. <dict>  
  5.     <key>1</key>  
  6.     <dict>  
  7.         <key>idx</key>  
  8.         <string>1</string>  
  9.         <key>name</key>  
  10.         <string>一區(qū)</string>  
  11.         <key>servers</key>  
  12.         <dict>  
  13.             <key>100</key>  
  14.             <dict>  
  15.                 <key>idx</key>  
  16.                 <string>100</string>  
  17.                 <key>name</key>  
  18.                 <string>簡雨測試服</string>  
  19.                 <key>ip</key>  
  20.                 <string>127.0.0.1</string>  
  21.             </dict>  
  22.             <key>300</key>  
  23.             <dict>  
  24.                 <key>idx</key>  
  25.                 <string>300</string>  
  26.                 <key>name</key>  
  27.                 <string>測試服1</string>  
  28.                 <key>ip</key>  
  29.                 <string>127.0.0.1</string>  
  30.             </dict>  
  31.             <key>400</key>  
  32.             <dict>  
  33.                 <key>idx</key>  
  34.                 <string>400</string>  
  35.                 <key>name</key>  
  36.                 <string>測試服2</string>  
  37.                 <key>ip</key>  
  38.                 <string>127.0.0.1</string>  
  39.             </dict>  
  40.         </dict>  
  41.     </dict>  
  42.     <key>2</key>  
  43.     <dict>  
  44.         <key>idx</key>  
  45.         <string>2</string>  
  46.         <key>name</key>  
  47.         <string>二區(qū)</string>  
  48.         <key>servers</key>  
  49.         <dict>  
  50.             <key>200</key>  
  51.             <dict>  
  52.                 <key>idx</key>  
  53.                 <string>200</string>  
  54.                 <key>name</key>  
  55.                 <string>9秒測試服</string>  
  56.                 <key>ip</key>  
  57.                 <string>127.0.0.1</string>  
  58.             </dict>  
  59.             <key>500</key>  
  60.             <dict>  
  61.                 <key>idx</key>  
  62.                 <string>500</string>  
  63.                 <key>name</key>  
  64.                 <string>測試服3</string>  
  65.                 <key>ip</key>  
  66.                 <string>127.0.0.1</string>  
  67.             </dict>  
  68.         </dict>  
  69.     </dict>  
  70. </dict>  
  71. </plist>  
有vs2010打開客戶端,

跟正常的cocos2dx編譯方法沒有區(qū)別,






這個游戲的架設(shè)方法跟kbe架設(shè)難度沒有可比性,不過erlang在國內(nèi)受歡迎程度可不是一般的,自從神仙道橫行國內(nèi)頁游市場之后,越來越多的公司注意erlang服務(wù)器了,傾國傾城這個游戲雖然客戶端是純c++,不能像lua一樣進(jìn)行熱更新,不過貴在寫的很完整,值得一看,另外服務(wù)器端是一個完整網(wǎng)友的腳本系統(tǒng),對學(xué)習(xí)erlang有相當(dāng)大的幫助,好了就到這。

這里先占個位置,昨晚的文章不知怎么有更出來了,所以在后面補(bǔ)一段erlang的基本語法吧

一、Erlang語法:變量、模式匹配
--------------------------------------
1.elr命令:工具欄toolbar:start().
2.%。。。注釋
3.變量首字母大寫,單一賦值
4.模式匹配
5.原子:hello, 'an atom with'
6.元組tuple:元組嵌套{person,{a,1},{b,2}}
             提取元組字段值Point = {point, 10, 45}  {point, X, Y} = Point
7.列表list:  定義列表ThingsToBuy1 = [{oranges,4}, {newspaper,1}|{ThingsToBuy}]
             提取元素[Buy1|ThingsToBuy2] = ThingsToBuy1.
8.字符串:"hello"
9.q()退出
10.f()釋放變量


二、Erlang語法:函數(shù)(面向函數(shù)編程:函數(shù)可以作為參數(shù),也可以作為返回值,可以使用列表解析、斷言、case/if、二進(jìn)制、比特位、進(jìn)制、ASCII碼)
--------------------------------------
1.函數(shù)
  編譯:c(geometry)
  運(yùn)行:geometry:area({rectangle, 10, 5}).
2.匿名函數(shù):Double = fun(X) -> 2*X end.
         Double(2).
  Hypot = fun(X, Y) -> math:sqrt(X*X+Y*Y) end.
  TempConvert = fun({c,C}) -> {f, 32+C*9/5};
                   ({f,F}) -> {c, (F-32)*5/9}
     end.
3.fun作為函數(shù)參數(shù)
  映射:lists:map(Double, [1,2,3,4]).
      返回[2,4,6,8].
  過濾:lists:filter(Even, [1,2,3,4]).
      Even = fun(X) -> (X rem 2) =:= 0 end.
4.返回fun的函數(shù)
  Fruit = [apple,pear,orange].
  MakeTest = fun(L) -> (fun(X) -> lists:member(X,L) end) end.
  IsFruit = MakeTest(Fruit).
  即:IsFruit = fun(X) -> lists:member(X,[apple,pear,orange]) end.
5.循環(huán)
  for(Max,Max,F) -> [F(Max)];
  for(I,Max,F)   -> [F(I)|for(I+1,Max,F)]
6.列表解析
  [2*X || X <- L].
  定義:Buy = [{oranges,4},{newspaper,1},{apples,10},{pears,6},{milk,3}].
  乘積:[shop:cost(A)*B || {A,B} <- Buy]
  求和:libs:sum([shop:cost(A)*B || {A,B} <- Buy]).
  (1)快速排序:L=[12,6,2,13,2,8,9,10]. qsort(L).
  (2)畢達(dá)哥拉斯三元組:libs:pythag(16).
  (3)變位詞:libs:perms("123").
            ["123","132","213","231","312","321"]
7.算術(shù)表達(dá)式
8.斷言:
  max(X,Y) when X > Y -> X;
  max(X,Y) -> Y.
  斷言函數(shù):
  f(X,Y) when is_integer(X), X > Y, Y < 6 -> X;
9.記錄:record
10.case表達(dá)式:
  filter(P, [P|T]) ->
      case P(H) of
          true -> [H|filter(P,T}];
   false ->filter(P,T)
       end;
  filter(P, []) -> [].
11.if表達(dá)式:
12.內(nèi)建函數(shù)BIF
  元組轉(zhuǎn)換為列表:tuple_to_list({12,cat,"Hello"}).
  系統(tǒng)時間:time()
13.二進(jìn)制數(shù)據(jù):<<5,10,20>>,<<"hello">>
  操縱:list_to_binary()
        term_to_binary()
 binary_to_term()
 size()
14.比特語法:<>
  file:read_file("")
15.動態(tài)調(diào)用:apply(libs, sum, [1,2,3,4]).
16.模塊定義:-module(modname).
  引入:-import(modname, [fun/1]). 可以不寫模塊名直接引用函數(shù)名
  導(dǎo)出:-export([name1/1, name2/2]).
  編譯屬性:-compile(options).
  模塊版本:-vsn(Version).
  用戶定義屬性:-SomeTag(Value).
  輸出屬性:attr:module_info().
            attr:module_info(attributes).
  引用函數(shù):fun Mod:RemoteFunc/Arity
  包含文件:-include(Filename).
           -include_lib(Name).
  列表操作符:[1,2,3]++[4,5,6]
              [1,2,3]--[2,3]
  進(jìn)制:K#123
  $語法:$C 表示ASCII
  字典:erase(), put(x, 20),get(x), erase(x)
  短路表達(dá)式:Epr1 orelse Epr2.  Epr1 andalse Epr2.


三、Erlang語法:編譯運(yùn)行
--------------------------------------
1.退出:halt().導(dǎo)致數(shù)據(jù)庫要恢復(fù)  q().安全退出,等價于init:stop().
2.取得加載路徑:code:get_path().
  取得主目錄:init:get_argument(home).
3.外部運(yùn)行:D:/erl>erl.exe -noshell -s hello start -s init stop
4.幫助:help().


四、Erlang語法:并發(fā)(進(jìn)程類似于人:通過消息進(jìn)行溝通,也可以廣播;沒有共享內(nèi)存,因此不需要鎖;某一個死掉,會通知鏈接進(jìn)程)
--------------------------------------
1.創(chuàng)建進(jìn)程:Pid = spawn(Fun)
  spawn(Mod, FuncName, Args).
2.發(fā)送消息:Pid!Message
  群發(fā)消息:Pid1!Pid2!Pid3...!Pidn!Message
  接收消息:receive ... end.
  例如:Pid = spawn(fun area_server0:loop/0).
        Pid!{rectangle, 6, 10}.
3.自身ID:self().
  Pid!{self(), Message}.
  例如:Pid = spawn(fun area_server1:loop/0).
       area_server1:rpc(Pid, {rectangle, 6, 10}).
4.設(shè)置進(jìn)程數(shù):D:/erl>erl +P 500000
  測試啟動時間:process:max(400000).
5.注冊進(jìn)程:register(AnAtom, Pid).  注冊進(jìn)程別名
            unregister(AnAtom).   溢出注冊進(jìn)程
     whereis(AnAtom) -> Pid | undefined 判斷是否注冊
     registered() -> [AnAtom::atom()] 取得所有注冊進(jìn)程
  例如注冊時鐘:clock:start(5000, fun() -> io:format("TICK ~p~n", [erlang:now()]) end).
      停止時鐘:clock:stop().
6.并發(fā)錯誤:鏈接進(jìn)程


五、Erlang語法:分布式
--------------------------------------
1.單節(jié)點測試
啟動服務(wù)器:kvs.start().
存儲: kvs:store({location, joe}, "Stockholm").
 kvs:store(weather, raining).
查找: kvs:lookup(weather).
 kvs:lookup({location, joe}).
2.雙節(jié)點測試
啟動服務(wù)器節(jié)點:
 D:/erl>erl -sname gandalf
 Eshell V5.7  (abort with ^G)
 (gandalf@zhongbingliu)1> kvs:start().
 true
 (gandalf@zhongbingliu)2>

調(diào)用者節(jié)點:
 D:/erl>erl -sname bilbo
 Eshell V5.7  (abort with ^G)
 (bilbo@zhongbingliu)1> rpc:call(gandalf@zhongbingliu, kvs, store, [weather, fine]).
 true
 (bilbo@zhongbingliu)2> rpc:call(gandalf@zhongbingliu, kvs, lookup, [weather]).
 {ok,fine}
3.客戶機(jī)和服務(wù)器位于同一局域網(wǎng)的不同機(jī)器上
4.客戶機(jī)和服務(wù)器位于因特網(wǎng)的不同機(jī)器上:確保4396端口通信正常,epmd會使用這個端口


六、Erlang語法:文件
--------------------------------------
1.讀取文件:file:consult("data1.data").
2.讀取一項:{ok, S} = file:open("data1.data", read). //打開
    io:read(S, ''). //讀取一項
    io:get_line(S, ''). //讀取一行
    file:close(S). //關(guān)閉
3.查找代碼庫位置:code:which(file).
    d:/erl5.7/lib/kernel-2.13/ebin/file.beam
4.讀取二進(jìn)制數(shù)據(jù):
    file:read_file("data1.data"). //全部讀到內(nèi)存
    {ok, S} = file:open("data1.data", [read,binary,raw]). //打開
    file:pread(S, 22, 46). //隨機(jī)讀取
5.查找文件:lib_find:files
6.寫入文件:{ok, S} = file:open("data2.data", write). //打開
    io:format(S, "~s~n", ["Hello readers"]). //寫入
    file:close(S). //關(guān)閉
7.隨機(jī)寫入:
    {ok, S} = file:open("data3.data", [raw,write,binary]). //打開
    file:pwrite(S, 10, <<"new">>). //隨機(jī)寫入
8.目錄操作:file:list_dir("/"). //文件列表
     file:make_dir("abc"). //創(chuàng)建目錄
     file:del_dir("abc"). //刪除目錄
9.文件屬性:file:read_file_info("data1.data").
10.文件操作:file:copy("data1,data", "/"). //拷貝
            file:delete("data1"). //刪除


七、Erlang語法:套接字
--------------------------------------
1.Socket連接www:socket:nano_get_url().
2.啟動服務(wù)器:server:start_nano_server().
3.編寫客戶端:client:nano_client_eval("list_to_tuple([2+3*4,10+20])").
主動型:非阻塞 服務(wù)器接收消息的速度必須快于客戶端發(fā)送的速度,否則服務(wù)器會因為消息緩沖區(qū)塞滿被消息淹沒
被動型:阻塞
混合型:半阻塞


八、Erlang語法:數(shù)據(jù)庫
--------------------------------------
1.ETS是內(nèi)存存儲,速度快
2.DETS是磁盤存儲,可備份
3.創(chuàng)建表:ets:new
 dets:open_file
4.插入:insert(table, X)
5.查找:lookup(table, Key)
6.釋放:dets:close(tableid) etd:delete(tableid)
7.Mnesia數(shù)據(jù)庫:
  創(chuàng)建表:-record...
  選取所有數(shù)據(jù):do(qlc())...
  選取部分列:
  按條件選取:
  關(guān)連查詢:
  增加數(shù)據(jù):mnesia:write()
  刪除數(shù)據(jù):mnesia:delete()
  事務(wù)管理:mnesia:transaction(F)
  取消事務(wù):mnesia:abort()
  啟動表查看器:tv:start().


九、Erlang語法:OTP
--------------------------------------
1.支持事務(wù):使用異常捕捉進(jìn)行回滾
2.支持熱代碼替換
3.錯誤日志
4.警報管理
5.應(yīng)用程序監(jiān)視器:appmon:start().


十、Erlang語法:JInterface
--------------------------------------
OptNode 節(jié)點,監(jiān)聽端口 能夠啟動多個服務(wù)節(jié)點,如gurka@sallad.com
Epmd 
OptMbox 默認(rèn)啟動一個郵箱 收發(fā)郵件
Link 監(jiān)控遠(yuǎn)程是否斷掉

posted on 2017-01-10 22:55 思月行云 閱讀(436) 評論(0)  編輯 收藏 引用 所屬分類: Erlang
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲视频在线观看免费| 国产综合亚洲精品一区二| 夜夜嗨av一区二区三区网站四季av| 老牛嫩草一区二区三区日本 | 日韩亚洲欧美一区二区三区| 奶水喷射视频一区| 亚洲国产精品国自产拍av秋霞| 欧美一区二区三区免费看| 香蕉久久夜色精品国产使用方法| 欧美综合二区| 免费亚洲电影| 99re这里只有精品6| 亚洲一区免费网站| 久久蜜桃资源一区二区老牛| 午夜精品久久久久久久男人的天堂| 99精品热视频| 亚洲欧美国内爽妇网| 久久久久天天天天| 欧美色欧美亚洲高清在线视频| 国产精品久久久久一区二区三区共| 国产麻豆一精品一av一免费| 在线观看国产精品网站| 一区二区三区高清在线观看| 欧美专区福利在线| 国产日韩精品一区二区三区在线| 亚洲欧美在线高清| 久久久水蜜桃| 亚洲精品乱码久久久久久黑人 | 国产一区二区三区在线观看精品| 国产亚洲精品资源在线26u| 在线免费观看欧美| 亚洲曰本av电影| 欧美成人黄色小视频| 一区二区不卡在线视频 午夜欧美不卡' | 一区二区三区精品国产| 久久黄色网页| 欧美午夜精品久久久久久久| 在线观看久久av| 欧美一站二站| 99在线热播精品免费| 麻豆久久久9性大片| 国产色视频一区| 亚洲特级毛片| 亚洲精品裸体| 麻豆精品视频在线观看| 国产毛片一区二区| 亚洲制服av| 亚洲欧洲精品天堂一级| 久久成人一区二区| 国产精品揄拍一区二区| 在线亚洲伦理| 亚洲欧洲在线看| 久久一区二区三区av| 国产区精品在线观看| 怡红院精品视频| 亚洲天堂久久| 亚洲乱码国产乱码精品精可以看 | 欧美一级精品大片| 国产精品亚洲综合天堂夜夜| 99亚洲伊人久久精品影院红桃| 久久全国免费视频| 欧美影院精品一区| 狠狠干狠狠久久| 久久国产精品一区二区三区四区| 在线一区观看| 国产精品三区www17con| 欧美一级午夜免费电影| 亚洲一级二级在线| 国产亚洲成精品久久| 欧美在线观看你懂的| 亚洲中字黄色| 国产一区二区欧美| 免费久久99精品国产自| 免费观看成人| 一区二区激情视频| 在线性视频日韩欧美| 欧美女同在线视频| 欧美在线免费一级片| 在线视频日本亚洲性| 国产精品乱码久久久久久| 性做久久久久久| 亚洲欧美日韩综合| 亚洲国产精品v| 亚洲第一偷拍| 亚洲国产精品久久久久久女王| 久久国产精品一区二区三区四区| 国产亚洲精品久久飘花| 久久资源av| 欧美精品一区二区三| 西瓜成人精品人成网站| 久久久精品2019中文字幕神马| 亚洲福利视频二区| 亚洲午夜激情在线| 精品盗摄一区二区三区| 亚洲精品国产系列| 国产日韩欧美制服另类| 91久久国产综合久久91精品网站| 欧美视频中文字幕在线| 久久亚洲电影| 欧美日韩一区二区三区在线视频| 性做久久久久久免费观看欧美| 免费欧美在线视频| 欧美伊人久久久久久久久影院 | 欧美电影资源| 亚洲欧美日韩天堂一区二区| 欧美怡红院视频| 一区二区欧美视频| 久久精品一区| 亚洲综合99| 免费av成人在线| 欧美在线网址| 欧美午夜电影在线| 亚洲国产清纯| 一区二区三区在线不卡| 亚洲小少妇裸体bbw| 亚洲免费成人av电影| 久久精品国产亚洲a| 亚洲综合不卡| 欧美精品在线观看播放| 欧美成人午夜激情在线| 国产在线一区二区三区四区| 日韩西西人体444www| 亚洲国产专区| 久久久久久久久蜜桃| 亚洲欧美日本精品| 欧美日韩中文字幕精品| 亚洲国产欧美日韩| 亚洲国产老妈| 欧美在线观看你懂的| 午夜精品理论片| 欧美日韩高清在线播放| 亚洲第一福利社区| 亚洲国产视频一区二区| 久久精品视频在线| 久久精品99国产精品日本| 国产精品日韩欧美一区二区三区| 亚洲日本乱码在线观看| 日韩视频免费观看高清完整版| 欧美国产日本在线| 亚洲精品五月天| 麻豆免费精品视频| 美玉足脚交一区二区三区图片| 国产精品尤物福利片在线观看| 一区二区日韩| 校园激情久久| 国产欧美精品| 欧美自拍偷拍| 免费亚洲一区二区| 亚洲国产精品久久久久婷婷老年| 欧美一区二区三区视频免费| 久久激情综合网| 精品成人在线| 欧美黑人一区二区三区| 亚洲福利在线视频| 亚洲天堂网站在线观看视频| 欧美视频网站| 午夜精品久久久99热福利| 久久久精品2019中文字幕神马| 国产视频亚洲精品| 久久噜噜噜精品国产亚洲综合 | 久久理论片午夜琪琪电影网| 国产一区二区三区久久久| 久久精品综合网| 亚洲电影在线免费观看| 99视频一区| 国产免费一区二区三区香蕉精| 欧美一级视频一区二区| 猛男gaygay欧美视频| 99re8这里有精品热视频免费| 欧美色欧美亚洲另类二区| 欧美中文在线免费| 亚洲黄色影片| 久久久久一区二区三区| 日韩午夜视频在线观看| 国产伦精品一区二区三区视频黑人| 欧美伊久线香蕉线新在线| 欧美高清视频一二三区| 亚洲一区国产| 亚洲二区在线观看| 国产精品美女久久久免费| 老**午夜毛片一区二区三区| 亚洲美女视频在线观看| 久久久久久久久久久成人| 日韩视频亚洲视频| 黄色成人免费观看| 欧美日韩一级片在线观看| 久久精品视频在线免费观看| 99精品国产热久久91蜜凸| 美女视频黄 久久| 午夜精品福利在线| 亚洲桃色在线一区| 亚洲狠狠婷婷| 国户精品久久久久久久久久久不卡| 欧美激情综合五月色丁香| 久久不射2019中文字幕| 亚洲一区二区三区涩| 亚洲国产视频一区| 欧美aⅴ99久久黑人专区| 欧美在线日韩精品| 久久久久久亚洲综合影院红桃|