浅谈websocket和c# socket,新手篇

周末放假没带电脑所以今天分享质量不高,手机没有那些样式看起来可能没有那么方便,今天主要分享一下websocket。

(赶紧拿小本本记下来)

websocket 你发现是一个组合单词web socket,web我们都知道,所以我们先说下socket,什么是socket它在c#里面是什么?

他在c#里面用于网络编程比如实时聊天,他的原理是什么呢?在我们没有用这种技术的时候我们想要实现不停的问服务器要资源我们使用的是轮询,什么是轮询呢?

(脑阔痛)

轮询 轮询就是循环的访问访问服务器,就是写一个循环发送我的请求,如果请求完成了,不管有没有数据给我,我再次发送,发送完了我又发送,这种模式就是轮询。

后面出现一种技术叫socket,但是在窗体程序很久很久以前就出来了,但是现在我们说的是web socket那么也是同样的道理,我们以前通过ajax来使用轮询进行访问请求数据库给我们数据,到现在使用web socket技术,我们只需要发送一次请求,告诉服务器"你好,我们这里一直要用数据,你有的话就给我们吧,没有的话你有了再发给我吧"这就是websocket的请求方式。 以前的请求方式比如[轮询]你不懂得话没关系我给你打个比方

{

客户端“你好,给我来鱼丸粗面”

服务器“没有鱼丸”

客户端“那给我来一碗鱼丸汤”

服务器“没有鱼丸,鱼丸还在买”

客户端“那给我来一碗粗面”

服务器现在有粗面“你好,您的粗面”

客户端“老板来点鱼丸”

服务器“没有,滚,下一位”

客户端“来点鱼丸”

服务器“没有鱼丸啊”

客户端“来点鱼丸”

服务器刚买到我鱼丸“哪切嘛,吃嘛鱼丸,胀死你”

客户端“老板来点。。。”

服务器“。。。”

}这种方式就是轮询,客户端不停的发送请求给服务器,请求服务器响应。

轮询 缺点:占用服务器资源如果人多服务器容易宕机。

socket:这种方式他就解决了这个问题,当服务器有数据直接推给客户端,这种场景就是qq或者是通知,有消息直接推送,不再让客户端一直请求,但是需要客户端发起请求命令才行。

(当时我大概写了这么多????) 好的,今天的分享就到这里,祝你周末愉快,用你的小手点个赞 回复吧????

(纯手打,就很烦)