日韩精品亚洲精品中文字幕乱伦AV|曰韩区二区三区日韩中文字幕五码|ady99久久人人看人人摸人人|动漫一区二区黄99精品视频在线|AV片在线观看亚洲中文国产精品|伦乱在线VA欧美性爱一二区|亚洲无码mv91热色视频|激情六月综合欧美精品中文

當(dāng)前位置:首頁 > 軟件開放 > 正文內(nèi)容

網(wǎng)頁在線聊天代碼(在線網(wǎng)頁聊天工具)

軟件開放6個月前 (07-14)499

前言

給大家推薦一個.NET Core WebSocket實現(xiàn)簡易、高性能、集群即時通訊組件:FreeIM。

官方組件介紹

FreeIM 使用 WebSocket 協(xié)議實現(xiàn)簡易、高性能(單機支持5萬+連接)、集群即時通訊組件,支持點對點通訊、群聊通訊、上線下線事件消息等眾多實用性功能。

WebSocket介紹

網(wǎng)頁在線聊天代碼(在線網(wǎng)頁聊天工具)

WebSocket是一種在Web應(yīng)用程序和服務(wù)器之間建立持久連接的通信協(xié)議。它通過在客戶端和服務(wù)器之間創(chuàng)建一個全雙工通信通道,實現(xiàn)了服務(wù)器主動向客戶端推送數(shù)據(jù)的功能。相比起傳統(tǒng)的HTTP請求-響應(yīng)模式,WebSocket具有以下幾個優(yōu)勢:

實時性:WebSocket提供了實時的雙向通信,服務(wù)器可以主動推送數(shù)據(jù)給客戶端,而不需要客戶端發(fā)起請求。這使得實時通信應(yīng)用如聊天室、股票行情等變得更加簡單和高效。

減少數(shù)據(jù)傳輸量:WebSocket在建立連接時需要進行握手,之后數(shù)據(jù)幀的開銷較小,只需要發(fā)送少量的控制信息,因此相比于HTTP請求的頭部信息,可以減少數(shù)據(jù)傳輸?shù)拈_銷。

低延遲:由于WebSocket是一個長連接,避免了每次請求都要建立TCP連接的開銷,從而降低了延遲。

節(jié)省服務(wù)器資源:WebSocket使用一個TCP連接進行全雙工通信,相比于傳統(tǒng)的HTTP請求,避免了頻繁的連接和關(guān)閉操作,減少了服務(wù)器的負擔(dān)。

支持跨域通信:WebSocket允許在瀏覽器中通過Java與不同域名下的服務(wù)器進行通信,實現(xiàn)了跨域通信的功能。

項目源碼截圖

設(shè)計思路

終端(如瀏覽器/小程序/iOS/android) 統(tǒng)一使用 websocket 連接 ImServer;ImServer(支持集群)根據(jù) clientId 分區(qū)管理 websocket 連接;WebApi使用 ImHelper 調(diào)用方法(如:SendMessage、群聊相關(guān)方法),將數(shù)據(jù)推至 Redis chan;ImServer訂閱 Redis chan,收到消息后向 終端推送消息;

緩解了并發(fā)推送消息過多的問題;

解決了連接數(shù)過多的問題;

解耦了業(yè)務(wù)和通訊,架構(gòu)更加清淅;

ImServer充當(dāng)消息轉(zhuǎn)發(fā),連接維護,代碼萬年不變、且不需要重啟維護

WebApi負責(zé)所有業(yè)務(wù)

ImServer 服務(wù)端

publicvoidConfigure(IApplicationBuilder app)

展開全文

{

app.UseFreeImServer( newImServerOptions

{

Redis = newFreeRedis.RedisClient( "127.0.0.1:6379,poolsize=5"),

Servers = new[] { "127.0.0.1:6001"}, //集群配置

Server = "127.0.0.1:6001"

});

}

WebApi 業(yè)務(wù)端publicvoidConfigure(IApplicationBuilder app)

{

//...

ImHelper.Initialization( newImClientOptions

{

Redis = newFreeRedis.RedisClient( "127.0.0.1:6379,poolsize=5"),

Servers = new[] { "127.0.0.1:6001"}

});

ImHelper.EventBus(

t = Console.WriteLine(t.clientId + "上線了"),

t = Console.WriteLine(t.clientId + "下線了"));

}

