ASCWH

最新文章

01-06

git WebHooks 简单的同步脚本

git WebHooks 简单的同步脚本
// 接收POST过来的信息 $json = file_get_contents('php://input'); $data = json_decode($json, true); // 你的项目路径 $paths = [ 'master' => '/wwwroot/master/', 'develop' => '/wwwroot/develop/', ]; // 获取分支名 $ref = explode('/', $data['ref']); $branch = end($ref); $path = $paths[$branch]; // 当前分支路径 $access_token = ''; $client_token = $data['password']; logs('Start',$json); // 验证token 有错就写进日志并退出 if ($client_token !== $access_token) { logs('验证token',$access_token); exit('Invalid token [403]'...

PHP

1,087 阅读
01月06日
1,087 阅读
0 评论
12-28

各种锁

各种锁
乐观锁分为三个阶段:数据读取、写入校验、数据写入。假设数据一般情况下不会造成冲突,只有在数据进行提交更新时,才会正式对数据的冲突与否进行检测,如果发现冲突了,则返回错误信息,让用户决定如何去做。fail-fast机制。悲观锁正如其名,它指对数据被外界(可能是本机的其他事务,也可能是来自其它服务器的事务处理)的修改持保守态度。在整个数据处理过程中,将数据处于锁定状态。悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是长事务而言,这样的开销往往无法承受。分布式锁分布式集群中,对锁接口QPS性能要求很高,单台服务器满足不了要求,可以考虑将锁服务部署在独立的分布式系统中,比如借助分布式缓存来实现。可重入锁可重入锁,也叫做递归锁,是指在同一个线程在调外层方法获取锁的时候,再进入内层方法会自动获取锁。ReentrantLock 和synchronized 都是 可重入锁。可重入锁的一个好处是可一定程度避免死锁。自旋锁自旋锁是采用让当前线程不停地在循环体内执行,当循环...

PHP

1,214 阅读
12月28日
1,214 阅读
0 评论
12-16

拖拽插件SortableJS 配置项

