- 博客(23)
- 资源 (2)
- 收藏
- 关注
原创 composer 版本兼容
Your lock file does not contain a compatible set of packages. Please run composer update2周前 ⋅0估计是PHP版本不符合composer.json里面需要的版本,那么可以在执行composer命名时,可以设置忽略版本匹配。安装命名:composer install --ignore-platform-reqs更新命名:composer update --ignore-platform-r..
2021-03-17 14:34:21
519
转载 MySQL性能优化汇总
年少不知优化苦,遇坑方知优化难。 ——村口王大爷本文内容导图如下:当然,本篇也是关于性能优化的,那性能优化就应该一把梭子吗?还是要符合一些规范和原则呢?所以,在开始之前(MySQL 优化),咱们先来聊聊性能优化的一些原则。性能优化原则和分类性能优化一般可以分为:主动优化 被动优化所谓的主动优化是指不需要外力的推动而自发进行的一种行为,比如当服务没有明显的卡顿、宕机或者硬件指标异常的情况下,自我出发去优化的行为,就可以称之为主动优化。而被动优化刚好与主动优化相反,它是指在.
2020-09-21 17:47:02
304
转载 MySQL锁的问题
什么是锁面试官:: 你是来参加面试的吧?吒吒辉:不 不 不,我是来参加复试呢。面试官:: 看到上次别人点评,MySQL优化还阔以。那你先谈谈对锁的理解?吒吒辉:嘿嘿,还好!锁是计算机在进行多 进程、线程执行调度时强行限制资源访问的同步机制,用于在并发访问时保证数据的一致性、有效性;锁是在执行多线程时,用于强行限制资源访问的同步机制,即用在并发控制中保证对互斥的要求。一般的锁是建议锁(advisory lock),每个线程在访问对应资源前都需获取锁的信息,再根据信息决定是否可以访..
2020-09-01 17:20:47
283
转载 秒杀系统设计(前端设计,网关的作用,解决Redis的并发竞争,数据的同步方式,MQ的作用)
背景我之前写过一个秒杀系统的文章不过有些许瑕疵,所以我准备在之前的基础上进行二次创作,不过让我决心二创秒杀系统的原因是我最近面试了很多读者,动不动就是秒杀系统把我整蒙蔽了,我懵的主要是秒杀系统的细节大家都不知道,甚至不知道电商公司一个秒杀系统的组成部分。我之前在某电商公司就是做电商活动的,所以这样的场景和很多解决方案我是比较清楚的,那我就从我自身去带着大家看看一个秒杀的设计细节以及中间各种解决方案的利弊,以下就是我设计的秒杀系统,几乎涵盖了市面上所有秒杀的实现细节:正文首先设计一个系统之
2020-08-14 15:59:02
819
原创 数据库设计时,是否要设置外键?
外键的定义:是数据库提供的一种完整性约束,保证数据的完整性。在许多数据库的书上也会介绍到,然而对于外键这个完整性性约束究竟应该在数据库端实现,还是在项目业务端实现很多人有着不同的意见。 在查看了很多大牛的文章后我总结出来如下:个人开发(小型应用)、数据库读写资源充足(数据库并发低),集中式数据库系统,则应该使用外键保障数据的完整性,减少开发端的负担,有利于数据库开发与程序开发的分离。 团队开发(大型应用)。数据库的读写成为瓶颈(数据库并发高),分布式数据库系统(分割式存储数据),(如阿.
2020-08-10 15:38:48
1038
原创 php如何确保上传图片的安全
1、上传的时候不依靠Content-Type来做文档类型验证,可以参考我在这里的回答如何判断浏览器上传文件的真实类型?如果是图片可以通过 getimagesize() 获取图片的 mime,这样便不依赖普通文件可以通过:1. finfo 扩展2. mime_content_type()3. 调用linux命令 exec("file -bi ".escapeshellarg($this->file_src_pathname))来检测选择合适的一种检测文档类型已经够用了。图片上
2020-08-10 15:37:47
724
原创 MySQL的Explain应用
在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略预计会被优化器采用。-- 实际SQL,查找用户名为Jefabc的员工select * from emp
2020-05-12 11:08:26
174
转载 sphinx多属性查找sql_attr_multi
需求描述mysql中,每一个文档都有多个标签,查询时可以筛选一个标签也可以筛选同时拥有多个标签的文档。数据示例文档 标签1 1,2,3,4,52 2,3,4,5,63 3,4,5,6,74 4,5,6,7,85 5,6,7,8,9注意:...
2019-05-10 12:49:34
720
转载 【Linux】crontab 按分钟小时天月的执行命令写法(附实例)
crontab -lcrontab -e每五分钟执行 */5 * * * *每小时执行 0 * * * *每2小时执行 0 */2 * * *每天执行 0 0 * * *每周执行0 0 * * 0每月执行 0 0 1 * *每年执行 0 0 1 1 *星号(*):代表所...
2019-04-11 09:32:30
633
转载 HTTP请求行、请求头、请求体详解
HTTP请求报文解剖 HTTP请求报文由3部分组成(请求行+请求头+请求体): 下面是一个实际的请求报文: ①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。不过,当前的大多数浏览器只支持GET和POST,Spring 3.0提供了一个HiddenHttpMethodFilter,允许你通过“_method”的表单参...
2018-06-07 16:58:39
842
转载 MySQL 通用查询日志和慢查询日志开启
MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。1)通用查询日志:记录建立的客户端连接和执行的语句。2)慢查询日志:记录所有执行时间超过long_query_time秒的所有查询或者不使用索引的查询(1)通用查询日志在学习通用日志查询时,需要知道两个数据库中的常用命令:1) showvariables like...
2018-06-04 17:40:33
653
原创 linux 下安装WDCP(LANMP环境一起安装)
1. 打开Xshell软件2. SSH命令执行:yum install -y wgetwget http://dl.wdlinux.cn/files/lanmp_v3.2.tar.gztar zxvf lanmp_v3.2.tar.gz sh lanmp.sh然后坐等安装结束 .....安装完成就可以进入登录界面操作http://ip:8080默认账号为admin,密码为wdlinux...
2018-03-10 13:55:30
1136
转载 MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)
案一:使用ignore关键字如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用: 代码如下11 INSERT IGNORE INTO `table_name` (`email`, `phone`, `user_id`) VALUES ('test9@163.com', '9999
2017-12-01 09:51:37
335
转载 mysql数据库误删除后的数据恢复操作说明
在日常运维工作中,对于mysql数据库的备份是至关重要的!数据库对于网站的重要性使得我们对mysql数据的管理不容有失!然后,是人总难免会犯错误,说不定哪天大脑短路了来个误操作把数据库给删除了,怎么办???下面,就mysql数据库误删除后的恢复方案进行说明。一、工作场景(1)MySQL数据库每晚12:00自动完全备份。(2)某天早上上班,9点的时候,一同事犯晕drop了
2017-11-09 16:08:01
1043
原创 window环境下编写定时器(执行php文件执行)
干货就应该直接进入正题执行流程 : 定时器任务定时执行bat文件->执行php文件->执行方法第一步,创建好目录和文件polling.bat 文件内容:D:\SOFT_PHP_PACKAGE\php5.5\php.exe -q D:\timing\polling_page_number\polling.phppolling
2017-11-09 11:02:39
1495
转载 mysql 乐观锁和悲观锁的区别,以及乐观锁实现
一、为什么需要锁(并发控制)? 在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。 典型的冲突有: 1.丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值从2改为6,则用户A丢失了他的更新。 2.脏读:当一个事务读取其它完成
2017-10-19 17:53:24
799
转载 php 对接paypal的SDK实现支付详解(源代码)
paypal支付接口准备工作首先去申请一个paypal账号,https://www.paypal.com/。申请完毕并登录,进入https://developer.paypal.com/developer/accounts/。即可看到你申请账号自动配属的两个测试账号,账号类别分别是:BUSINESS和PERSONAL,PERSONAL的账号里面有$9999,测试费用,表激动。下面去给两
2017-10-18 11:56:49
6311
1
原创 linux中安装mysql,如何开启远程访问权限
安装步骤就不多说了,直接进入正题:打开MySQL数据库远程访问的权限链接mysql,运行#mysql -uroot -p123456切换数据库#use mysql查询mysql用户信息#SELECT User, Password ,Host From user;开启任何主机都能链接mysql服务器#GRANT AL
2017-10-11 09:41:22
630
转载 Linux下修改MySQL用户(root)密码
以下命令适合修改任何mysql用户,仅以root为例。一、拥有原来的myql的root的密码;123456# mysql -uroot -pEnter password: 【输入原来的密码】(如果安装完mysql第一次设置root密码,则直接回车)mysql>use mysql;
2017-10-09 16:53:39
3557
原创 lnmp环境搭建
1、搭建 LNMP 环境安装 Nginx, MySQL PHP 软件包安装 Nginx, MySQL 和 PHP 软件包执行指令:yum install -y nginx mariadb-server mariadb php php-fpm php-mysql启动并检查 Nginx 和 PHP 的安装情况修改 /etc/nginx/nginx.
2017-10-02 17:48:46
350
原创 PHP实现微信支付功能开发+实例代码
PHP微信支付开发实例作者:xy2204这篇文章主要为大家详细介绍了PHP微信支付开发过程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下PHP微信支付开发过程,分享给大家,供大家参考,具体内容如下1.开发环境 Thinkphp 3.2.3 微信:服务号,已认证 开发域名:http://test.paywechat.com (自定义的域名,外网不可访问
2017-04-23 16:39:43
8606
原创 php+memcached实现定时静态页面生成
<?php header('content-type:text/html;charset="utf8"'); error_reporting(E_ALL^E_NOTICE^E_WARNING); $memcache = new Memcache(); $memcache->connect('localhost','11211')or die('Memcached连接失败'); //定义一
2017-04-22 15:46:45
644
原创 php window环境下扩展memcached实现页面缓存
一、安装部分(一)、下载并安装memcached服务器端软件32位64位:www.newasp.net/soft/63735.html解压压缩包到指定目录 2、安装memcached 以管理员身份运行 cmd.exe 如果不是管理员可以切换到管理员权限 并转至memcached所在文件夹。并安装me
2017-04-22 11:26:45
1222
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人