亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? checkers.pm

?? mysql+ha. 實現高可用性 http://code.google.com/p/mysql-master-master/
?? PM
字號:
use FileHandle;use IPC::Open2;#-----------------------------------------------------------------sub SpawnCheckers() {    my $checkers = {};        $checks = $config->{check};    foreach my $check_name (keys(%$checks)) {        $checkers->{$check_name} = SpawnChecker($check_name);    }        return $checkers;}#-----------------------------------------------------------------sub ShutdownCheckers($) {    my $checkers = shift;        foreach my $check_name (keys(%$checkers)) {        ShutdownChecker($checkers->{$check_name});    }}#-----------------------------------------------------------------sub SpawnChecker($) {    my $name = shift;    my ($reader, $writer);    LogDebug("Spawning checker '$name'...");    my $cluster = ($cluster_name ? '@' . $cluster_name : '');    my $pid = open2($reader, $writer, "$SELF_DIR/bin/check/checker $cluster '$name'");    if (!$pid) {        LogError("Can't spawn checker! Error: $!");        exit(1);    }        my $checker = {        'reader' => $reader,        'writer' => $writer    };    return $checker;}#-----------------------------------------------------------------sub PingChecker($$) {    my ($checker, $name) = @_;    my $reader = $checker->{reader};    my $writer = $checker->{writer};    LogDebug("Pinging checker '$name'");    my $send_res = print ($writer "ping\n");    chomp(my $recv_res = <$reader>);        if (!$send_res || !($recv_res =~ /^OK/)) {        LogWarn("Checker is dead!");        $checker = SpawnChecker($name);    }    LogDebug("Checker '$name' is OK ($recv_res)");    return $checker;}#-----------------------------------------------------------------sub ShutdownChecker($) {    my ($checker) = @_;    my $reader = $checker->{reader};    my $writer = $checker->{writer};    my $send_res = print ($writer "quit\n");    chomp(my $recv_res = <$reader>);        return 0;}#-----------------------------------------------------------------sub CheckService($$) {    my ($checker, $host) = @_;    my $reader = $checker->{reader};    my $writer = $checker->{writer};    my $send_res = print ($writer "check $host\n");    chomp(my $res = <$reader>);    return "UNKNOWN: Checker is dead!" unless ($send_res && $res);    return $res;}#-----------------------------------------------------------------sub CreateChecksStatus() {    my $status = &share({});    # Shortcuts    my $checks = $config->{check};    my $hosts = $config->{host};    my $checkers = SpawnCheckers();      # Create check result entries for all checks and all hosts    foreach my $host (keys(%$hosts)) {        $status->{$host} = &share({});        foreach my $check (keys(%$checks)) {            LogDebug("Trying initial check '$check' on host '$host'...");	                my $res = CheckService($checkers->{$check}, $host);	        LogError("Eval Error: $@") if $@;	        LogDebug("$check_function('$host') = '$res'");	                $status->{$host}->{$check} = ($res =~ /^OK/)? 1 : 0;        }    }        ShutdownCheckers($checkers);        return $status;}#-----------------------------------------------------------------sub StartCheckerThreads($$) {    my ($command_queue, $status_queue) = @_;    # Shortcuts    my $checks = $config->{check};        # Start threads for all checks    my @threads;    foreach my $check (keys(%$checks)) {        my $thread = new threads(\&CheckerMain, $check, $command_queue, $status_queue);        push(@threads, $thread);    }        return \@threads;}#-----------------------------------------------------------------sub CheckerMain($$$) {    my ($check_name, $command_queue, $status_queue) = @_;    my $checker = SpawnChecker($check_name);    LogNotice("Checker($check_name): Started!");        # Shortcut    my $options = $config->{check}->{$check_name};    my $hosts = $config->{host};    # Failure counters    my $failures = {};    foreach my $host (keys(%$hosts)) {        $failures->{$host} = 0;    }    $max_failures = $options->{trap_period} / $options->{check_period};    # While !shutdown, performing checks    while (!$shutdown) {        # For all hosts        foreach my $host (keys(%$hosts)) {            if ($shutdown) {                ShutdownChecker($checker);                LogNotice("Checker($check_name): Exiting...");                return 0;            }	        # Ping check            $checker = PingChecker($checker, $check_name);                        # Run check	        $res = CheckService($checker, $host);            LogDebug("CHECKER: $check_name: $res");                        # If success            if ($res =~ /^OK/) {                $failures->{$host} = 0;                if (!$checks_status->{$host}->{$check_name}) {                    LogTrap("Check: CHECK_OK('$host', '$check_name')");                    $command_queue->enqueue(CreateCommand('CHECK_OK', $host, $check_name));                }                next;            }                        # If failed            if ($res =~ /^ERROR/) {                if (!$failures->{$host}) {                    $failures->{$host} = time();                }                my $failure_age = time() - $failures->{$host};                                if ($failure_age >= $max_failures && $checks_status->{$host}->{$check_name}) {                    LogTrap("Check: CHECK_FAIL('$host', '$check_name')");                    $command_queue->enqueue(CreateCommand('CHECK_FAIL', $host, $check_name));                }                next;            }        }                sleep($options->{check_period});    }    }#-----------------------------------------------------------------sub ShutdownCheckerThreads($) {    my $threads = shift;    foreach my $thread (@$threads) {        $thread->join();    }}#-----------------------------------------------------------------sub LoadCheckModule($) {    my $module_name = shift;        return $check;}1;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品毛片久久久久久久| 亚洲女爱视频在线| 国产三级一区二区| 最新成人av在线| 丝袜国产日韩另类美女| 国产一区二区h| 日本一二三不卡| 一区二区三区欧美久久| 国产高清在线观看免费不卡| 成人av在线播放网址| 欧美男生操女生| 中文字幕乱码亚洲精品一区| 日韩精品三区四区| 成人国产一区二区三区精品| 日韩欧美中文一区二区| 亚洲日本va午夜在线影院| 亚洲午夜激情av| caoporn国产精品| 日韩欧美电影一区| 亚洲主播在线播放| 久久国产麻豆精品| 91视频在线观看| 国产午夜三级一区二区三| 亚洲h动漫在线| 91麻豆免费视频| 久久精品夜色噜噜亚洲aⅴ| 日韩av网站在线观看| 欧美日本一道本| 日韩欧美国产精品| 日韩一二在线观看| 久久久久久久久99精品| 国产精品无码永久免费888| 综合久久给合久久狠狠狠97色 | 综合在线观看色| 国产精品乱人伦| 日日噜噜夜夜狠狠视频欧美人| 国产一区中文字幕| 欧美探花视频资源| 久久久www免费人成精品| 国产精品久久福利| 欧美乱妇20p| 国产欧美一区二区精品性| 国产一区欧美二区| 欧美tickle裸体挠脚心vk| 日本vs亚洲vs韩国一区三区二区 | 欧美中文一区二区三区| 国产精品亲子伦对白| 国产精品自拍一区| 久久久久久久综合日本| 国产在线播放一区| 久久久国产综合精品女国产盗摄| 狠狠色丁香婷综合久久| 精品久久一区二区三区| 国产一区二区三区在线观看精品| 亚洲激情欧美激情| 97久久精品人人澡人人爽| 国产精品麻豆欧美日韩ww| 粉嫩高潮美女一区二区三区| 中文字幕精品在线不卡| 成人性生交大片免费看视频在线 | 亚洲激情图片qvod| 欧洲精品一区二区| 日韩高清不卡在线| 欧美一级黄色片| 韩国一区二区视频| 中文字幕乱码久久午夜不卡 | 久久精品国产精品青草| 91久久人澡人人添人人爽欧美 | 蜜桃视频在线一区| 国产喷白浆一区二区三区| 日本高清无吗v一区| 日韩欧美国产综合一区| 久久精品视频免费| 免费人成精品欧美精品| 欧美亚洲综合在线| 国产精品国产三级国产普通话三级| 国内偷窥港台综合视频在线播放| 欧美一区二区久久久| 免费成人在线播放| 久久综合九色综合欧美就去吻| 另类成人小视频在线| 欧美mv和日韩mv的网站| 韩国av一区二区三区四区| 久久精品一区二区三区不卡| 国产夫妻精品视频| 亚洲同性同志一二三专区| 91麻豆精品在线观看| 午夜欧美电影在线观看| 91精品欧美久久久久久动漫| 蜜桃久久久久久久| 久久精品视频在线看| k8久久久一区二区三区| 夜夜嗨av一区二区三区| 91精品免费在线| 国产一区二区三区在线观看免费视频 | 国产成人精品免费看| 中文字幕一区二区在线观看| 日本乱人伦aⅴ精品| 香蕉成人伊视频在线观看| 精品日本一线二线三线不卡| 伊人开心综合网| 日韩精品中文字幕一区二区三区| 欧美日韩午夜精品| 欧美在线影院一区二区| 色综合久久中文字幕综合网| 成人三级伦理片| 福利电影一区二区三区| 国产一区二区三区不卡在线观看| 日本欧美在线观看| 日韩精品1区2区3区| 午夜电影久久久| 亚洲成在人线免费| 亚洲成人在线免费| 亚洲国产精品久久久久婷婷884| 亚洲精品成人少妇| 亚洲精品乱码久久久久久黑人| 亚洲视频在线观看一区| 日韩理论片一区二区| 亚洲另类色综合网站| 亚洲精品综合在线| 亚洲线精品一区二区三区八戒| 亚洲一二三四在线观看| 午夜一区二区三区在线观看| 亚洲成av人在线观看| 日韩福利视频网| 黄色日韩三级电影| 日本精品一级二级| 欧美日韩国产系列| 日韩欧美国产不卡| 国产三级精品视频| 中文字幕一区二区三区视频| 亚洲精品大片www| 香蕉成人伊视频在线观看| 美女mm1313爽爽久久久蜜臀| 国产一区二区三区精品欧美日韩一区二区三区 | 国产精品麻豆久久久| 成人免费在线视频观看| 夜夜嗨av一区二区三区中文字幕 | 亚洲天堂成人网| 亚洲福利电影网| 蜜臀精品久久久久久蜜臀| 国产夫妻精品视频| 欧洲日韩一区二区三区| 日韩精品一区在线观看| 国产精品嫩草影院av蜜臀| 亚洲成人精品一区| 国产酒店精品激情| 日本乱人伦aⅴ精品| 欧美mv日韩mv国产| 亚洲欧美国产毛片在线| 老司机精品视频导航| 99久久99久久精品免费看蜜桃| 欧美日韩在线直播| 久久精品这里都是精品| 午夜国产不卡在线观看视频| 国产激情一区二区三区四区| 在线观看视频91| 国产日韩视频一区二区三区| 亚洲成人动漫一区| 成人动漫视频在线| 51精品视频一区二区三区| 国产精品三级在线观看| 日韩电影在线一区二区三区| 成人性视频网站| 亚洲精品在线免费播放| 亚洲午夜羞羞片| 99精品久久99久久久久| 精品国产亚洲在线| 不卡的av电影| 日韩欧美国产一二三区| 亚洲国产成人高清精品| 99在线视频精品| 国产日韩欧美制服另类| 另类中文字幕网| 欧美日韩高清在线播放| 亚洲欧美激情插 | 免费观看久久久4p| 91一区二区在线观看| 久久奇米777| 日韩电影在线观看网站| 欧洲精品在线观看| 亚洲老妇xxxxxx| av午夜一区麻豆| 国产午夜精品一区二区三区嫩草 | 日韩美女视频19| 国产成人av电影免费在线观看| 日韩欧美色综合网站| 亚洲a一区二区| 欧美日韩在线电影| 亚洲一区二区三区爽爽爽爽爽| 91亚洲精品乱码久久久久久蜜桃| 国产欧美一区二区三区网站| 国产在线观看一区二区 | 欧美精品日韩综合在线| 一区二区不卡在线播放| 色综合天天做天天爱| 亚洲人成网站在线| 色国产精品一区在线观看| 日韩美女视频一区| 在线观看一区不卡|