浏览模式: 普通 | 列表
8月, 2017 | 1

mysql处理高并发,防止库存超卖

[ 2017-08-26 16:59:35 | 作者: admin ]
参考:http://www.cnblogs.com/xjnotxj/p/5516611.html

  今天王总又给我们上了一课,其实MySQL处理高并发,防止库存超卖的问题,在去年的时候,王总已经提过;但是很可惜,即使当时大家都听懂了,但是在现实开发中,还是没这方面的意识。今天就我的一些理解,整理一下这个问题,并希望以后这样的课程能多点。

先来就库存超卖的问题作描述:一般电子商务网站都会遇到如团购、秒杀、特价之类的活动,而这样的活动有一个共同的特点就是访问量激增、上千甚至上万人抢购一个商品。然而,作为活动商品,库存肯定是很有限的,如何控制库存不让出现超买,以防止造成不必要的损失是众多电子商务网站程序员头疼的问题,这同时也是最基本的问题。

从技术方面剖析,很多人肯定会想到事务,但是事务是控制库存超卖的必要条件,但不是充分必要条件。

举例:

总库存:4个商品

请求人:a、1个商品 b、2个商品 c、3个商品
...

阅读全文…
rsync -avreH --progress 'ssh -p Port' root@remoteip:/remotepath/ /localpath/

实例如下:
rsync -avreH --progress 'ssh -p 1001' root@222.222.222.222:/data/backup/ ./
p.s. rsyns在非默认SSH端口 http://blog.xg98.com/article.asp?id=2447

需要参考:http://douya.blog.51cto.com/6173221/1761314/

[转帖]http://www.ttlsa.com/web/let-infotify-rsync-fast/

背景
我们公司在用inotify+rsync做实时同步,来解决分布式集群文件一致性的问题。但当web文件越来越多(百万级数量html,jpg等小 文件),同步就越来越慢,根本做不到实时,按照网上的调优方法都尝试过,问题根本没有解决。经过我一翻细致研究,终于把慢的核心问题研究明白,先总结一句 inotifywait响应不会有延迟,rsync也很快。大家同样有慢的烦恼,那是因为网上的inotify+rsync的教程都是坑。下面我们来分 析。
...

阅读全文…
今天打算使用 inotify-tool 来对线上程序文件进行监控, 因为有些目录是缓存目录, 所以要进行排除, 同时还要排除一些指定的后缀的文件, 比如 .swp 等

需要递归监控的目录为: /tmp/inotify-test-dir
需要排除的目录为: /tmp/inotify-test-dir/cache
需要排除特定后缀文件: .log .swp 文件

根据网上看的一些资料, 我先做了如下尝试:

/usr/local/bin/inotifywait -mr -e close_write,modify,create,move,delete –exclude ^.*\.(log|swp)$ –exclude “^/tmp/inotify-test-dir/cache” –timefmt %Y/%m/%d %H:%M –format %T %w%f %e /tmp/inotify-test-dir

...

阅读全文…

CentOS 6.5上inotify-tools使用方法

[ 2017-08-25 14:54:14 | 作者: admin ]
来源:http://blog.csdn.net/god_wot/article/details/50448814

Linux内核从2.6.13开始,引入了inotify机制。通过intofity机制,能够对文件系统的变化进行监控,如对文件进行创建、删除、修改等操作,可以及时通知应用程序进行相关事件的处理。这种响应处理机制,避免了频繁的文件轮询任务,提高了任务的处理效率。
一、检查系统内核版本
[root@iZ25w1kdi5zZ ~]# uname -a
Linux iZ25w1kdi5zZ 2.6.32-431.23.3.el6.x86_64 #1 SMP Thu Jul 31 17:20:51 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux


二、检查系统是否支持inotify
[root@iZ25w1kdi5zZ
...

阅读全文…
1,修改配置文件(需重启mysqld服务):

【windows】开启所有日志
log-error="D:/Program Files/MySQL/MySQL Server 5.6/logs/error.log"
general-log=1
general-log-file="D:/Program Files/MySQL/MySQL Server 5.6/logs/query.log"
slow_query_log=on
slow_query_log_file="D:/Program Files/MySQL/MySQL Server 5.6/logs/slow.log"
long_query_time=2

【linux】开启慢查询
[root@localhost app]# cat /etc/my.cnf
...

阅读全文…
方法一:这是因为PHP 5.3在面对数据库配置信息中的“localhost”会犹豫,因此直接把这个地址改名为“127.0.0.1”,这个IP是IPv4下面的本地网络地址,实际作用和“localhost”一样,不过能明确告诉PHP这是IPv4网络。至于具体的修改流程,好比我的网站源程序是dedecms,因此数据库配置信息在html/data/common.inc文件中,要用Dreamweaver之类的专业软件编辑修改,否则保存后可能出错。

  至于别的程序,同样修改数据库配置文件即可,下面是一般的数据库配置文件信息。

  < ?php

  //数据库连接信息

  $cfg_dbhost = 'localhost';修改此处的localhost为127.0.0.1

  $cfg_dbname = 'fewfwefsdf';

  $cfg_dbuser = 'fsdfsdf';
...

阅读全文…
1