老是描述不清楚进程、线程、协程的概念。属于脑子里面有。但是说也说不出来。今天记录一下相关概念 进程 概念 在计算机中,进程(Process)是指正在运行的一个程序的实例...
之前写过一篇关于 促销系统的设计 中提到了秒杀/直减/聚划算,但在实际工作中,并没有真的做过秒杀系统,所以假想了一个简单的秒杀系统来”解解馋“,促销思路依旧顺延之前...
三个概念 在解释这四个验证规则前,需要明晰三个概念——空值(empty)、输入数据(input data)和验证字段(filed under validation)。 空值 在 Laravel 中,一个字段值...
前言 本文 GitBook 地址: https://www.gitbook.com/book/leoyang90/lar... 当路由与请求进行正则匹配后,各个路由的参数就获得了它们各自的数值。然而,有些路由参数变...
[图片] 因为之前的项目里没有高并发的场景 属于小项目或者是自己练习的项目 所以对数据库锁的定义有些不太理解 这个sharedLock() 共享锁 和 lockForUpdate() 更新锁 是谁...
悲观锁 当我们要对数据库中的一条数据进行修改的时候,为了避免同时被其他人修改,最好的办法就是直接对该数据进行加锁以防止并发。这种借助数据库锁机制在修改数据之前...
在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。...
[图片] 您在此之前可能就已经缓存过模型数据,但是我将向您展示一个使用动态记录模型的更精细的Laravel模型缓存技术,这是我一开始在 RailsCasts学习到的技术。 使用模型...
1. 什么是中间件? 对于一个Web应用来说,在一个请求真正处理前,我们可能会对请求做各种各样的判断,然后才可以让它继续传递到更深层次中。而如果我们用if else这样子来...
简介 Laravel 中间件提供了一种方便的机制来过滤进入应用的 HTTP 请求, 如ValidatePostSize用来验证POST请求体大小、ThrottleRequests用于限制请求频率等。 那Laravel的...
中间件介绍 HTTP 中间件提供了一个方便的机制来过滤进入应用程序的 HTTP 请求,例如,Auth 中间件验证用户的身份,如果未通过身份验证中间件会把用户导向登录页面,反之,会继...
两三年前做过类似于微信『附近的人』功能,就是基于地理位置信息算出离你最近的人。当时使用的是 MongoDB 的 $near 方案,在已经存入用户坐标后,使用类似以下代码算出来...
设置 Redis 为缓存驱动后,Cache::get('xx') 和 Redis::get('xx') 有何区别?Cache::put('test', '1', 10);,Redis::get('test') 值不是 1,Cache 和 Redis 是相互独立的...
确实是不知道有啥行业好干的,但这几年一直干耗下去也没法找到出路,或者趁着年纪还不算太大,各行各业都考虑下,程序员真的太累了,我没信心,再过两年还能坚持,还能卷...
Laravel5.5更新,通过Laravel5.5开发Api更加顺畅了,在这里就分享一下Laravel开发Api的经验吧 1.封装返回的统一消息 返回的自定义消息,和错误消息,我自己封装了一个Tra...
四种模式使用总结 [图片] 注意和备注说明 请求前认证用户:比如我们在使用weibo和QQ第三方登录时,要求先登录weibo和qq后在授权。 code:有效期默认为十分钟。 redirect_u...
通过 composer 安装 "require": { "jpush/jpush": "v3.5.*" } 然后运行 composer install 基本概念 platform 推送平台设置,目前支持 ios, android, winphone audienc...
我们在开发针对国内运营的时候进行需要使用过程的几家推送,极光推送则是其中之一。这个包就可以让你方便的在你构件的 Laravel 应用中进行极光推送的使用。 GitHub: http...
[图片] 需求概述 我们在开发 Laravel 应用项目地时候,经常会用到“推送”,Laravel 自带了 Pusher 进行推送,但是国内环境大家都懂!所以这里以集成极光推送为例。 依赖极...
[图片] 背景 首先说一下我写这篇文章的初衷,在我们打算使用 Laravel Queue 的时候,你的首选应该是去看文档,但是无奈 Laravel 的文档很多地方写得太简单,有时候想了解...
我知道linux 可以用 crontab 服务。windows 可以使用计划任务。主要是我感觉这计划任务执行不稳定,有时候能成功,有时候又不能成功,所以我想能安装一个软件,专门执行...
简单配置一下: vim /etc/supervisor/config/websockets.config [program:websockets] command=/usr/bin/php /home/sollado/server/artisan websockets:serve numprocs=1...
public function toMail($notifiable) { $key = str_random(15); $expiredAt = now()->addMinutes(10); Cache::put($key, ['email' => $notifiable->email], $e...
队列 使用队列可以异步执行消耗时间的任务,降低请求响应时间 配置队列 队列配置信息文件 config/queue.php 其中包含了所支持的队列驱动 在 .env 中修改所配置的队列驱动...
最近有朋友有朋友问laravel队列的实现原理和经验,刚好用过所以整理了一下分享给大家。 laravel队列配置参见:http://learnku.com/docs/laravel/5.1/queues 原理分析 创建...
场景:用户界面有一个 ver 版本的字段,是自动的,由用户可选,用户提交后,根据 body 内容判断是 V1 还是 V2,并给 $_POST['ver] 赋值。 办法:经过搜索,发现 Request...
框架使用的 laravel5.2,包使用的是 maatwebsite/excel 在maatwebsite/excel文档中说明要导出pdf需要下载依赖包 "dompdf/dompdf": " ~0.6.1",可以导出pdf但是中文是乱码...
$size= (int)$request->size; $page= (int)$request->page; if(empty($page)) $page =1; if(empty($size)) $size =10; $ofsset = $size * ($page -1); // var_dump...
导读:本人初次写博客,有不足之处,请多多指教 。 起因 因为项目中有需求,要动态的生成一些图片,图片的格式要求也比较严格就像是这样的 [图片] 表格中的数据如 单价...
通过 PHPCD.vim 这个 nvim 的插件, 我们可以将我们的 nvim 打造成不次于 PHPStorm 的 IDE. 像"Goto definition"/"Auto Completion"此类 IDE 功能一应俱全. DEMO [图片]...
User::with('posts')->get(); 我想这个posts的内容和外面的user的内容同级,这样就不用在api输出的时候还要自己循环一遍再输出内容,有没有办法
背景 在我们日常开发中,「洗数据」这个词儿可能听的比较多(至少在我们公司是这样的)。作为一个互联网公司呆上几年的老兵,都不好意思说自己没洗过数据。那么哪些情况...
为什么每次电脑第一次开机,执行php artisan serve就提示Failed to listen on 127.0.0.1:8000,重新启动一次电脑就没有问题,总不能每天开机一次然后再重启一次吧,最近...
开发过程中,我们往往需要对用户提交的数据进行验证,以保证数据的合法性和完整性。今天我们就来介绍 Go 语言社区推出的一个验证包 —— validator。 validator 包根据 tag...
大家mac 系统 都在用什么工具连接服务器,类似xshell 的工具
Github 地址:github.com/johnlui/DIY-Search-Engi... [图片] 运行方法 首先,给自己准备一杯咖啡。 把本项目下载到本地编译:go build -o ese *.go修改配置文件:cp .en...
简介 在上一篇文章《Redis 实用小技巧—— bitmap 应用之「布隆过滤器」》中,我们了解到了「布隆过滤器」的原理和简单的实现。在接下来的文章中,我们再来介绍一个「布隆...
简介 在上一篇文章《Redis 实用小技巧—— bitmap 应用之「缓存穿透」问题的处理》中,我们了解到了「缓存穿透」的原理以及如何通过「布隆过滤器」来解决这种问题。在接下...
简介 本篇文章我们来聊一聊通联的一款支付产品 —— 汇入金。 为了满足客户大额支付需求,丰富客户的支付渠道,同时解决通道限额等问题,通联推出大额支付产品:汇入金。...
子进程 一个进程在执行 系统函数fork()后, 会生成一个新进程。 被称为子进程。而原来的进程被称为父进程。新创建的子进程几乎与父进程相同,包括代码和数据段、堆、共享...
我要举报该,理由是: