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 相关文章推荐
PHP与已存在的Java应用程序集成
Oct 09 PHP
一个取得文件扩展名的函数
Oct 09 PHP
php+mysql分页代码详解
Mar 27 PHP
php下使用strpos需要注意 === 运算符
Jul 17 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
Dec 06 PHP
三个类概括PHP的五种设计模式
Sep 05 PHP
探讨多键值cookie(php中cookie存取数组)的详解
Jun 06 PHP
ThinkPHP中的关联模型注意点
Jun 16 PHP
php操作xml入门之xml标签的属性分析
Jan 23 PHP
PHP curl使用实例
Jul 02 PHP
基于PHP实现简单的随机抽奖小程序
Jan 05 PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
Mar 21 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 Smarty date_format [格式化时间日期]
2010/03/15 PHP
浏览器关闭后,能继续执行的php函数(ignore_user_abort)
2012/08/01 PHP
php数组操作之键名比较与差集、交集赋值的方法
2014/11/10 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
2019/07/15 PHP
Javascript实现的分页函数
2006/12/22 Javascript
jquery DIV撑大让滚动条滚到最底部代码
2013/06/06 Javascript
jquery实现输入框动态增减的实例代码
2013/07/14 Javascript
JS动态修改表格cellPadding和cellSpacing的方法
2015/03/31 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
BootStrap智能表单实战系列(七)验证的支持
2016/06/13 Javascript
微信小程序实现根据字母选择城市功能
2017/08/16 Javascript
使用mint-ui开发项目的一些心得(分享)
2017/09/07 Javascript
浅谈NodeJs之数据库异常处理
2017/10/25 NodeJs
vue使用mint-ui实现下拉刷新和无限滚动的示例代码
2017/11/06 Javascript
基于JS实现html中placeholder属性提示文字效果示例
2018/04/19 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
2019/04/28 Javascript
微信小程序使用GoEasy实现websocket实时通讯
2020/05/19 Javascript
基于canvasJS在PHP中制作动态图表
2020/05/30 Javascript
在Django的session中使用User对象的方法
2015/07/23 Python
python列表操作之extend和append的区别实例分析
2015/07/28 Python
对python中执行DOS命令的3种方法总结
2018/05/12 Python
pygame游戏之旅 游戏中添加显示文字
2018/11/20 Python
局域网内python socket实现windows与linux间的消息传送
2019/04/19 Python
如何基于windows实现python定时爬虫
2020/05/01 Python
Spark处理数据排序问题如何避免OOM
2020/05/21 Python
python判断变量是否为列表的方法
2020/09/17 Python
python openpyxl模块的使用详解
2021/02/25 Python
CSS3常用的几种颜色渐变模式总结
2016/11/18 HTML / CSS
HTML5实现页面切换激活的PageVisibility API使用初探
2016/05/13 HTML / CSS
英国空调、除湿机和通风设备排名第一:Air Con Centre
2019/02/25 全球购物
广告设计专业自荐信范文
2013/11/14 职场文书
幼儿园元旦亲子活动方案
2014/02/17 职场文书
就业协议书怎么填
2014/04/11 职场文书
打架检讨书范文
2015/01/27 职场文书
新员工入职感想
2015/08/07 职场文书
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python