自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 如何处理消费过程中的重复消息?

在消息传递过程中,如果出现传递失败的情况,发送方会执行重试,重试的过程中就有可能会产生重复的消息。对使用消息队列的业务系统来说,如果没有对重复消息进行处理,就有可能会导致系统的数据出现错误。比如说,一个消费订单消息,统计下单金额的微服务,如果没有正确处理重复消息,那就会出现重复统计,导致统计结果错误。你可能会问,如果消息队列本身能保证消息不重复,那应用程序的实现不就简单了?那有没有消息队列能保证消息不重复呢?消息重复的情况必然存在在 MQTT 协议中,给出了三种传递消息时能够提供的服务质量标

2021-01-13 11:18:03 3

原创 php 面试【综合问题】

1、假如你是技术组长? 如何提高团队效率?2、web不安全因素有哪些? 分别如何防范?3、php在2011年底出现hash碰撞,hash碰撞原理为? 如何进行修复?4、session和cookie生存周期区别? 存储位置区别?5、给你两个路径a和b,写一个算法或思路计算a和b差距几层并显示a和b的交集?6、从你的经验方面谈一下如何构建高性能web站点? 需要哪些环节? 步骤? 每个步骤需要注意什么如何优化等?7、如果你是技术组长,所带团队任务进度无法完成你该如何解决?8、如果在进

2020-11-12 18:45:36 15

原创 php面试【相关问题】

1.看简历会问一些过去做的项目的用户量、pv、吞吐量、相关难点和解决方法等其他问题2.数据库相关设计经验,为什么要进行分表、分库?原因是什么?目的是什么?一般多少数据量开始分表? 什么是数据库垂直拆分? 水平拆分? 分区等等?可以举例说明3.数据库优化有哪些? 分别需要注意什么?4.web开发方面会遇到哪些缓存? 分别如何优化?5.给你256M的内存,对10G的文件进行排序(文件每行1个数字),如何实现? 对10G的文件进行查找如何实现? 统计10G文件每个关键字出现的次数如何实现?6...

2020-11-12 18:28:25 28

原创 MAC brew安装和卸载redis

安装卸载安装之前,电脑必须安装homebrew,homebrew是mac系统下特别好用的一个软件包工具,而且它的安装也是极为简单。网上有很多人直接给出了homebrew的安装命令,但是大部分的地址已经失效。在homebrew网站上http://brew.sh/,正中间就是homebrew的安装命令,直接复制到你的终端里执行就可以了。/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/..

2020-10-28 17:04:14 138

原创 SQL基础-常用关键字

DDL(Data Definition Languages)数据定义语言,常用关键字包括create、drop、alter等0.连接数据库$mysql -u root -pconnection id 表示的是连接次数1.创建数据库 CREATE DATABASE dnname2.默认的数据库information_schema:主要存储了系统中的一些数据库对象信息,如用户表信...

2019-12-20 19:07:54 198

原创 Mac fliqlo 时钟屏保

fliqlo下载链接链接:https://pan.baidu.com/s/1YUp1UsfsR51cB8LTSoN0Uw密码:us18安装步骤:1、直接下载并安装2、双击saver进行安装3、安装过程中提示不信任,需要去设置中,安全中进行点击信任安装4、在屏保中进行设置5、设置成功...

2019-12-01 22:49:48 3130

原创 Git配置用户名、邮箱、密码

配置用户名:usernamegit config --global user.name username配置邮箱:user@emailgit config --global user.email user@email配置密码git config --global credential.helper store该命令会记住密码,执行一次git pull或...

2019-10-15 21:47:36 465

原创 php经典算法面试题

