会员
周边
众包
新闻
博问
闪存
赞助商
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
xiaoxlm
博客园
首页
新随笔
联系
订阅
管理
[置顶]
TCP学习总结(四)
摘要: TCP连接管理 TCP运输连接有3个阶段, 即: 连接建立,数据传送和连接释放。 1. TCP的连接建立(3次握手) TCP连接的建立采用客户服务器方式。主动发起连接建立的应用进程叫做客户(client), 而被动等待连接建立的应用进程叫做服务器(server)。 TCP是面向连接的,无论哪一方向另
阅读全文
posted @ 2018-08-10 14:18 xiaoxlm
阅读(312)
评论(0)
推荐(0)
编辑
[置顶]
TCP学习总结(三)
摘要: TCP的流量控制 1.利用滑动窗口实现流量控制 所谓流量控制,就是让发送方的发送速率不要太快,要让接收方来得及接收。利用下图来说明如何利用滑动窗口机制进行流量控制: 一开始(connect后),B告诉A: 我的接收窗口rwnd=400,TCP的窗口单位是字节,不是报文段。报文段序号初始值设为1。 接
阅读全文
posted @ 2018-08-10 14:17 xiaoxlm
阅读(405)
评论(0)
推荐(0)
编辑
[置顶]
TCP学习总结(二)
摘要: 前面一节咱们介绍完了TCP协议,这部分,将要介绍,TCP是如何实现可靠传输的。 TCP的可靠传输 1.滑动窗口 上一节我们介绍TCP报文段头部的时候说得到,"窗口"这个部分,"窗口"的内容就是发送/接收的数据的字节总量(窗口是以字节为单位)。 发送方A有发送窗口,接收方B有接收窗口。头部的"窗口"要
阅读全文
posted @ 2018-08-10 14:16 xiaoxlm
阅读(520)
评论(0)
推荐(0)
编辑
[置顶]
TCP学习总结(一)
摘要: 在学习的过程中,相信大家都有过“学了就忘“这种经历,又特别是TCP/IP知识点密集的通信协议,所以在此总结一下自己学到的皮毛,希望对自己对大家也有所帮助。 这篇博客主要讲运输层TCP和UDP的东西,IP层以后有时间再来补充。 TCP TCP的全称叫传输控制协议(Transmission Contro
阅读全文
posted @ 2018-07-31 19:46 xiaoxlm
阅读(1183)
评论(0)
推荐(0)
编辑
[置顶]
PHP协程入门详解
摘要: 概念 咱们知道多进程和多线程是实现并发的有效方式。但多进程的上下文切换资源开销太大;多线程开销相比要小很多,也是现在主流的做法,但其的控制权在内核,从而使用户(程序员)失去了对代码的控制,而且线程的上下文切换也是有一定开销的。 这时为了解决以上问题,"协程"(coroutine)的概念就产生了。你可
阅读全文
posted @ 2018-07-30 20:21 xiaoxlm
阅读(1100)
评论(2)
推荐(1)
编辑
2020年4月4日
go的内存管理(一)
摘要: 进程里面的堆和栈 我们知道进程之间内存是隔离的不共享。所以一般说到内存就是指的一个进程用到的内存。 而一个进程的内存一般可以分为 5个区:栈区, 堆区, 静态区(全局区), 文字常量区,代码区。而我们主要理解栈区和堆区,其他3个区里面的内容都是静态的。 栈区: 函数里面涉及到几乎大部分内容都在栈区,
阅读全文
posted @ 2020-04-04 10:18 xiaoxlm
阅读(1857)
评论(0)
推荐(0)
编辑
2020年3月16日
golang基准测试详解
摘要: 为什么需要基准测试? 如果你的代码中有性能问题,或者你怀疑某段代码有性能问题(当然最好得明确排除I/O性能问题),可以用基准测试生成CPU分析报告。 基准测试前的准备 生成以_test后缀的go文件(例:xxx_test.go)后,编写基准测试用例,以Benchmark开头的。以测试冒泡排序为例,代
阅读全文
posted @ 2020-03-16 14:08 xiaoxlm
阅读(864)
评论(0)
推荐(0)
编辑
2019年3月15日
kafka学习笔记(一)
只有注册用户登录后才能阅读该文。
阅读全文
posted @ 2019-03-15 18:34 xiaoxlm
阅读(8)
评论(0)
推荐(0)
编辑
2018年12月25日
mysql事务特点总结
摘要: 1.mysql事务有4个隔离级别,以及会出现的问题如下图: 2. 脏读: 开启事务A,B。事务A在还没有提交的情况下,假如第一次查询id=1的用户的age=24。事务B执行了update 表 set age = 100 where id = 1; B事务并没有提交,紧接着再次查询id=1的用户的ag
阅读全文
posted @ 2018-12-25 14:35 xiaoxlm
阅读(590)
评论(0)
推荐(1)
编辑
2018年10月8日
使goroutine同步的方法总结
摘要: 前言: 在前面并发性能对比的文章中,我们可以看到Golang处理大并发的能力十分强劲,而且开发也特别方便,只需要用go关键字即可开启一个新的协程。 但当多个goroutine同时进行处理的时候,就会遇到同时抢占一个资源的情况(并发都会遇到的问题),所以我们希望某个goroutine等待另一个goro
阅读全文
posted @ 2018-10-08 13:58 xiaoxlm
阅读(902)
评论(0)
推荐(0)
编辑
2018年8月10日
PHP类自动加载技术
摘要: 在我们平时用框架比如laravel时,只要在app目录下的任意路基文件中,如下使用就可以实例化一个对象。 我们知道,原生PHP要想实例化一个其他文件中的类,必须把该文件 include/require 进来。而框架中不需要引入文件,直接就可以实例化对象是如何实现的呢?答案就是类自动加载技术。 PSR
阅读全文
posted @ 2018-08-10 19:03 xiaoxlm
阅读(120)
评论(0)
推荐(0)
编辑
2018年8月3日
swoole架构分析
摘要: swoole的进程/线程结构 结构图如下: swoole主要由Master进程(主进程)和Manager进程配合使用完成其功能。 Master进程 是一个多线程的程序。其中有一组很重要的线程,称之为Reactor线程。它就是真正处理TCP连接,收发数据的线程。 Manager进程 管理worker/
阅读全文
posted @ 2018-08-03 15:10 xiaoxlm
阅读(2507)
评论(0)
推荐(0)
编辑
下一页
公告