拖拽插件SortableJS 配置项
var sortable = new Sortable(el, { group: "name", // or { name: "...", pull: [true, false, 'clone', array], put: [true, false, array] } sort: true, // boolean 定义是否列表单元是否可以在列表容器内进行拖拽排序 delay: 0, // number 定义鼠标选中列表单元可以开始拖动的延迟时间; touchStartThreshold: 0, // px, how many pixels the point should move before cancelling a delayed drag event disabled: false, // boolean 定义是否此sortable对象是否可用,为true时s...

PHP

1,307 阅读
12月16日
1,307 阅读
0 评论
11-27

MySQL 事务隔离级别

MySQL 事务隔离级别
数据库提供的四种隔离级别:01:Read uncommitted(读未提交):最低级别,任何情况都会发生。02:Read Committed(读已提交):可避免脏读的发生。03:Repeatable read(可重复读):可避免脏读、不可重复读的发生。04:Serializable(串行化):避免脏读、不可重复读,幻读的发生。 注: 四种隔离级别最高:Seralizable级别,最低的是Read uncommitted级别; 级别越高,执行效率就越低; 隔离级别的设置只对当前链接有效,对JDBC操作数据库来说,一个Connection对象相当于一个链接,只对该Connection对象设置的隔离级别只对该connection对象有效,与其它链接connection对象无关。01:Mysql的默认隔离级别是:可重复读:Repeatable read;02:oracle数据库中,只支持seralizable(串行化)级别和Read committed();默认的是Read committed级别;下面就四种隔离级别进行场景设计:01: Read uncommitted 读未提交; 公司...

MySQL

1,027 阅读
11月27日
1,027 阅读
0 评论
11-25

ThinkPHP5.1+ Swoole 实现 websocket

ThinkPHP5.1+ Swoole 实现 websocket
SwooleSwoole是一个面向生产环境的 PHP 异步网络通信引擎。使 PHP 开发人员可以编写高性能的异步并发 TCP、UDP、Unix Socket、HTTP,WebSocket 服务。安装首先按照Swoole官网说明安装swoole扩展,然后安装think-swoole扩展。composer require topthink/think-swoole=2.0.*安装之后会在 config 目录下生成两个配置文件 swoole.phpswoole_server.php两者 作用不用 http 跟 socket使用 socket 看 swoole_server.php这是默认配置return [ // 扩展自身配置 'host' => '0.0.0.0', // 监听地址 'port' => 9501, // 监听端口 'type' => 'socket', // 服务类型 支持 socket http server 'mode' => SWOO...

PHP

1,440 阅读
11月25日
1,440 阅读
0 评论
11-12

Mac 下brew 服务管理 brew services

Mac 下brew 服务管理 brew services
brew services 用来管理各种服务的启停安装brew install mongodb-community 启动,并且注册开机自启brew services start mongodb-community 启动,不注册自启brew services run mongodb-community停止,已经注册过的话会取消brew services stop mongodb-community重启,并且注册开机自启brew services restart mongodb-community查看brew安装的服务状态brew services list清除已经卸载应用的无用配置brew services cleanup注册服务注册开机自启后,会创建.plist文件,该文件包含版本信息、编码、安装路径、启动位置、日志路径等信息,取消自启动后会自动删除,执行 brew services list 可以看到各个服务该文件的存放位置.plist存放目录开机自启存放目录/Library/LaunchDaemons/用户登录后自启存放目录~/Library/LaunchDaemons/

工具

1,027 阅读
11月12日
1,027 阅读
0 评论
11-04

PHP 数据压缩

PHP 数据压缩
function func_is_base64($str) { return $str == base64_encode(base64_decode($str)) ? true : false; } function func_gzcompress($str, $level = 9) { if (!func_is_base64($str)) { return base64_encode(gzcompress($str, $level)); } return $str; } function func_gzuncompress($str) { if (func_is_base64($str)) { return gzuncompress(base64_decode($str)); } return $str; }缩的方法除了gzcompress之外,还有gzdeflat...

PHP

1,067 阅读
11月04日
1,067 阅读
0 评论
10-13

MacOS 终端工具 iTerm2 被发现一个存在 7 年的重大漏洞

MacOS 终端工具 iTerm2 被发现一个存在 7 年的重大漏洞
此漏洞会允许攻击者在用户电脑上远程执行命令,Mozilla 提醒用户应该立即主动升级软件。iTerm2 是非常流行的终端模拟器,被许多开发者与系统管理员广泛使用,不少人甚至会用它来处理一些不受信任的数据,因此 MOSS(Mozilla Open Source Support Program) 这次选了 iTerm2,并委托 ROS(Radially Open Security)进行安全审核工作。据了解,这个漏洞在 iTerm2 中已存在长达 7 年,目前分配到的编号为 CVE-2019-9535。这个漏洞可以让攻击者在使用者电脑上执行命令。说起漏洞,iTerm2 这个重大的安全漏洞由 MOSS 资助的安全审核团队发现,MOSS 于 2015 年成立,从那时起就开始为开源开发者提供资金支持、协助开源与自由软件的发展。同时还支持开源技术的安全审核,MOSS 的资金正是来自 Mozilla 基金会,以确保开源生态健康发展。ROS 发现 iTerm2 中的 tmux 整合功能有严重的漏洞,而且漏洞至少已经存在 7 年。简单来说,在大多数情况下,允许攻击者可对终端产生输出,也就是能在用户的...

工具,新闻资讯

996 阅读
10月13日
996 阅读
0 评论
10-11

Mac 启用自带的 VNC 客户端

Mac 启用自带的 VNC 客户端
Mac 有 VNC 客户端??神奇…………只是有点深,其路径为 /System/Library/CoreServices/Applications/Screen Sharing.app使用 spotlight(聚焦搜索) 或 alfred 的搜索 Screen Sharing 即可。新版系统/System/Library/CoreServices/Applications/屏幕共享.app使用 spotlight(聚焦搜索) 或 alfred 的搜索 屏幕共享 都是可以的

工具

1,011 阅读
10月11日
1,011 阅读
0 评论
10-05

Composer 源管理工具 CRM 以及各大厂商镜像地址

Composer 源管理工具 CRM 以及各大厂商镜像地址
CRM - Composer源管理工具由于composer在国内下载速度非常慢,大家都习惯使用中国镜像,如果正在使用的镜像没有更新或者出现故障你可以使用Composer Registry Manager帮助你轻松地切换到另外一个镜像。默认带了一些镜像,当然你也可以添加新的镜像。安装使用composer安装,执行下面命令$ composer global require slince/composer-registry-manager基本用法列出所有可使用的镜像$ composer repo:ls --- ---------- ------------------------------------------------ composer https://packagist.org * aliyun https://mirrors.aliyun.com/composer tencent https://mirrors.cloud.tencent.com/composer huawei https://mir...

工具

1,089 阅读
10月05日
1,089 阅读
0 评论
10-02

推荐一个支付组件 riverslei/payment

推荐一个支付组件 riverslei/payment
riverslei/payment 是一款集成了阿里支付、微信支付的组件。它对php的版本要求很低(大于等于5.6),不过其文档不是特别完善,但是作为开发者去看下examples 下的 demo 够用了。当前支持的接口当前sdk仅接入了支付宝支付、微信支付、招商支付(支付、退款)。中国现在电子支付的公司巨多,无法一一接入,欢迎各位发扬自己动手、丰衣足食的光荣传统,提交PR给我,代码贡献指南 看这里支付宝接口APP支付(接入支付宝SDK,用户支付时唤起支付宝完成支付)手机网站支付(移动端唤起支付宝钱包或网页收银台完成支付)电脑网站支付(用户通过支付宝完成支付,交易款项即时到账)-原即时到账当面付(商户扫码首款或用户扫码付款)单笔转账到支付宝(支付宝商户向其它支付宝账户单笔转账)交易支付、转账、退款查询接口交易退款接口对账单下载(待开发)交易结算接口(待开发)交易关闭接口(待开发)微信支付接口刷卡支付(用户打开微信钱包的刷卡界面,商户扫码后提交完成交易)公众号支付(用户在微信内进入商家的H5页面,页面内调用JSSDK完成支付)扫码支付(用户打开扫一扫,扫码商户二维码完成支付)APP支...

PHP

1,993 阅读
10月02日
1,993 阅读
0 评论

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

今日天气

少数派热文榜

  • 获取失败!

标签云