Wesley13 Wesley13
3年前
IM协议设计
IM协议设计在实际开发中,为了及时的通知APP端一些事情,我们会借助第三方平台,进行推送。今天,我们来分析一下推送系统协议。推送系统遇到的问题在设计协议之前,我们考虑一些实际的问题:1.APP没有一个固定的网络地址,只能通过主动连接服务器,建立TCP长链接,来进行推送。2.移动环境下,AP
Wesley13 Wesley13
3年前
JS一个算法题
题目:实现超出整数存储范围的两个大整数想加function(a,b)。注意:参数a和b以及函数返回值都是字符串。目的:考算法,基本逻辑。我实现的基本思路是:①两个数字字符串长度补成一样,用字符串'0’补位,比如a'1111',b'22',b用'0'补位成'0022'.②分3中情况处理,初始值的长度比较,,a的长度大于b的长度,b的长
Wesley13 Wesley13
3年前
MySQL通讯协议(2)数据包
MySQL通讯协议(2)数据包使用MySQL协议发送数据,有两个要求:将数据分成大小为(2^24−1)字节的数据包给每个数据块加上一个包头由于连接的创建和释放都需要耗费资源,所以数据库这种交互频繁,且连接数量不需要特别大的应用场景,一般使用长连接。使用短连接尚能通过RST判断数据是否读完了,而
Stella981 Stella981
3年前
IM开发基础知识补课(四):正确理解HTTP短连接中的Cookie、Session和Token
本文引用了简书作者“骑小猪看流星”技术文章“Cookie、Session、Token那点事儿”的部分内容,感谢原作者。1、前言众所周之,IM是个典型的快速数据流交换系统,当今主流IM系统(尤其移动端IM)的数据流交换方式都是Http短连接TCP或UDP长连接来实现。Http短连接主要用于从服务器读取各种持久化信息:比如用户信息、聊天历史记
Wesley13 Wesley13
3年前
mysql中间件
中间件:一种提供在不同技术、不同的软件之间共享资源的程序,更大化了利用了数据库的性能,可以无限扩展(注:真实环境中并非如此)数据库的中间件:  mysqlproxy(官方版本)性能低,需要lua脚本  atlas性能低,响应时间长  amoeba陈思儒研发一、先搭建一个主从关系的服务器在主、从服务器上安装mysql
Wesley13 Wesley13
3年前
2.python内置数据结构
第一类:数值类型一.数值型包括1.int(整型):python3里数字不管多大永远都是int长整型,且没有大小限制,受限于内存区域的大小类型转换:int(x)返回一个整数2.float(浮点型):有整数部分和小数部分组成。支持十进制和科学计数法表示。只有双精度型类型转换:float(x)返回一个浮点数3.c
Stella981 Stella981
3年前
LiteOS间歇计算技术:IOT终端真正感受“电量自由”
摘要:LiteOS间歇计算为什么能使物联网终端实现长续航?物联网设备、场景复杂多样,小到智能穿戴的耳机,大到大型基建设备,更有我们陌生而又熟悉场景,例如深海探测、森林监控、野生动物跟踪等等能量采集场景。能量采集场景都在户外,甚至可以说是无人区域,当设备放置(部署)后,没办法及时回收和维护,比如放置在动物身上的设备,位置是不固定的,无法及时为终端设
Wesley13 Wesley13
3年前
PHP常用的5大设计模式
设计模式(Designpattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。1.单例模式单例模式(Singlet
Stella981 Stella981
3年前
Linux应急响应(二):捕捉短连接
0x00前言​短连接(shortconnnection)是相对于长连接而言的概念,指的是在数据传送过程中,只在需要发送数据时,才去建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。在系统维护中,一般很难去察觉,需要借助网络安全设备或者抓包分析,才能够去发现。0x01应急场景​
Stella981 Stella981
3年前
RabbitMQ消息可靠性分析
Introduction有很多人问过我这么一类问题:\\RabbitMQ如何确保消息可靠?\\很多时候,笔者的回答都是:说来话长的事情何来长话短说。的确,要确保消息可靠不只是单单几句就能够叙述明白的,包括Kafka也是如此。可靠并不是一个绝对的概念,曾经有人也留言说过类似全部磁盘损毁也会导致消息丢失,笔者戏答:还有机房被炸了也会导