自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 MySQL一个200G的大表 该如何优化SQL查询操作

链接:

2023-02-11 16:19:29 151

原创 Elasticsearch Es linux搭建到查询碰到的问题

ikik选择很简单elasticsearch-analysis-ik注意:需对应自己安装的es版本去选择对应的ik。高版本不向下兼容剩下的可视化kibana根据自己喜好或者方式选择相对可视化方案,若选择kibana也注意版本问题。装上之后再根据ik配置相对调整eses安装略过。安装教程就可以查询一般查询建索引等等。。映射时指定字段分词器,搜索分词器,按需指定。权重问题,可以设置字段权重(新手注意),这样就面对一些关联型数据库难以解决的问题。分词问题,若安装的分词器里面没有当前你的分词

2022-07-18 19:37:43 450

转载 Vue.nextTick()原理

JS运行机制(Event Loop)JS执行是单线程的,它是基于事件循环的。所有同步任务都在主线程上执行,形成一个执行栈。主线程之外,会存在一个任务队列,只要异步任务有了结果,就在任务队列中放置一个事件。当执行栈中的所有同步任务执行完后,就会读取任务队列。那些对应的异步任务,会结束等待状态,进入执行栈。主线程不断重复第三步。这里主线程的执行过程就是一个tick,而所有的异步结果都是通过任务队列来调度。Event Loop 分为宏任务和微任务,无论是执行宏任务还是微任务,完成后都会进入到一下ti

2021-12-16 18:29:03 196

原创 最近碰到的问题

微信浏览器缓存问题vue打包时生成hash的包绝一点的就是直接在nginx更改http响应,{expires-1;}永远不缓存剩下的设置html的meta呀网址加随机数啊等等。。。。都不管用!java和jsjava目前做项目也就是基础的CURD,高深的还没碰到,虽然出个问题也能研究半天但是没啥技术含量js用的是vue,期间碰到两个非常有意思的功能,一个是arraybuffer,另一个是wasm姑且这么叫,就是生成一份js能使用的其它包的api,差不多就是这么理解吧。不过研究失败了,ffmp

2021-11-29 11:09:54 1715

原创 HTTP协议之ETag

前言在HTTP1.1规范中,新增了一个HTTP头信息:ETag;协商缓存。作用Etag是 Entity tag的缩写,可以理解为“被请求变量的实体值”,Etag是服务端的一个资源的标识,在 HTTP 响应头中将其传送到客户端。所谓的服务端资源可以是一个Web页面,也可以是JSON或XML等。服务器单独负责判断记号是什么及其含义,并在HTTP响应头中将其传送到客户端。比如,浏览器第一次请求一个资源的时候,服务端给予返回,并且返回了ETag: “50b1c1d4f775c61:df3” 这样的字样给浏览器

2021-07-07 18:24:42 1294

原创 update批量更新数据

