- 博客(23)
- 收藏
- 关注
原创 phpstrom-docker 远程debug配置
选择容器的php解析配置xdeug配置服务开启监听phpstorm会监听9001端口,接受数据php.ini配置[XDebug]xdebug.remote_enable = 1xdebug.remote_host = host.docker.internalxdebug.remote_port = 9001xdebug.remote_connect_back=0xdebug.remote_autostart=1xdebug.remote_log = /data/logs/xd
2022-05-10 15:21:37 448
原创 lumen 框架学习
路由基本使用# 直接返回信息或简单处理,一般很少用这个$app->get('/', function() { return 'Hello World';});# 携带参数$app->get('user/{id}', function($id) { return 'User '.$id;});# 重命名并指向控制器-经常使用$app->get('user/profile', [ 'middleware' => 'old','as' => 'profil
2022-05-05 17:02:40 450
原创 go TCP 粘包原理和解决方案
1 为什么会出现粘包主要原因是tcp 数据传递模式是留模式,在长连接过程中可以进行多次收发。数据粘包可以发生在客户端和服务端。2 解决办法出现粘包的关键在于不确定包的大小,因此可以通过封包将把的内容长度封装在包头,用固定长度的值来存储包内容长度。自己封装一个数据传输协议。如下:package protoimport ( "bufio" "bytes" "encoding/binary")// Encode 将消息编码func Encode(message stri
2022-04-11 15:11:56 3118 1
原创 PHP 基于SMTP协议+socket 简单的邮件发送
class SMTPMail{ private $user; private $host; private $port = 25; private $pass; private $socket; public function __construct($host,$port,$user,$pass){ $this->host = $host; $this->por...
2019-05-28 16:23:55 357
原创 基于times33算法的hash数据库
本地缓存数据库设计原理1、分两个文件一个索引文件 .idx,一个数据文件 .dat2、索引文件结构 : [索引指针 | 索引指针| …|索引指针|索引记录|…|索引记录]索引指针:用来记录索引记录的偏移量索引记录:hash链表 结构=》 [下一个借点指针 | key| 数据偏移量|数据长度]代码如下:亲测可用不足:1、没时间做并发控制。2、删除索引以后数据文件没有改变。针对以...
2018-12-14 16:10:45 328
原创 查询数据表的字段information_schema.COLUMNS返回失败原因
如题查询数据表字段:“select group_concat(column_name separator ‘,’) as allColumn from information_schema.COLUMNS where table_name=’”.$table."’"返回结果: false原因:1、数据库中不存在相应的表格。2、看看代码中是执行过 PDO::exec, PDO::exec会...
2018-11-28 15:32:09 2805
转载 高性能PHP应用开发-总结
[第一章 基准测试工具]一:Apache Benchmark (ab) 随 apache包一起安装 ab -n (请求数) -c (并发数,不能起过-n) -t (请求的秒数) http://url报告中最重要的是以下字段内容: ------------------------- HTML transferred 请求的内容总大小 Requests per second ...
2018-09-13 11:37:34 1202
原创 python 学习笔记(十): 数据库连接池
#!/usr/bin/python# -*- coding: utf-8 -*-from __future__ import print_functionimport Queueimport pymysqlimport loggingLOG = logging.getLogger(__name__)class ConnectionPool(object): # 实例化类...
2018-09-13 10:26:12 196
原创 python 学习笔记(九): 数据库压测编程
这个代码是利用多线程多mysql数据库批量插入数据,可用于mysql压测#!/usr/bin/python# -*- coding: utf-8 -*-from __future__ import print_functionimport argparseimport threadingimport pymysqlfrom contextlib import contextmana...
2018-09-13 10:21:19 403
原创 python 学习笔记(八):线程锁
#!/usr/bin/python# -*- coding: utf-8 -*-from __future__ import print_functionimport threadinglock = threading.Lock()num = 0def incre(count): global num while count>0: with l...
2018-09-13 10:18:03 165
原创 python 学习笔记(七):mysql 数据库连接
不废话,直接贴代码#!/usr/bin/python# -*- coding: utf-8 -*-from __future__ import print_functionimport osfrom contextlib import contextmanager'''根据环境变量导入不同的数据库模块'''if os.getenv('DB','MySQL') == 'mysq...
2018-09-13 10:16:09 176
转载 PHP array_filter()、array_map()
今天用到 array_filter() 和 array_map(),表示很少用这个有点晕菜。看了一下手册array_filter() $arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4];var_dump(array_filter($arr, function($k) { return $k == 'b';},...
2018-09-07 17:21:00 495
原创 python 学习笔记(六):服务器监控
在 python 生态中广泛使用的开源项目 psutil ,其提供了便利的函数获取操作系统的信息。CPUimport psutil as p# 与 cpu 相关的功能函数 p.cpu_count() # 逻辑cpu个数p.cpu_count(logical=False) # 物理cpu个数p.cpu_percent() # 获取上次调用cpu_percent 以来整体cpu的...
2018-09-07 11:38:59 227
转载 python 学习笔记(五):datetime的使用和常用时间处理
datetime在python中比较常用,主要用来处理时间日期,使用前先倒入datetime模块。下面总结下本人想到的几个常用功能。1、当前时间:>>> print datetime.datetime....
2018-09-06 11:11:28 440
原创 python 学习笔记(四):压缩包管理
python 的 tarfile 标准库提供了 tar 命令所提供的功能 。 读取压缩包文件# 打开压缩包获取压缩包里面的文件import tarfiletarfile.open('tarfile.tar') as t: for member_info in t.getmembers(): print(member_info.name) # tarfile ...
2018-09-06 09:39:04 306
原创 阿里云下载 RDS Mysql 备份数据
玛德坑爹,不知道阿里云里面有下载工具,开始差点就要用API写接口下载二进制文件了。后来在文档里面查到居然有下载工具,好呀,这下省事了。RDS MySQL备份文件下载工具 文档以及下载地址哎~教程很简单照着弄一下就好了 这里有一个坑,值得注意:工具下载下来以后千万不要在window上面解压,解压出来的是 get_rds_backup 都是二进制数据,不能用的。只有在linux上面解压才可...
2018-09-03 17:33:39 621
原创 python 学习笔记(三):文件操作
首先打开一个文件,为了避免文件句柄泄露,采用上下文管理器。上下文管理器使用原理:在类中必有 enter 和 exit 方法,在with语句中会在开始调用 enter 方法,结束的时候调用 exit 方法 来实现文件的自动关闭。我们可以通过两种方式实现上下文管理器协议:1、在类的方法里面自定义上诉两种方法。2、通过 contextlib.contextmanager 的装饰器来实现(被装饰的方法要...
2018-08-30 14:47:39 184
原创 Django 自定义模块导入
初学Django 创建了一个应用,感觉所有的model和方法都写在models和views里面很难受,这样在后期不好管理和维护 于是自定义了一下应用目录: 这样做就涉及到自定义的模块导入问题。python 的模块查找原理是这样的: 1、先在当前文件目录下查找。 2、再到标准库安装路径去查找 3、到path环境变量里面的路径去查找网上搜到自定义模块导入的方法有: 自定义库的路径添...
2018-08-24 15:43:38 6293
原创 开机自动同步centos 虚拟机时间
首先要先安装ntp# yum install ntp配置开机时自动运行时间服务# chkconfig ntpd on开启ntp服务# cd /etc/# /bin/systemctl start ntpd.service查看一下是否启动# ps -aux| grep ntpd同步时间# ntpdate -u ntp1.aliyun.com# ntp...
2018-08-23 15:46:29 1037
原创 python 学习笔记(二):文本处理
python中字符串是不可变的有序集合,所以可以通过字符运算、切片操作、格式化表达式和字符串方法来生成新的字符串。 字符串操作有:字符串操作',',join(str1,str2) # 字符串拼接'str'.strip('s') #字符串剪裁 删除特定的字符'split'.split() # 字符串拆分'replace'.replace('re','') # 字符串替换st...
2018-08-23 12:07:12 161
原创 python学习笔记(一):文件命名
初学Python 的时候一定注意文件命名,要是文件名于系统或者第三方模块名字重复 在引用模块方法的时候就会: 然后,查找错误和百度都无法知道问题。这是个巨坑。。谨记!谨记!...
2018-08-23 11:21:00 1628
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人