OpenResty负载均衡MySQL
OpenResty下载地址https://openresty.org/download/ngx_openresty-1.9.3.2.tar.gznginx_tcp_proxy_module模块需要单独下载https://github.com/yaoweibin/nginx_tcp_proxy_module首先,解压缩上述文件[nginx@localhost~]$ll总用量 3668drwxrwxr-x 7 nginx nginx 4096 8月 18 23:39 nginx_tcp_pro...
Linux保留几个文件其余删除
set选项与shopt选项是两组不同的内容,用set -o和shopt -p可以分别查看两个组所有的打开和关闭的条目, 在默认状态下,有些是打开的,有些是关闭的,shopt各选项随着bash版本的更新会有增加,与shopt相关的基本操作如下:# shopt -p 列出所有选项# shopt -s 列出所有打开的选项# shopt -s extglob 打开extglob选项# sho...
OpenResty最佳实践
转载自:https://www.gitbook.com/book/moonbingbing/openresty-best-practices/details
MySQL树形遍历(四)--代码优化
MySQL树形遍历(三) http://blog.itpub.net/29254281/viewspace-1867455/这个程序实际上在模拟之前的那个SQL写法.http://blog.itpub.net/29254281/viewspace-1851457/但是实际上,使用递归造成了很多无效的重复的计算.其实一个循环遍历,就搞定了.import java.sql.Connection;import java.s...
MySQL树形遍历(三)
MySQL虽然也可以实现Oracle的sys_connect_by_path功能.但是性能很差.详见:http://blog.itpub.net/29254281/viewspace-1851457/其实这种还是用程序算比较好.import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; &nb...
井字棋解法(补充)
还是井字棋http://blog.itpub.net/29254281/viewspace-1852817/今天和王工相互印证之下,发现原来的SQL还是有点问题.1.原来的SQL没有计算平局的情况2.我对于棋盘的理解有错误.下面这个棋盘(Board)MOVES=3175968,BOARD=XOXOXOX,WINNER=X其实应该是O-X-OOXXX居然把题目理解错了...3.还有一个bug.假如先...
MySQL5.6 GTID新特性实践
转载自:http://cenalulu.github.io/mysql/mysql-5-6-gtid-basic/GTID简介什么是GTIDGTID(Global Transaction ID)是对于一个已提交事务的编号,并且是一个全局唯一的编号。GTID实际上是由UUID+TID组成的。其中UUID是一个MySQL实例的唯一标识。TID代表了该实例上已经提交的事务数量,并且随着事务提交单调递增...
井字棋解法
题目:井字棋两个玩家,一个打圈(O),一个打叉(X),轮流在3乘3的井字格上打自己的符号,最先以任意一行、一列或对角线连成一线则为胜。规定X先手。一个终局棋谱(MOVES)指的是从开始下子到一方获胜或者下完9个子出现平局,从头到尾的下子情况。一方获胜后,本局即终止。不得提前认输。格子从上...
MySQL树形遍历(二)
转载自:http://blog.csdn.net/dreamer0924/article/details/7580278英文原文:http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/预排序遍历树算法:modified preorder tree traversal algorithm 这个算法有如下几个数据结构1 lft 代表左 left2 rgt 代表右 right3 lvl...
一旦被激怒,赶快来看看
人的一切愤怒本质上都是对自己无能的痛苦K神在群里聊天说的一句话.至理名言啊..以后一旦被激怒,赶快来看看.制怒
MySQL树形遍历
借鉴Oracle Hr模式下的Employees表的结构和数据DROP TABLE IF EXISTS `employees`;CREATE TABLE `employees` ( `employee_id` int(11) NOT NULL, `FIRST_NAME` varchar(20) DEFAULT NULL, `LAST_NAME` varchar(25) DEFAULT NULL,...
Lua学习笔记--面向对象(三)
Lua通过Self指针实现面向对象.对象其实是一个table,table不仅包括数据,还包括函数account={balance=10}function account.withdraw(self,v) self.balance=self.balance-vendlocal a=accountaccount=nila.withdraw(a,2)print(a.balance) self是每个函数...
Lua学习笔记--迭代器和协程(二)
迭代器function iterator(tab) local i=0 return function() i=i+1; return tab[i] ...
Lua学习笔记(一)
构造一个空的table,接收终端的输入a={}for i=1,5 do a[i]=io.read()end#a可以获取table a的最后一个元素的索引.遍历tablefor i=1,#a do print(a[i])end清空最后一个元素a[#a]=nil获取最后一个元素print(a[#a])追加元素a[#a+1]="edmond"选...
开始学习OpenResty
OpenResty下载地址https://openresty.org/download/ngx_openresty-1.9.3.2.tar.gzNginx增加模块需要重新编译.OpenResty 将很多常用的模块,包括LUA支持,cjson等,直接打包在一起.使用起来非常的方便.随手用的模块都有,也免去了重新编译的烦恼.安装:useradd -m nginx加压文件,创建目标文件夹OpenResty[nginx@localh...
58同城数据库架构学习
上周六去听upyun的技术分享.其中非常受用的是沈剑老师分享的58同城数据库架构.58同城都是服务化架构.他们主要的架构如下.他们每个构建,或者说服务,都是由两个双向同步的数据库和一个redis缓存组成.一般来说,保障数据库读能力的高可用比较简单,多搭建几个Slave即可.但是M-S架构有同步延迟的问题.但是保障数据库写能...
用Redis构建分布式锁
转载自:http://ifeve.com/redis-lock/《Redis官方文档》用Redis构建分布式锁原文链接 译者:yy-leo 校对:方腾飞(红体标记重点)用Redis构建分布式锁在不同进程需要互斥地访问共享资源时,分布式锁是一种非常有用的技术手段。 有很多三方库和文章描述如何用Redis实现一...
管好统计信息,开启SQL优化之门
在DBA的工作中,SQL优化的工作量占工作很大的一块,我们在平时工作中也是这样,常常遇到一些执行效率低下的SQL语句,而这些执行效率低下的SQL,有的是业务系统刚刚上线的,有的是已经执行很久但因为执行环境变化而导致出现的。这里给大家分享一个SQL的优化案例分析。 根据我们监控系统,发现线上O...
Peterson算法
转载自:http://blog.csdn.net/speedme/article/details/17595821因为P1,P2两个进程的执行顺序是随机的,可能顺序执行也可能是并发的,由图可见,不同的执行顺序,COUNT的值会不同,这是不允许的。像这种情况,及多个进程并发访问和操作同一数据且执行结果与访问发生的特定顺序有关,称为竞争条件。为了避免...
开始学习调试MySQL
上周参加Oracle技术嘉年华 2015收获非常大.其中吕海波老师分享的内容是 《调试Oracle二三例:调试技术在日常运维中的应用》其中有关于调试MySQL源码的内容.实验如下:下载MySQL 5.7的源码http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.9.tar.gz编译,注意增加 DEBUG 选项。(cmake的版本要求在2.8.2以上)...