需求:批量更新不重复的值,一条一条更新太慢了function create_sql($display_order, $table_name){ $ids = implode(',', array_keys($display_order)); $sql = "UPDATE {$table_name} SET new_openid = CASE openid "; foreach ($display_order as $id => $ordinal) { $

2021-05-26 10:01:34 394

原创 最近面试整理

最近面试题整理(真的是八分之八十都挂在算法),当场写算法真的是太心累了,虽然很简单,但是面试时脑子一片空白。。。。。。。:1.数组求和,例如[1,2,3,4,5,6,7,5,8,9,4,1,4,5,5];算出和为6的值得下标,是真简单,之前还做过类似的,但是一写就忘了; var twoSum = function(nums, target) { let len = nums.length; // 创建 MAP const MAP = new M

2021-04-20 14:12:35 110

原创 ONLY_FULL_GROUP_BY

[42000][1055] Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column '********' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by这个问题是mysql5.7之后出现的问

2020-12-18 16:26:46 457 1

转载 服务器git仓库创建

点击查看git仓库是不显示提交的文件,展示的都是元数据,就是看不了

2020-12-15 16:40:15 254

原创 高并发配置

其实,对于 Nginx/Tomcat 等这种 Web 服务器,都提供了 backlog 参数设置入口,当然它们都会有默认值,通常这个默认值都不会太大(包括内核默认的半连接队列和全连接队列长度)。如果应用并发访问非常高,只增大应用层 backlog 是没有意义的,因为可能内核参数关于连接队列设置的都很小,一定要综合应用层 backlog 和内核参数一起看,通过公式很容易调整出正确的设置。...

2020-11-17 18:12:49 195

原创 vue双向绑定失效赋值失效

为什么会失效呢首先vue数据双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的实现方式是get和set方法然后是通过Object.defineProperty()来实现数据劫持的。然后呢要是,实现数据的双向绑定,首先要对数据进行劫持监听,因为写的代码没有被监听到,所以只能手动setthis.$set(obj,key,value)查找的资料:1.实现一个监听器Observer,用来劫持并监听所有属性,如果有变动的,就通知订阅者。2.实现一个订阅者Watche..

2020-11-12 18:54:32 1499

原创 加班无聊,写一篇最近技术分享

新工作,最近写起来了vue刚刚入手,谈谈感想。双向绑定:术语:vue的数据双向绑定主要通过Object.defineProperty()方法来进行数据劫持以及发布者-订阅模式来实现的;双向绑定:理解:就是改变js中data的值,实现html中赋值的修改,类似于php中laravel的blade模板赋值,哈哈哈,通过v-model。不过使用起来是真的方便,比传统的mvc,或者js直接修改dom层方便多了。不得不谈js的包真的是很多,记得公司的需求html生成pdf文档,当时用的PHP真是遇

2020-11-07 11:23:15 91

原创 nginx的动态分离

感觉这个词很高大上,看了一眼就是把PHP页面路由的东西扔给Apache或者phpfpm,通过反向代理方式。然后NGINX去处理静态html页面。。。。。。。。。。。。。。。

2020-08-18 18:08:21 89

原创 进程,协程,线程

进程是程序执行是的一个实例,进程能够分配给cpu和内存等资源。进程一般包括指令集和系统资源,其中指令集就是你的代码,系统资源就是指cpu、内存以及I/O等。进程是一个程序在一个数据集中的一次动态执行过程,可以简单理解为“正在执行的程序”,它是CPU资源分配和调度的独立单位。 进程一般由程序、数据集、进程控制块三部分组成。我们编写的程序用来描述进程要完成哪些功能以及如何完成;数据集则是程序在执行过程中所需要使用的资源;进程控制块用来记录进程的外部特征,描述进程的执行变化过程,系统可以利用它来控制和管理.

2020-08-18 17:56:07 96

转载 mysql什么情况下会触发表锁

锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。本章我们着重讨论MySQL锁机制的特点,常见的锁问题,以及解决MySQL锁问题的一些方法或建议。MySQL锁概述相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是

2020-06-13 01:08:16 2810 1

原创 php超时一般都是怎么造成的

1.代码问题如上传文件过大,时间不够导致,更改配置php文件,上传文件配置,记住一般nginx也有超时默认限制根据原因是否修改。2.重点访问量过大可能是由于nginx默认的fastcgi进程响应的缓冲区太小造成的, 这将导致fastcgi进程被挂起,如果你的fastcgi服务对这个挂起处理的不好, 那么最后就极有可能导致504 Gateway Time-out。在nginx.conf里, 加入: fastcgi_buffers 8 128k,缓冲区更改大一些。3.首先是更改php-fpm的几处.

2020-06-11 00:41:47 357

原创 nginx配置问题出现ERR_SSL_PROTOCOL_ERROR

https配置出现问题ERR_SSL_PROTOCOL_ERROR经过排查为修改server里面的 listen 443; 为 listen 443 default ssl; 保存,重启Nginx。完美解决!

2019-11-06 17:05:09 10623 1

原创 用redis获取附近的人~~~~

GEOADD---(将指定的地理空间位置(纬度、经度、名称)添加到指定的 key 中), 我们用这个命令将用户发表动态时的位置信息记录进 redis:key longitude latitude member [longitude latitude member ...]GEORADIUS---(以给定的经纬度为中心,返回键包含的位置元素当中,与中心的距离不超过给定最大距离的所有位置元素),k...

2019-11-03 16:52:01 328

原创 mysql中的UNSIGNED

字面意思有符号和无符号;无符号可以更多位一般整数都支持正负值,不过可以使用可选的属性UNSIGNED,使其不允许负值,这样的话,可以使用存储的正数上限提高一倍,比如TINYINT的范围由-128~127变为0~255。...

2019-11-03 16:06:32 187

原创 laravel接口空值返回null,更改返回值

涉及到sql查询数据时,字段值为空默认返回null,前端处理很麻烦,更改思路;设置中间件递归返回数据并返回‘’值。例子:<?phpnamespace App\Http\Middleware;use Closure;class ReplaceNull{ /** * Handle an incoming request. * * @p...

2019-08-29 13:25:15 1372

原创 PHP算法之斐波那契数列

斐波那契数列:1 1 2 3 5 8 13 21 34 55 …算法:前两个值都为1,该数列从第三位开始,每一位都是当前位前两位的和公式为:Fn = F(n-1) + F(n+1)F:指当前这个数列n:指数列的下标非递归写法:function fbnq($n){ //传入数列中数字的个数 if($n <= 0){ return...

2019-08-01 13:57:27 280

原创 简单的小程序接口安全认证

提供思路具体还是根据需求更改1.HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理。中间件认证以laravel为例: public function handle($request, Closure $next) { $re...

2019-07-15 14:43:50 1324

原创 php获取重定向网址

获取重定向之后网址function getrealurl($url){ $header = get_headers($url,1); if (strpos($header[0],'301') || strpos($header[0],'302')) { if(is_array($header['Location'])) { retur...

2019-04-25 16:42:59 703

转载 php 抓取 网页

我们在开发网络程序时,往往需要抓取非本地文件,一般情况下都是利用php模拟浏览器的访问,通过http请求访问url地址, 然后得到html源代码或者xml数据,得到数据我们不能直接输出,往往需要对内容进行提取,然后再进行格式化,以更加友好的方式显现出来。下面简单说一下php抓取页面的几种方法及原理:一、 PHP抓取页面的主要方法:file()函数 file_get_contents(...

2019-04-25 16:40:42 187

原创 二维数组按照值排序

array_multisort(array_column($redis_data['result'],'letter'),SORT_ASC,$redis_data['result']);

2019-03-18 16:43:52 231

原创 php中的 mysql_real_escape_string

数据库防止被攻击mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。下列字符受影响:\x00 \n \r \ ' " \x1a如果成功,则该函数返回被转义的字符串。如果失败,则返回 false。...

2019-01-09 10:49:22 249

原创 Laravel 的 optional 辅助函数

optional($user-&gt;profile)-&gt;address//$user-&gt;profile为空时不会报错返回空值 

2019-01-08 18:51:37 494

转载 nginx的配置文件解析

 今天有一位同学问到 Nginx 的站点多路径匹配的问题?1.www.domain.com/a 需要返回 /var/www/domain.com/a/index.html2.www.domain.com/b 需要返回 /var/www/domain.com/b/index.html如何配置 Nginx 使之生效?解决这个问题,第一的反映是直接使用 Nginx 的 locati...

2019-01-08 18:24:04 239

原创 php 加密机制

1.md5加密方式:现在不在流行,因为很多破解密码的站点都存放了很多经过MD5加密的密码字符串,算法相对简单。2.SHA256 和 SHA512用法:hash("sha256", $password);生成256和512长度的hash字符串。PHP内置了hash()函数,你只需要将加密方式传给hash()函数就好了。你可以直接指明sha256, sha512, md5, sha1等加密方式(其...

2019-01-08 17:49:52 195

转载 如何理解 Laravel 的 IoC 容器

1.依赖IOC( inversion of controller )叫做控制反转模式,也可以称为(dependency injection ) 依赖注入模式。要理解依赖注入的概念我们先理解下什么依赖//支付宝支付class Alipay { public function __construct(){} public function pay() ...

2018-12-26 21:01:43 93

原创 令人困惑的strtotime

令人困惑的strtotime本文地址:http://www.laruence.com/2018/07/31/3207.html经常会有人被strtotime结合-1 month, +1 month, next month的时候搞得很困惑, 然后就会觉得这个函数有点不那么靠谱, 动不动就出问题. 用的时候就会很慌…这不, 刚刚就有人在微博上又问我:鸟哥,今天是2018-07-31 ...

2018-12-25 00:24:33 96

转载 php设计模式遵循的原则

在讨论面向对象编程和模式(具体一点来说,设计模式)的时候,我们需要一些标准来对设计的好还进行判断,或者说应该遵循怎样的原则和指导方针。现在,我们就来了解下这些原则:单一职责原则(S) 开闭原则(O) 里氏替换原则(L) 接口隔离原则(I) 依赖倒置原则(D) 合成复用原则 及迪米特法则(最少知道原则)本文将涵盖 SOLID + 合成复用原则的讲解及示例,迪米特法则以扩展阅读形...

2018-12-25 00:19:34 213

原创 php数组中array_reduce

array_reduce( $arr , callable $callback ) 使用回调函数迭代地将数组简化为单一的值。其中$arr 为输入数组,$callback($result , $value)接受两个参数,$result为上一次迭代产生的值,$value是当前迭代的值。 ...

2018-12-24 23:54:33 128

原创 php获取指定键名方法

function newOnlyKeys($array, $keys) { //array_intersect_key 使用键名比较计算数组的交集 r 然后再用array_flip筛选出制定数据 return array_intersect_key($array, array_flip($keys));//return array_diff_key 这个是返回移除指定键名...

2018-12-24 23:40:16 1594

原创 php数组中extract()函数

&lt;?php$array = [ 'clothes' =&gt; 't-shirt', 'size' =&gt; 'medium', 'color' =&gt; 'blue',];extract($array);echo $clothes, ' ', $size, ' ', $color;extract 把数组中key的值当成变量输出values ...

2018-12-16 18:15:16 287

转载 php订单算法

$order = [ ['product_id' =&gt; 1, 'price' =&gt; 99, 'count' =&gt; 1], ['product_id' =&gt; 2, 'price' =&gt; 50, 'count' =&gt; 2], ['product_id' =&gt; 2, 'price' =&gt; 17, 'count' =&gt; 3],...

2018-12-14 00:22:59 675

原创 php数组中的compact

extract() 函数的逆操作是 compact() 函数,用于通过变量名创建关联数组我的理解是把变量和值组成数组,key为变量值,value为变量的值

2018-12-13 23:47:40 129

原创 php 数组中list

$arrays = [[1, 2], [3, 4], [5, 6]];foreach ($arrays as list($a, $b)) { //$a=$arrays里面的1,3,5 $c = $a + $b; echo $c, ', ';}list() 还可用于 foreach 遍历,这种用法更能发挥这个语言结构的优势:注意:list() 语言结构仅适用于...

2018-12-13 23:40:07 503

原创 PHP队列作用

1.异步2.重试

2018-09-19 15:26:55 429

空空如也

空空如也

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

TA关注的人

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