html5+go+websocket不到150行代码,实现一个在线实时聊天的功能

2023-03-07 20:16:00 40 林溪

在了解什么是websocket之前,我们下说一说http,因为HTTP我们太熟了。我们知道,HTTP是一种基于应用层的网络协议,往往都是一个请求,一个相应。websocket呢,也是一种基于应用层的网络协议,但是它不仅可以实现请求-相应这种模式,还可以实现主动推送,即你不请求,我也可以给你发消息通知。它实现了浏览器与服务器之间的双工通信。浏览器和服务器只需要完成一次握手,两者就可以创建一个持续的链接。

查看详细

大佬们都说tcp有黏包的问题,tcp却说:我冤枉!

2023-03-02 19:08:33 47 林溪

tcp是基于数据流的传输,保证数据流的顺序,但是正式由于这种数据流的传输模式,对于tcp来说,自己就像一个传送带,传递的是一个个的快递包裹,源源不断。具体包裹到是什么,到哪里去,就需要接收端和发送端通过定制的协议来编码和解码解决。

查看详细

线上又报502了?不如试试go,实例证明php被go虐成渣

2023-02-17 23:05:12 64 林溪

吞吐量:1122(每秒处理请求数) ,是PHP的10倍左右 90请求时间:42(单位是毫秒),只有PHP的1/400 平均请求时间:20 只有PHP的1/600

查看详细

ChatGPT为什么这么火爆?这是一篇从入门到玩坏的教程

2023-02-09 15:52:26 101 林溪

ChatGPT是由OpenAI开发的一个人工智能聊天机器人程序,于2022年11月推出。该程序使用基于GPT-3.5架构的大型语言模型並通过强化学习进行训练。

查看详细

拆箱phper最适合入门的go框架beego

2022-12-22 19:43:15 157 技术小虫有点萌

beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。

查看详细

zoc license code

2022-10-09 15:00:06 114 技术小虫有点萌

zoc license code 激活码 注册码

查看详细

同步与异步、阻塞与非阻塞傻傻分不清楚?你得从linux中的5种IO模型看起

2022-07-11 16:57:36 347 技术小虫有点萌

5种,即 blocking-IO (阻塞IO),non-blocking-IO (非阻塞IO),IO-multiplexing(IO多路复用),signal driven IO(信号驱动),asynchronous IO(异步IO)

查看详细

基于protobuf和grpc来实现一个入门级别的微服务

2022-03-30 21:05:28 503 技术小虫有点萌

微服务,又称微服务架构,是一种架构风格,它将应用程序构建为以业务领域为模型的小型自治服务集合。就像我们要写一本书,一共有三个章节,为了敏捷开发,我们让三个人 每人负责一个章节去写。那么这么做有什么好处呢?

查看详细

总结一下我见过的web安全漏洞和相关安全防护

2022-03-10 18:40:00 531 技术小虫有点萌

解决csrf攻击的方法 验证 HTTP Referer 字段,比如只有admin.aaa.com的请求才允许访问,但是refer是可以伪造的 一次性token,每次用户提交的时候都带着一个由服务端颁发的token(一次性的),用户提交完毕即销毁token,token可以加入body中发送给服务端,也可以放在header中发送给服务端

查看详细

秒杀要不要用锁?五种方案的代码实践和超卖演示

2022-03-06 17:33:19 698 技术小虫有点萌

使用队列来实现,我把商品放进一个队列里面,谁抢到了就可以继续下单,抢不到就返回 同时我们为了减轻MySQL的压力,我们把请求放入队列(redis rabbitmq均可实现)里面去,通过脚本将订单从队列跑入到数据库中

查看详细