1、一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去…,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大王。要求编程模拟此过程,输入m、n, 输出最后那个大王的编号。function king($n, $m){ $monkeys = range(1, $n); //创建1...

2019-10-08 13:24:48 92

原创 PHP7新特性

1、太空船操作符“<=>”echo 1 <=> 1;// 0echo 1 <=> 2;// -1echo 2 <=> 1;//12、变量类型声明和返回值类型声明declare(strict_types=1);//开启严格模式function sum(int ...$ints){ return array_sum($in...

2019-07-12 12:19:12 97

转载 Mac terminal下解压缩命令大全

tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf FileName.t...

2019-06-28 17:40:45 1457

原创 404错误含义

想必,各位都曾有过以下经历,本想打开网页浏览资讯,怎料出现的却是个“404”?不用怀疑,你的页免丢失了。那么,“404”除了代表你所要浏览的页面丢失外,你可知它的产生原理?不仅如此,在庞大的互联网中除了404还有哪些HTTP状态码又分别代表着什么?正如上面所述,404是一种标准的HTTP返回代码,官方称其为HTTP状态码,用来表示网页服务器HTTP的响应状态。由于网站日志通常会...

2019-06-25 17:10:36 55363 1

转载 Nginx下的Rewrite

一.正则表达式匹配,其中:* ~ 为区分大小写匹配* ~* 为不区分大小写匹配* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配二.文件及目录匹配,其中:* -f和!-f用来判断是否存在文件* -d和!-d用来判断是否存在目录* -e和!-e用来判断是否存在文件或目录* -x和!-x用来判断文件是否可执行三.rewrite指令的最后一项参数为flag标记,flag标记有:...

2019-06-25 15:41:50 177

原创 Mac 下 Homebrew 相关命令

brew –help 查看brew的帮助brew install git 安装软件brew uninstall git 卸载软件brew search git 搜索软件brew list 显示已经安装软件列表brew update. 更新软件,把所有的Formula目录更新,并且会对本机已经安装并有更新的软件用*标明。brew upgrade git. ...

2019-06-24 18:54:37 423

原创 Mac 使用homebrew启动PHP环境命令

Homebrew是一款超级好用的包管理工具,可以实现快速搭建各种开发环境。1、如果没有安装brew,可以执行一下命令进行安装。/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2、安装Nginxbrew install nginx配...

2019-06-24 18:52:38 3326

原创 Mac Tunnelblick 安装

在Mac需要用的VPN的时候,大家会遇到好多问题,找了好多Mac的软件使用不了,下面小编就为大家提供一下最近刚安装成功的案例,公司内部使用,供大家参考学习。最让人头疼的是找了好多相关版本的Tunnelblick进行安装,好多都是无法使用,或者是软件损坏的,下面为大家提供一个已经亲身使用的版本,下面为大家提供一个。百度云下载链接:https://pan.baidu.com/s/1dJ5b2Z...

2019-06-21 16:08:38 37388 14

原创 Mac应用无法打开或文件损坏的处理方法

有些用户下载了一些程序之后,却发现无法在MAC中安装,安装时会弹出下图所示警告框:“打不开 xxx,因为它来自身份不明的开发者”。那么该如何解决这个问题呢?在MAC下安装一些软件时提示"来自身份不明开发者",其实这是MAC新系统启用了新的安全机制。默认只信任Mac App Store下载的软件和拥有开发者 ID 签名的应用程序。换句话说就是 MAC 系统默认只能安装靠谱渠道(有苹果审核...

2019-06-20 14:18:43 5632 1

原创 Mac 安装 Navicat 可视化工具

先为大家推荐一个很好的网址,下载Mac常用软件,拿去不谢~~mac破解软件下载地址:https://xclient.info/1、先通过网址搜索下载选择的Navicat安装包,在这里我选择的是以下这个版本2、下载完成后,进行解压,直接双击进行安装3、将Navicat拖进文件夹4、就这样安装完成,进行使用吧。常见问题如遇:「xxx.app已损坏,打不...

2019-06-20 12:12:37 10657 2

原创 Mac item2常用快捷键

标签 新建标签:command + t 关闭标签:command + w 切换标签:command + 数字 command + 左右方向键 切换全屏:command + enter 查找:command + f 分屏 垂直分屏:command + d 水平分屏:command + shift + d 切换屏幕:comma...

2019-06-19 19:20:18 216

原创 Mac 安装Phpstorm

首先给大家推荐一个比较好的软件下载网站,都是破译的哦网站名称:爱情守望者网址:https://www.waitsun.com/phpstorm破解地址:http://idea.lanyus.com/根据以下步骤可破解成功,小编亲自测试~1、可以在这里选择下载自己需要安装的phpstorm版本2、下载完成后可直接点击进行安装(傻瓜式安装)3、安装到需要注册码的时候,选择中...

2019-06-19 16:12:05 2853

原创 Mac 平台搭建PHP开发环境:Nginx、PHP、mysql

homebrew软件包工具homebrew是mac系统下特别好用的一个软件包工具,而且它的安装也是极为简单。网上有很多人直接给出了homebrew的安装命令,但是大部分的地址已经失效。在homebrew网站上http://brew.sh/,正中间就是homebrew的安装命令,直接复制到你的终端里执行就可以了。/usr/bin/ruby -e "$(curl -fsSL http...

2019-06-19 16:11:35 1123

原创 phpexcel如何读和写大于26列的excel

主要运用到PHPExcel_Cell类的两个方法1读取excel大于26列时,由列名转化为列索引数字PHPExcel_Cell::columnIndexFromString($highestColumm)://由列名转化为列索引数字 'A->0,Z->25' 1、计算出总列数,获得最多的列数,返回列名的大写字母$highestColumm = $sheet-&gt...

2019-06-19 10:49:53 368

原创 jquery获取图片的大小、宽度、高度以及上传

以前项目中遇到的问题,简单的说下解决过程,网上搜了一部分代码及解决方案,都没有太成功,下面是自己解决后台的实现方式供大家参考。获取图片信息和上传图片的步骤:1、html必须要有一个按钮来上传图片,用于存放input选择的file文件信息。2、通过上传图片信息判断图片的大小,也可以按自己的需求写相应的验证,这里不多解释了。3、把 file 图片文件转化成base64的格式,利用 jq...

2019-06-14 17:36:20 3056

原创 go语言特性

强类型静态编译型语言。 更丰富的内置类型 关键在于内置,像map、slice这些常用的数据类型,内置于builtin,默认包含,无需自己添加。 函数多返回值 多值返回仅动态语言Python有此特性 在C中如果想返回多个值,通常会在调用函数中分配返回值的空间,并将返回值的指针传给被调函数。Go的做法是在传入的参数之上留了两个空位,被调者直接将返回值放在这两空位。Go是使用栈空间...

2019-06-04 16:01:44 649

转载 PHP底层运行机制与原理

PHP用起来感觉很简单方便,但是要精通PHP,熟悉底层的工作原理也有必要的。1 PHP的设计理念及特点 多进程模型:由于PHP是多进程模型,不同请求间互不干涉,这样保证了一个请求挂掉不会对全盘服务造成影响,当然,时代发展,PHP也早已支持多线程模型。 弱类型语言:和C/C++、Java、C#等语言不同,PHP是一门弱类型语言。一个变量的类型并不是一开始就确定不变,运行中才会确...

2019-06-03 18:44:42 948

原创 Windows安装go和goland开发环境

安装gogo安装包下载地址:https://golang.google.cn/dl/1、根据不同的操作系统,下载对应的安装包,在这里只讲述Windows安装,使用go1.9.2.windows-386.msi版本2、傻瓜式安装,选择好自己对应的安装路径打开CMD,输入 go version,如下显示说明go运行环境已经安装成功3、配置相应的环境变量,根据自身安装的位...

2019-05-31 12:08:21 2843

原创 mysql大数据量新增字段的影响有那些?

mysql增加字段相信码农应该都不陌生,随手就可以写出来, sql如下:ALTER TABLE tbl_tpl ADD title(255) DEFAULT '' COMMENT '标题' AFTER id;但是线上的一张表如果数据量很大,执行加字段操作就会锁表,这个过程可能需要很长时间甚至导致服务崩溃,那么这样操作就很有风险了。都有那些影响: mysql 对写进行锁操作 ...

2019-05-31 11:29:58 4974 2

原创 跨域资源共享CORS详解

CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。一、简介CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。整个CORS通信过程,都是浏览器自动完成,不需要用户参与。对...

2019-05-28 10:14:48 593

原创 git常用命令

本文主要是总结有关git命令的一些常规使用方法,供大家学习参考。1、gitignore规则不生效.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:git rm -r --cached .git add .git comm...

2019-05-21 11:55:53 55

原创 linux下php中redis扩展安装

首先去下载对应的安装包,当前使用的是4.3.0版本解压文件tar -zxvf redis-4.3.0.tgz进入解压文件夹cd redis-4.3.0指定当前使用的php-config文件./configure --with-php-config=/opt/webserver/php7/bin/php-config进行安装,一定要按顺序执行make ...

2019-05-21 10:11:35 147

原创 linux下安装php的yaf扩展

下载yaf扩展安装包,目前用yaf-3.0.5版本安装tar zxvf yaf-3.0.5.tgz //解压cd yaf-3.0.5 //进入whereis phpize //找出phpize/opt/webserver/php7/bin/phpize ...

2019-05-20 17:23:41 227

原创 linux下php7源码安装教程

本人自测安装,可正常使用首先下载对应的安装包,这里拿7.2版本来做安装说明。解压php-7.2.0.tar.gz 然后进入目录,编译。命令如下:$ tar -zxvf php-7.2.0.tar.gz进入文件夹$ cd php-7.2.0配置扩展'./configure' '--prefix=/opt/webserver/php7' '--with-cur...

2019-05-20 16:25:30 490

转载 渗透之——SQL注入绕过技术总结

1.绕过空格(注释符/* */,%a0)两个空格代替一个空格,用Tab代替空格,%a0=空格:%20 %09 %0a %0b %0c %0d %a0 %00 /**/  /*!*/最基本的绕过方法,用注释替换空格:/*  注释 */使用浮点数:    select * from users where id=8E0union select 1,2,3    select ...

2019-01-16 17:35:47 3324

转载 cron和crontab命令详解

cron机制        cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制crontab参数        -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab        crontab -u 使用者名称        -l:可以列出crontab的内容        -r...

2019-01-11 16:27:22 4969

转载 Redis 作为图数据库

1. 简介Redis 在 4.0 中正式支持了Module模块系统,使其可以进行丰富的扩展图数据库的应用越来越广泛,RedisGraph 就是一个 Redis Module,可以将 Redis 变为一个高性能的图数据库图数据库中的2个核心概念:点、边点 用来描述实体,边 用来描述实体间的关系实体有多个属性,Redis 中的 Hash 结构就是存储实体的最佳选择,图中的一个节点就...

2019-01-03 18:08:26 1292

转载 Redis分布式锁

        一、加锁原因在一些比较高并发的业务场景,经常听到通过加锁的方法实现线程安全。1.1 加锁方式数据库锁数据库本身提供了锁机制,比如乐观锁、悲观锁等等。下面给出我之前写的一篇博客,介绍一下mysql数据库的锁机制Mysql的锁机制单体环境Java线程层面,Java的jdk本身就提供了,比如synchronized和ReentrantLock可重入锁。这是实现单...

2018-12-10 12:00:19 71

原创 Mysql索引命令、优缺点、注意事项

创建表时简历索引1、建表同时建立单索引CREATE TABLE t_user1(id INT ,userName VARCHAR(20),PASSWORD VARCHAR(20),INDEX (userName) #关键字INDEX);2、建表同时建立唯一索引(可以是单或多)CREATE TABLE t_user2(id INT ,userName VARCHAR(2...

2018-12-10 11:31:07 126

原创 MySQL各种加锁案例分析

目录InnoDB 锁类型InnoDB MVCC简要事务隔离级别SQL加锁分析(主题)死锁举例分析InnoDB锁类型InnoDB Lock Types❖Shared and Exclusive Locks❖Intention Locks❖Record Locks❖Gap Locks❖Next-Key Locks❖Insert Intention Locks...

2018-12-04 18:15:14 3668

原创 redis持久化的RDB、AOF优缺点及常用配置

1、简介Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”...

2018-12-03 15:37:55 314

原创 Time Wait的作用、原因、影响和如何避免

TIME_WAIT示例图:1、 time_wait的作用:TIME_WAIT状态存在的理由:1)可靠地实现TCP全双工连接的终止   在进行关闭连接四次挥手协议时,最后的ACK是由主动关闭端发出的,如果这个最终的ACK丢失,服务器将重发最终的FIN,因此客户端必须维护状态信息允许它重发最终的ACK。如果不维持这个状态信息,那么客户端将响应RST分节,服务器将此分节解释成一个错误(...

2018-12-03 10:34:21 626

原创 Redis常用命令大全

doc 环境下使用命令:     keys 命令        ?    匹配一个字符        *    匹配任意个(包括0个)字符        []    匹配括号间的任一个字符,可以使用 "-" 符号表示一个范围,如 a[b-d] 可以匹配 "ab","ac","ad"        \x    匹配字符x,用于转义符号,如果要匹配 "?" 就需要使用 \?     判...

2018-11-30 10:03:57 8526

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除