MySQL事务&并发实际操合集

1. "UPDATE tbl SET count = count - 10 WHERE id = 1"这种SQL能否保证并发事务安全。

答:可以,UPDATE操作会针对id加锁,且"x = x - y"会再最新提交的结果上计算。

演示:

t1
set autocommit = 0;
begin;
update clockin_test set count = count - 10;

t2
set autocommit = 0;
begin;
update cl[......]

继续阅读

Gradle中使用git仓库作为maven私有仓库

Maven是Java开发最流行的依赖管理工具。

在项目中,我们经常会引用别人的Maven包,偶尔,我们也会开发Maven包,希望别人引用,那么问题来了,如何让别人找到你的Maven包呢,有这么几个方法:

  1. 直接拷贝Jar包
  2. 使用JCenter等第三方Maven仓库
  3. 自己搭建Maven私有仓库

上述方案1显然是用来搞笑的,不仅效率低下,也不利于运维。

使用第三方仓库省却了仓库的搭建过程,但要忍受网路不稳定、jar包公开化等弊病。

搭建私有仓库是一个很好的[......]

继续阅读

在nginx后部署gitbook

用独立二级域名结合gitbook后端服务
server {
server_name homs.coder4.com;

location / {
proxy_pass http://localhost:4000;
proxy_set_header Host $host;
proxy_buffering off;
}

}

路径转发,可以不用启动gitbook serve[......]

继续阅读