Html5 終端

終端連接 websocket 前,應(yīng)該先請求 WebApi 獲得授權(quán)過的地址(ImHelper.PrevConnectServer),偽代碼:

ajax( '/prev-connect-imserver', function(data) {

varurl = data; //此時的值:ws://127.0.0.1:6001/ws?token=xxxxx

varsock = newWebSocket(url);

sock.onmessage = function (e) {

//...

};

})

項目源碼

https://github.com/2881099/FreeIM

- EOF -

點擊標題可跳轉(zhuǎn)

C# 解壓縮開源庫,輕松完成解壓縮文件

.NET 7+Vue 前后端分離框架Admin.Core

C# 中如何使用BCrypt 提高用戶密碼安全性

看完本文有收獲?請轉(zhuǎn)發(fā)分享給更多人

推薦關(guān)注「DotNet」,提升.Net技能

點贊和在看就是最大的支持??

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。

本文鏈接:http://www.atlasseeker.com/post/118327.html

“網(wǎng)頁在線聊天代碼(在線網(wǎng)頁聊天工具)” 的相關(guān)文章

無錫軟件開發(fā)(無錫軟件開發(fā)工資)

無錫軟件開發(fā)(無錫軟件開發(fā)工資)

本篇文章給大家談?wù)劅o錫軟件開發(fā),以及無錫軟件開發(fā)工資對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、無錫做軟件開發(fā)(應(yīng)屆畢業(yè)生生,工資一般多少) 2、無錫永中軟件是外包嗎 3、無錫沖馳軟件科技有限公司怎么樣? 無錫做軟件開發(fā)(應(yīng)屆畢業(yè)生生,工資一般多少) 也就是...

軟件開發(fā)項目管理流程(軟件開發(fā)過程與項目管理)

軟件開發(fā)項目管理流程(軟件開發(fā)過程與項目管理)

本篇文章給大家談?wù)勡浖_發(fā)項目管理流程,以及軟件開發(fā)過程與項目管理對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、企業(yè)軟件開發(fā)流程是什么 2、軟件項目的管理流程 3、軟件開發(fā)的基本流程包括哪些 4、軟件開發(fā)過程一般有幾個階段 5、軟件項目管理流程是什么?...

pycharm圣誕樹源碼教程(圣誕樹代碼Python)

pycharm圣誕樹源碼教程(圣誕樹代碼Python)

今天給各位分享pycharm圣誕樹源碼教程的知識,其中也會對圣誕樹代碼Python進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、pycharm中的圣誕樹怎么加動態(tài)新圖片 2、圣誕樹python用的是什么曲線 3、如何將pycharm編寫的源代碼文件...

免費開掛的軟件pubgmobile(免費開掛的軟件下載和平精英)

免費開掛的軟件pubgmobile(免費開掛的軟件下載和平精英)

今天給各位分享免費開掛的軟件pubgmobile的知識,其中也會對免費開掛的軟件下載和平精英進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、pubgmobile輔助哪里買 2、和平精英真正可以開掛的軟件 3、pubg國際服怎樣開掛 pubgmobi...

源碼編輯器制作大魚吃小魚(大魚吃小魚游戲制作)

源碼編輯器制作大魚吃小魚(大魚吃小魚游戲制作)

今天給各位分享源碼編輯器制作大魚吃小魚的知識,其中也會對大魚吃小魚游戲制作進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、是啥意思 2、孢子是一款什么游戲? 3、聯(lián)想 ThinkPad SL410 筆記本電腦 ,傳奇,大魚吃小魚之類的游戲不能全屏。...

怎么看網(wǎng)卡驅(qū)動是否正常(怎樣看網(wǎng)卡驅(qū)動是否正常)

怎么看網(wǎng)卡驅(qū)動是否正常(怎樣看網(wǎng)卡驅(qū)動是否正常)

今天給各位分享怎么看網(wǎng)卡驅(qū)動是否正常的知識,其中也會對怎樣看網(wǎng)卡驅(qū)動是否正常進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、如何檢查網(wǎng)卡及驅(qū)動是否正常工作 2、怎么看有沒有網(wǎng)卡驅(qū)動? 3、檢查網(wǎng)卡驅(qū)動是否正常?從筆記本電腦的哪里看啊?俺看不來幫幫忙!...