摘要: 建立连接非常重要,它是数据正确传输的前提;断开连接同样重要,它让计算机释放不再使用的资源。如果连接不能正常断开,不仅会造成数据传输错误,还会导致套接字不能关闭,持续占用资源,如果并发量高,服务器压力堪忧。建立连接需要三次握手,断开连接需要四次握手,可以形象的比喻为下面的对话: [Shake 1] 套 阅读全文
posted @ 2021-02-04 15:49 墙角摘蘑菇 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 建立连接后,两台主机就可以相互传输数据了。如下图所示: 图1:TCP 套接字的数据交换过程 上图给出了主机A分2次(分2个数据包)向主机B传递200字节的过程。首先,主机A通过1个数据包发送100个字节的数据,数据包的 Seq 号设置为 1200。主机B为了确认这一点,向主机A发送 ACK 包,并将 阅读全文
posted @ 2021-02-04 15:33 墙角摘蘑菇 阅读(628) 评论(0) 推荐(0) 编辑
摘要: TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的通信协议,数据在传输前要建立连接,传输完毕后还要断开连接。客户端在收发数据前要使用 connect() 函数和服务器建立连接。建立连接的目的是保证IP地址、端口、物理链路等正确无误 阅读全文
posted @ 2021-02-04 15:31 墙角摘蘑菇 阅读(281) 评论(0) 推荐(0) 编辑
摘要: /** * 开启并发锁 * @param $orderId * @create_time:2020/12/24 0024 10:50 * @return RestResponse */function doBeforeTransaction($orderId){ $accountId = Yii:: 阅读全文
posted @ 2021-01-11 15:19 墙角摘蘑菇 阅读(97) 评论(0) 推荐(0) 编辑
摘要: function index($array, $key, $groups = []){ $result = []; $groups = (array)$groups; foreach ($array as $element) { $lastArray = &$result; foreach ($gr 阅读全文
posted @ 2021-01-11 15:17 墙角摘蘑菇 阅读(349) 评论(0) 推荐(0) 编辑
摘要: $list = [ ['id'=>'222', 'name'=>'李世民', 'parentid'=>'111'], ['id'=>'999', 'name'=>'李隆基', 'parentid'=>'777'], ['id'=>'111', 'name'=>'李渊', 'parenti 阅读全文
posted @ 2021-01-11 15:15 墙角摘蘑菇 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 在面试的时候经常被问到设计模式,那设计模式到底是什么东东呢? 其实我们在开发工作中经常遇到设计模式,只是我们并不知道我们这个类,方法是一种设计模式。 下面就介绍几种常用的设计模式,下次再开发的时候,当遇到此类的情况就能知道到底是哪一种设计模式。 1.单例模式:instance,多态的体现。 单例模式 阅读全文
posted @ 2019-05-12 11:55 墙角摘蘑菇 阅读(924) 评论(0) 推荐(1) 编辑
摘要: 1 #运行用户 2 user nobody; 3 #启动进程,通常设置成和cpu的数量相等 4 worker_processes 1; 5 6 #全局错误日志及PID文件 7 #error_log logs/error.log; 8 #error_log logs/error.log notice; 9 #error_log logs/error.... 阅读全文
posted @ 2019-05-10 13:48 墙角摘蘑菇 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 在工作中经常会用到定时任务,除了在js中有定时器这个玩意可以用于前端页面的定时任务; 那么后端PHP如何设置定时任务呢? 一.如下是javascript中使用setTimeout和setInterval设置定时任务: 二.在PHP中使用一个死循环来设置定时任务: minute - 从0到59的整数 阅读全文
posted @ 2019-05-09 14:04 墙角摘蘑菇 阅读(18829) 评论(0) 推荐(0) 编辑
摘要: 重载:函数重载指方法的名称相同而参数形式不同,且能够通过函数的参数个数或参数类型将这些同名的函数区分开来, 调用不发生混淆。即当调用的时候,虽然方法名字相同,但根据参数的不同可以自动调用相应的函数。 使用__set(),__get()对属性进行调用,使用__call()对方法进行重载。(一个类之间) 阅读全文
posted @ 2019-05-08 09:38 墙角摘蘑菇 阅读(325) 评论(0) 推荐(0) 编辑