PHP通过插入mysql数据来实现多机互锁实例


Posted in PHP onNovember 05, 2014

本文实例讲述了PHP通过插入mysql数据来实现多机互锁的方法,分享给大家供大家参考。具体实现方法如下:

在执行流程之前可以加一般锁,shell枷锁函数如下,如果成功则会返回0,否则返回非0值:

function get_lock()

{

    local dataId="${1}"

    local dataDate="${2}"
    local sql="insert intot_trans_lock

    (dataId, dataDate) values('${dataId}', '${dataDate}');"

    echo ${sql} | ${DB_PUBLIC}
    return $?

}

在执行失败或者结束的时候释放锁

function free_lock()

{

    local dataId="${1}"

    local dataDate="${2}"

    local status="${3}"
    local sql="delete from t_trans_lock 

    where dataId='${dataId}' and dataDate='${dataDate}';"

    echo ${sql} | ${DB_PUBLIC}

    if [ $? -ne 0 ]; then

        write_log ${dataId} "free lock failed"

    fi

    return ${status}

}

希望本文所述对大家的PHP+MySQL程序设计有所帮助。

PHP 相关文章推荐
使用php4加速网络传输
Oct 09 PHP
php URL编码解码函数代码
Mar 10 PHP
php ob_flush,flush在ie中缓冲无效的解决方法
May 09 PHP
mysqli_set_charset和SET NAMES使用抉择及优劣分析
Jan 13 PHP
php运行提示:Fatal error Allowed memory size内存不足的解决方法
Dec 17 PHP
php中JSON的使用与转换
Jan 14 PHP
php mysqli查询语句返回值类型实例分析
Jun 29 PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 PHP
php mysql操作mysql_connect连接数据库实例详解
Dec 26 PHP
安装docker和docker-compose实例详解
Jul 30 PHP
ThinkPHP3.1.2 使用cli命令行模式运行的方法
Apr 14 PHP
PHP随机生成中文段落示例【测试网站内容时使用】
Apr 26 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 #PHP
PHP实现获取域名的方法小结
Nov 05 #PHP
php调用shell的方法
Nov 05 #PHP
PHP+Mysql实现多关键字与多字段生成SQL语句的函数
Nov 05 #PHP
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
Nov 05 #PHP
phpnow php探针环境检测代码
Nov 04 #PHP
Thinkphp中volist标签mod控制一定记录的换行BUG解决方法
Nov 04 #PHP
You might like
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
2011/07/17 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
php通过curl添加cookie伪造登陆抓取数据的方法
2016/04/02 PHP
accesskey 提交
2006/06/26 Javascript
javascript验证只能输入数字和一个小数点示例
2013/10/21 Javascript
js获取光标位置和设置文本框光标位置示例代码
2014/01/09 Javascript
js获取checkbox值的方法
2015/01/28 Javascript
JavaScript中return false的用法
2015/03/12 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
jQuery实现链接的title快速出现的方法
2017/02/20 Javascript
Angular4学习笔记之实现绑定和分包
2017/08/01 Javascript
Vue 表单控件绑定的实现示例
2017/08/11 Javascript
详解如何在微信小程序开发中正确的使用vant ui组件
2018/09/13 Javascript
Node.js中读取TXT文件内容fs.readFile()用法
2018/10/10 Javascript
vue.js仿hover效果的实现方法示例
2019/01/28 Javascript
JS基于ES6新特性async await进行异步处理操作示例
2019/02/02 Javascript
Vue 自定义标签的src属性不能使用相对路径的解决
2019/09/17 Javascript
微信小程序3D轮播实现代码
2019/09/19 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
2020/02/15 Javascript
Vue.js使用axios动态获取response里的data数据操作
2020/09/08 Javascript
python设置windows桌面壁纸的实现代码
2013/01/28 Python
Python进程间通信用法实例
2015/06/04 Python
Python+OpenCV目标跟踪实现基本的运动检测
2018/07/10 Python
python中自带的三个装饰器的实现
2019/11/08 Python
Keras自定义实现带masking的meanpooling层方式
2020/06/16 Python
python实现测试工具(二)——简单的ui测试工具
2020/10/19 Python
canvas 基础之图像处理的使用
2020/04/10 HTML / CSS
创先争优活动方案
2014/02/12 职场文书
《哪吒闹海》教学反思
2014/02/28 职场文书
绩效考核实施方案
2014/03/18 职场文书
保安公司服务承诺书
2014/05/28 职场文书
基层党员对照检查材料
2014/09/24 职场文书
家长会欢迎词
2015/01/23 职场文书
世界水日宣传活动总结
2015/02/09 职场文书
2019自荐信范文集锦!
2019/07/03 职场文书
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python