- 博客(137)
- 资源 (6)
- 收藏
- 关注
转载 基于Docker的Mysql主从复制搭建
为什么基于Docker搭建?资源有限 虚拟机搭建对机器配置有要求,并且安装mysql步骤繁琐 一台机器上可以运行多个Docker容器 Docker容器之间相互独立,有独立ip,互不冲突 Docker使用步骤简便,启动容器在秒级别利用Docker搭建主从服务器首先拉取docker镜像,我们这里使用5.7版本的mysql:docker pull mysql:5.7然后使用此镜...
2019-12-30 17:53:53
195
原创 PHP 生成折线图和饼图等
pchart 类库下载,下载过后其中也有相应的例子,供选择生成折线图include("pChart/pData.class"); include("pChart/pChart.class"); // Dataset definition$DataSet = new pData;$DataSet->AddPoint(array(100,320,200,10,43),"Se...
2019-08-01 18:20:25
533
原创 使用 Redis bitmap 在微擎内做公众号的签到活动
先说下业务规则 首次签到可获得奖励 以及连续 2 天签到可获得奖励因为使用的是 openid 而非用户的 uid因此 此处的设计的 key 为 openid 而判断用户是否签到 的偏移量 为以某个起始时间 未开始的便宜来那个计算另外还有一种方案是 以当天的日期为 key 而偏移量 则为用户的 uid (此处不采用的原因为 我们的业务 uid 总量不算大 但是 间隔比较大 可能造成很大的 0 ...
2019-07-31 18:24:54
312
原创 Laravel 搭建 Composer 包,实现配置 Config、门面 Facade、服务 Service、发布到 Packagist
# Step1. 初始化 laravel 项目composer create-project laravel/laravel laravel-package#Step2. 创建目录,初始化 composer.json➜ mkdir -p app/packages/jesseychen/package-test ➜ cd app/packages/jesseychen...
2019-07-12 15:32:10
539
转载 破解 SVIP】提升百度网盘下载速度的另一种方法
友情提示,如果不好使,可以看看其他几篇:其他几个类似工具:【high-speed-downloader】支持 Mac 和 Windows,【proxyee-down】支持 Mac 和 Windows,【pandownload】仅支持 Windows 。参见:【high-speed-downloader】百度网盘不限速下载 支持 Windows 和 Mac如何把百度网盘下载速...
2019-06-17 11:10:19
2249
转载 golang比较优秀的第三方库收集
golang有许多优秀的第三方库,有时要使用时忘记库名又要去github找半天,还是写下来做个笔记并且逐步添加。以下的库基本都实际使用过。JSON解析tidwall/gjson主要用来解析JSON。不用再定义复杂结构,直接像其他语言一样根据Key来获取数据,方便很多。而且gjson官方自己的测试结果性能还是不错的。实际使用跟官方混用比较好:gjson对于Json数据格式不是很严格...
2019-06-12 18:27:48
2896
1
原创 navicat 官方使用手册,中文版,快捷键大全
2017年1月23日09:52:51这个官方中文文档很详细https://www.navicat.com.cn/manual/online_manual/cn/navicat/win_manual/index.htmlhttps://community.navicat.com/videos/cn官方中文论坛部分视频教程快捷键Navicat 主窗口 键...
2019-03-29 18:24:37
643
原创 php抓取图片进行内容提取解析,文字性pdf进行内容文字提取解析
2018年7月7日18:52:17php是用纯算法,自己是提取图片内容不是不行,可以但是优化起来很麻烦还得设计学习库,去矫正数据的正确率对于大多数项目来说,如果不是做ocr服务,就不必要做需求工具或者接口一,先说工具 tesseract-ocr/tesseract 目前没有时间测试,全套东西,学习难度不大,需要的训练数据,支持多国语言https://github.com/Sh...
2019-03-29 18:20:58
1207
原创 laravel整合workerman做消息推送系统
官方建议分离 workerman和mvc框架的结合,我去,这不是有点脑缺氧吗?大量的业务逻辑,去独立增加方法和类库在写一次,实际业务中是不现实和不实际的gateway增加一些这方面的工作,但是我看了源码之后,就发现还是只能自己做先增加composer require workerman/workerman 或者walkor/workerman ,但是官方的github是walko...
2019-03-29 18:19:35
1399
转载 MySQL(八)|MySQL中In与Exists的区别(2)
关于In与Exists的比较,先说结论,归纳出IN 和Exists的适用场景:1)IN查询在内部表和外部表上都可以使用到索引。2)Exists查询仅在内部表上可以使用到索引。3)当子查询结果集很大,而外部表较小的时候,Exists的Block Nested Loop(Block 嵌套循环)的作用开始显现,并弥补外部表无法用到索引的缺陷,查询效率会优于IN。4)当子查询结果集较小,而外部...
2019-01-28 09:37:31
211
转载 MySQL(七)|MySQL中In与Exists的区别(1)
最近被一条SQL语句弄的有点兴奋,具体情况是这样的...我这边有两个表需要关联查询,表的情况如下:# 2759174行数据SELECT COUNT(*) FROM tb_data t1;# 7262行数据SELECT COUNT(*) FROM tb_task t2;# 执行时间为44.88sSELECT SQL_NO_CACHE t1.id FROM tb_data t1 ...
2019-01-28 09:36:54
373
转载 MySQL(七)|MySQL分库分表的那点事(小怪的Java群第一次话题讨论)
一、何谓分库分表?把原本存储于一个库的数据分块存储到多个库(主机)上,把原本存储于一个表的数据分块存储到多个表上。二、为什么要分库分表?数据库中的数据量不一定是可控的,在未进行分库分表的情况下,随着时间和业务的发展,库中的表会越来越多,表中的数据量也会越来越大,相应地,数据操作,增删改查的开销也会越来越大。另外,由于无法进行分布式式部署,而一台服务器的资源(CPU、磁盘、内存、IO等...
2019-01-28 09:36:08
170
转载 MySQL(六)|《千万级大数据查询优化》第二篇:查询性能优化(2)
在上一篇文章MySQL(五)|《千万级大数据查询优化》第二篇:查询性能优化(1)中讲到一条SQL的查询执行路径如下图5-1所示:图5-1 步骤如下:客户端发送一条查询给服务器。 服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果。否则进行下一阶段。 服务器端进行SQL解析、预处理,再由优化器生成对应的执行计划。 MySQL根据优化器生成的执行计划,调用存储...
2019-01-28 09:35:27
249
转载 MySQL(五)|《千万级大数据查询优化》第二篇:查询性能优化(1)
MySQL优化一般是需要索引优化、查询优化、库表结构优化三驾马车齐头并进。本章节开始讲查询优化。一、为什么查询速度会慢可以把查询当作一个任务,它由一系列子任务组成,每个子任务都会消耗一定的时间。如果要优化查询,实际上是优化其子任务,要么消除其中一些子任务,要么减少子任务的执行次数,要么让子任务运行得更快。MySQL在执行查询的时候有哪些子任务,这个是有一定的方法进行剖析的,具体方法下回...
2019-01-28 09:34:55
233
转载 MySQL(四)|《千万级大数据查询优化》第一篇:创建高性能的索引(补充)
本文是MySQL(三)|《千万级大数据查询优化》第一篇:创建高性能的索引的一个补充。主要包括如下几点:关于sex列创建索引的处理 sex可以理解为那种选择性不高,但是可能很多查询都会用到的列。考虑到使用的频率,还是建议在创建不同组合索引的时候将它作为前缀。 但是根据经验法则(将选择性最高的列放到索引最前列)不是说不应该在选择性低的列上创建索引吗?那为什么这里要将sex列字段作为索引的前缀...
2019-01-28 09:34:09
217
转载 MySQL(三)|《千万级大数据查询优化》第一篇:创建高性能的索引
MySQL优化一般是需要索引优化、查询优化、库表结构优化三驾马车齐头并进。可以说,索引优化是对查询性能优化最有效的手段,索引能够轻易将查询性能提高几个数量级,“最优”的索引有时比一个“好的”索引性能要好几个数量级。创建一个真正“最优”的索引经常需要重写查询,所以索引优化和查询优化的关系很紧密。本文是《千万级大数据查询优化》系列第一篇:创建高性能的索引。我们先从一个面试题开始。面试题:...
2019-01-28 09:33:30
237
转载 MySQL(二)|深入理解MySQL的四种隔离级别及加锁实现原理
一、首先什么是事务?事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做。事务的结束有两种,当事务中的所有步骤全部成功执行时,事务提交。如果其中一个步骤失败,将发生回滚操作,撤消事务开始时的所有操作。二、事务的ACID事务具有四个特征:原子性( Atomicity...
2019-01-28 09:32:31
749
转载 MySQL(一)|性能分析方法、SQL性能优化和MySQL内部配置优化
我曾经在公司处理过很多次Mysql性能上的问题,利用一些Linux常用的命令来查看Mysql对服务器的CUP和I/O使用情况,通过慢查询日志找出有待优化的sql,通过show processlist查看正在执行的sql的情况以及及时kill死锁的sql,通过EXPLAIN分析需要优化的sql语句。当然也对Mysql内部配置做了一些调整。最近也在看《高性能MySQL》这本Mysql的经典书籍,...
2019-01-28 09:31:43
276
原创 PHP对称加密(AES加密算法)与非对称加密(RSA加密算法)详细讲解及php的实现
目录对称加密 AES加密算法 非对称加密 RSA加密算法 为了保证网络传输数据的安全性,涉及敏感数据的传输,最好对数据预先加密,然后再在网络上进行传输,同时,还要保证数据在另一端是可解密的,并且还必须要通过钥匙(公钥或私钥)才能解密,没有钥匙(公钥或私钥)的人即使是拿到了加密过的数据也无法解密。对称加密采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密...
2019-01-15 10:35:53
2040
原创 PHP单元测试利器 PHPUNIT深入用法(三)第1/2页
在本文中,笔者将为大家介绍phpunit中的两个高级概念和用法,尽管它不一定在你的日常单元测试中都用到,但理解和学会它们的用法对学习phpunit还是十分重要的。 Phpunit中的Annotations 如果有其他编程语言经验的开发者,应该对Annotations(注解)不陌生,其实在phpunit中,一个简单的如下面的一段注释也可以认为是Annotations:<?php...
2019-01-11 17:16:02
234
原创 yii分页
方法中写法:<?phpuse yii\data\Pagination; // 分页显示 public function actionPage(){ $request=Yii::$app->request; $get=$request->post(); // var_dump($get); $use...
2019-01-11 17:15:43
167
原创 YII框架数据库的增删改查
简单的增删改查[php] view plain copy //添加 Yii::app()->db->createCommand()->insert('tbl_user', array( 'username' => 'zhangsan', 'email' =&...
2019-01-11 17:15:32
123
转载 MySQL使用可重复读作为默认隔离级别的原因
一般的DBMS系统,默认都会使用读提交(Read-Comitted,RC)作为默认隔离级别,如Oracle、SQL Server等,而MySQL却使用可重复读(Read-Repeatable,RR)。要知道,越高的隔离级别,能解决的数据一致性问题越多,理论上性能损耗更大,可并发性越低。隔离级别依次为SERIALIZABLE > RR > RC > Read-Uncommite...
2018-11-23 09:59:41
147
原创 Laravel 框架的事件机制
Laravel 框架的事件处理机制是通过类EventServiceProvider来实现的.建立事件首先我需要将自己的事件和监听者注册到app\Providers目录下的EventServiceProvider类中的$listen数组中然后运行php artisan event:generate 命令会自动生成相应的事件类和监听者类。然后在相应的类中编写事件的逻辑和监听者的逻辑。调用事件可以使用...
2018-05-18 14:02:56
298
原创 Windows 10下Laravel的开发环境安装及部署(Vagrant + Homestead)
2018-2-6 更新 注意! laravel/homestead box项目地址已经不再是原来的 https://atlas.hashicorp.com/laravel/boxes/homestead而已经变更成 https://app.vagrantup.com/laravel/boxes/homestead所以本文中的操作以及链接也进行了相应的更新。对...
2018-05-03 16:21:10
643
原创 CentOS7,MySQL主从配置和读写分离(MySQL主从、MySQL读写分离、MySQL分布式、数据库读写分离、主从配置)
一、实验目标搭建两台MySQL服务器,一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作。二、测试环境主数据库: CentOS7, MySQL15.1 , 192.168.1.233从数据库: CentOS7, MySQL15.1 , 192.168.1.234三、主从配置步骤1、确保主数据库与从数据库里的数据一样例如:主数据库里的a的数据库里有b,c,d表,那从数据库里的...
2018-04-27 13:40:08
199
原创 Nginx下实现pathinfo及ThinkPHP的URL Rewrite模式支持
打开Nginx的配置文件 /usr/local/nginx/conf/nginx.conf 一般是在这个路径,根据你的安装路径可能有所变化。如果你配置了vhost,而且只需要你这一个vhost支持pathinfo的话,可以直接打开你的vhost的配置文件。找到类似如下代码(不同版本的nginx可能稍有不同,但是相差不会很远): location ~ .*.(php|php5)?$ ...
2018-04-25 13:45:45
167
原创 TP框架如何开启log日志
1.日志的处理工作是由系统自动进行的,在开启日志记录的情况下,会记录下允许的日志级别的所有日志信息。其中,为了性能考虑,SQL日志级别必须在调试模式开启下有效,否则就不会记录。 系统的日志记录由核心的Think\Log类及其驱动完成,提供了多种方式记录了不同的级别的日志信息。默认情况下只是在调试模式记录日志,要在部署模式开启日志记录,必须在配置中开启LOG_RECORD参数,以及可以在应用配置文件...
2018-04-25 11:33:51
6739
原创 MYSQL百万级数据,如何优化
MYSQL百万级数据,如何优化 首先,数据量大的时候,应尽量避免全表扫描,应考虑在 where 及 order by 涉及的列上建立索引,建索引可以大大加快数据的检索速度。但是,有些情况索引是不会起效的:1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。2、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放...
2018-04-25 11:30:19
214
转载 【视频】详解小程序wx.requestpayment用法,实现小程序在线支付功能
开发小程序商城,外卖小程序,销售型小程序等,具有在线支付功能的,都会使用wx.requestpayment()这个接口。好多学员反馈说这个接口很难,今天子恒老师跟你分享一下,怎么使用wx.requestpayment实现微信支付。一、 使用wx.requestpayment实现微信支付要做的准备觉得小程序的requestpayment难,是因为没有把这些准备工作做好。1) 获取小程序用户的open...
2018-04-12 10:48:50
9380
原创 小程序服务端集成微信支付
demo源码已托管到码云:http://git.oschina.net/dotton/lendoo-wx,欢迎下载。理论上集成微信支付的全部工作可以在小程序端完成,因为小程序js有访问网络的能力,但是为了安全,不暴露敏感key,也更好地跨平台(对于iOS与Android原生APP开发来说,哪天小程序的支付接口也纳入了开放平台了,这条也就成立了),而且可以使用官方提供...
2018-04-12 10:47:05
231
1
原创 Eloquent ORM
简介Laravel 自带的 Eloquent ORM 为您的数据库提供了一个优雅的、简单的 ActiveRecord 实现。每一个数据库的表有一个对应的 "Model" 用来与这张表交互。在开始之前,确认已在 app/config/database.php 文件中配置好数据库连接。基本用法首先,创建一个 Eloquent 模型。模型通常在 app/models 目录,但是您可以自由地把它们放在任何...
2018-03-22 13:58:09
475
原创 深入理解 Laravel Eloquent(三)——模型间关系(关联)
在本篇文章中,我将跟大家一起学习 Eloquent 中最复杂也是最难理解的部分——模型间关系。官方英文文档中叫 Relationships,个人认为翻译成 “模型间关系” 比现在的 “关联” 更好理解一点哈哈。Eloquent是什么Eloquent 是一个 ORM,全称为 Object Relational Mapping,翻译为 “对象关系映射”(如果只把它当成 Database Abstrac...
2018-03-22 13:50:19
1811
原创 Laravel生成Word文档 - phpword
工作中常常会遇到数据导出功能,比如把数据导出成word.docx文档。那么用Laravel如何实现呢。今天给大家介绍一下phpword的使用,它可以很方便的实现word文档的生成,同时可以在word中添加表格、目录、图片、超级链接、页眉、页脚等功能强大,比如这个图就是我用程序生成的,如下图所示:phpword官方手册:http://phpword.codeplex.com/documentatio...
2018-03-09 11:03:02
2118
原创 Laravel生成pdf文档 - tcpdf
工作中遇到了Laravel生成pdf文档,就找了找类库,今天给大家推荐的类库是:tcpdf,因为它官网给的例子比较全,所以就用它了。官网例子:https://tcpdf.org/examples/ 可以点击进去体验一下。github: https://github.com/tecnickcom/tcpdfpackagist: https://packagist.org/packages/tecni...
2018-03-09 11:02:12
4512
1
原创 Laravel Excel —— Export导出
Basics 基础A new file can be created using thecreatemethod with the filename as first parameter.创建一个文件,使用第一个参数作为文件名。Excel::create('Filename');To manipulate the creation of the file you can use the callb...
2018-03-09 09:33:31
2634
原创 php四种基础算法:冒泡,选择,插入和快速排序法
需求:分别用 冒泡排序法,快速排序法,选择排序法,插入排序法将下面数组中 的值按照从小到的顺序进行排序。 $arr(1,43,54,62,21,66,32,78,36,76,39);1. 冒泡排序法 * 思路分析:法如其名,就是像冒泡一样,每次从数组当中 冒一个最大的数出来。 * 比如:2,4,1 // 第一次 冒出的泡是4 * 2,1,4...
2018-03-05 18:15:49
128
转载 基本的一些算法
算法思想,一直都是最为重要的思想,掌握基础的算法知识,才有可能更加深入地去研究一些比较重要的算法,对程序的优化也显得更加重要! 下面我就直接贴代码,不说废话了,自己去理解。。。 //插入排序算法 public function insertionSort($arr) { for ($i = 1; $i < count($arr); $i++) { ...
2018-03-05 16:32:15
190
原创 PHP生成一张含有二维码的图片(文章末尾附代码下载链接)
PHP生成一张图片用到的类有QRcode,QRencode ,QRtools , QRimage这四个类是主要的。 主导类:QRcode 辅助类:QRencode, QRimage ,QRtools . 请看下图, 直接贴源码!!!1、直接调用函数(参数赋值,返回图片);//QRcodepublic static function png($tex...
2018-03-05 16:30:19
620
各种语言的学习资料(java,php,大数据,web,python......)
2019-07-29
Yii2中文手册(完整版).pdf
2017-11-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人