thinkphp 事务 回滚
发表于|更新于|thinkphp
|浏览量:
开启事务
1 | Db::startTrans(); |
事务回滚
1 | Db::rollback(); |
提交事务
1 | Db::commit(); |
一旦commit就无法回滚了
文章作者: developer
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Dev!
相关推荐
2018-01-15
thinkphp 5.0.10 模型 自动 时间戳 bug
当模型中同时启用 12protected $autoWriteTimestamp = true;protected $field = ['bill_type', 'create_time']; 必须将create_time放入$field中,才可以操作,否则时间戳写入失败
2015-12-10
ThinkPHP3.2.3 模板输出 display 方法
display(‘[模板文件]’[,’字符编码’][,’输出类型’]) 用法 描述 不带任何参数 自动定位当前操作的模板文件 [模块@][控制器:][操作] 常用写法,支持跨模块 模板主题可以和theme方法配合 完整的模板文件名 直接使用完整的模板文件名(包括模板后缀) [pcsh lang="php" tab_size="4" message="" hl_lines="" provider="manual"] // 不带任何参数 自动定位当前操作的模板文件 $this->display(); // 当前控制器的edit模板输出 $this->display('edit'); // 表示调用Member控制器下面的read模板。 $this->display('Member:read'); // 如果我们使用了模板主题功能,那么也可以支持跨主题调用,使用: $this->theme('blue')->display('User:edit'); ...
2017-08-17
thinkphp 云服务器 低成本 解决 发红包 场景下的 高并发 和 访问量激增 问题
微信与各个企业的关系越来越密切,发红包成为企业营销重要且有效的手段 但是像我曾经服务的客户公众号最多的有几百万粉丝,少的也有四五万,这些人看到某个时段有红包放出,会拼命来领红包,很容易形成“高并发”和“大流量”,以下讨论也是在这个前提之下,并不是有上亿用户,程序的瓶颈是出现在CPU 内存方面,并不会出现硬盘读取的瓶颈和内网通信的瓶颈 和朋友在网上讨论过这些问题,以下给出我在实际工作中使用的方法,力求程序简单 可靠 省钱,都是在云服务器上完成 并发问题方法一 提前算出各个红包钱数 并存入表里 每个红包增加一个额外的字段,比如 isuse 默认 0 当请求过来的时候,首先把isuse 的 0 update 为 1 判断上述update 影响行数,为1则该请求合理,为0则该请求是并发产生,在他之前已经有人抢过这个红包 原理:mysql在update时会自动加锁,不管是行锁还是表锁,总之是“串行”的,是没有并发的,那就只能有一个人是从0到1的变化,从而有效防止了并发带来的红包超额发放 参考:http://blog.csdn.net/gnicky/article/details/5132...
2018-01-11
thinkphp 不同终端 session共享
解决方法thinkphp可以自定义sessionid,自己维护这个sessionid即可实现会话在不同终端的共享 具体实例12config('session.id',$sessionid);session('user', $openid); 这里的sessionid可以通过自己定义 应用场景可以基于微信做具有吸粉功能的网站扫码登陆,便于用户留存可以用微信临时二维码传递sessionid到扫码结果,然后后端存储用户信息前端进行轮询,查询登陆状态,合理跳转 易发问题这里看实例很简单,其实容易发生使用错误根据实测,后端要保证session配置一致,最好办法就是用config去配置id值如果用session::init($config)或者session($config)很可能无法共享,这个是我遇到过的问题
2019-03-04
thinkphp beego swoft yaf 性能测试 压力测试 php go swoole 速度对比 helloworld
1ab -n 10000 -c 200 测试机为腾讯云1核1G普通云硬盘,如果用ssd的话php成绩会有所提升 输出内容为时间戳 beego swoft的性能都强的不得了,在同一级别,裸跑性能都逼近nginx处理静态文件nginx转发损耗很大,由于nginx转发会导致thinkphp,swoft,beego的性能几乎一样。所以有可能的话还是不要在这些框架外套个nginx了swoft+nginx:内存无波动,CPU占用81%swoft无nginx:内存无波动,CPU占用34% thinkphp+nginx41212345678910111213141516171819202122232425262728Concurrency Level: 200Time taken for tests: 24.256 secondsComplete requests: 10000Failed requests: 0Total transferred: 1940000 bytesHTML transferred: 190000 by...
2018-01-31
Supervisor 配置 使用 常见问题 thinkphp 队列 使用方法
安装安装方法很多,这里给出最简便的 123wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O - | sudo pythoneasy_install supervisor 然后 1find / -name supervisord.conf 找到supervisord.conf路径 1echo_supervisord_conf > /etc/supervisord.conf 在找到的空配置中生成示例配置 详细方法http://blog.csdn.net/xyang81/article/details/51555473 配置最后一行 123;包含其它配置文件[include]files = relative/directory/*.ini ;可以指定一个或多个以.ini结束的配置文件 这里注意!!!*[include]*前的 ; 要去掉,否则不会加载 ini 配置!!! 使用在你inclue的目录中加一个ini 1234567891011[program:thinkphp]command...
公告
This is my Blog