cao死我好湿好紧好爽动态视屏|精选久久久久久久久久|中文无码精品一区二区三区四季|AAA国语精品刺激对白视频|

當前位置:首頁 > 軟件開放 > 正文內容

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

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

前言

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

官方組件介紹

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

WebSocket介紹

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

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

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

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

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

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

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

項目源碼截圖

設計思路

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

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

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

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

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

WebApi負責所有業(yè)務

ImServer 服務端

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è)務端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 前,應該先請求 WebApi 獲得授權過的地址(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 -

點擊標題可跳轉

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

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

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

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

推薦關注「DotNet」,提升.Net技能

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

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

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

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

分享給朋友:

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

網(wǎng)站建設與管理(網(wǎng)站建設與管理試卷及答案)

網(wǎng)站建設與管理(網(wǎng)站建設與管理試卷及答案)

本篇文章給大家談談網(wǎng)站建設與管理,以及網(wǎng)站建設與管理試卷及答案對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、網(wǎng)站建設與管理出來可以做什么樣的工作 2、網(wǎng)站建設與管理主要學什么 3、網(wǎng)站建設與管理 4、網(wǎng)站建設與管理專業(yè)描述 網(wǎng)站建設與管理出來可以做什么樣的...

軟件開發(fā)者(怎么找到軟件開發(fā)者)

軟件開發(fā)者(怎么找到軟件開發(fā)者)

今天給各位分享軟件開發(fā)者的知識,其中也會對怎么找到軟件開發(fā)者進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!本文目錄一覽: 1、計算機軟件開發(fā)者可以是 2、軟件開發(fā)容易學嗎? 3、什么是軟件開發(fā)者? 計算機軟件開發(fā)者可以是 計算機軟件開發(fā)者可以是計算機軟件著作權人。計...

個人介紹ppt模板免費下載素材(個人介紹PPT內容)

個人介紹ppt模板免費下載素材(個人介紹PPT內容)

本篇文章給大家談談個人介紹ppt模板免費下載素材,以及個人介紹PPT內容對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、求精美簡歷 ppt模板 2、哪個網(wǎng)站能不花錢下載PPT模板呢 3、哪個網(wǎng)站可以免費下載到精美的PPT模板 4、ppt模板免費下載 5、下...

網(wǎng)頁源碼獲取什么意思(網(wǎng)站源碼是什么東西)

網(wǎng)頁源碼獲取什么意思(網(wǎng)站源碼是什么東西)

本篇文章給大家談談網(wǎng)頁源碼獲取什么意思,以及網(wǎng)站源碼是什么東西對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、網(wǎng)頁里源碼是什么 2、什么是網(wǎng)頁源代碼? 3、網(wǎng)頁制作源代碼是什么意思? 4、網(wǎng)頁源代碼指什么 5、網(wǎng)站的源代碼是什么意思? 6、網(wǎng)頁源代碼是...

春節(jié)祝福代碼怎樣制作(元宵祝福代碼)

春節(jié)祝福代碼怎樣制作(元宵祝福代碼)

本篇文章給大家談談春節(jié)祝福代碼怎樣制作,以及元宵祝福代碼對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、父親節(jié)祝福代碼 2、如何編寫新春祝福 3、我是一個小孩,老師說要自編兩則春節(jié)祝福短信。請問春節(jié)祝福短信該怎樣編?順便給個例子,要自己編。 4、父親節(jié)微信祝福...

投資10元一小時賺500軟件下載(投資10元一小時賺500的方法)

投資10元一小時賺500軟件下載(投資10元一小時賺500的方法)

本篇文章給大家談談投資10元一小時賺500軟件下載,以及投資10元一小時賺500的方法對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、投資1000元3天賺500;要下載什么軟件啊?麻煩告知 2、可以賺錢的APP有哪些? 3、最好的賺錢軟件是什么? 4、投資10...