原创 ZKClient詳解

前提: zkClient是對zookeeper原生API操作的一個封裝,簡化客戶端對zk的操作。同時zkClient內部實現了諸如Session超時重連、Watcher反覆註冊(watcher只能生效一次,所以如果使用原生zookeep

原创 zookeeper源碼-State(czxid、mzxid..)節點數據結構

類:org.apache.zookeeper.data.Stat 作用:數據節點的數據對象 @InterfaceAudience.Public public class Stat implements Record { privat

原创 併發編程--volatile關鍵字

volatile其實可以簡單的理解爲是java的一把弱鎖(相當於synchronize來講)   下面就說下volatile的作用: 使用volatile修飾變量,確保這個被修飾的變量的一個可見性; volatile變量弱於synchr

原创 併發編程-讀寫鎖

前言: 讀寫鎖一般使用的場景是:讀的操作遠大於寫操作,只有在這種情況下,纔可以增加併發性。當寫的操作大於讀的操作(完全違背了讀寫鎖的定義,後面會講到),當頻繁切換鎖的話,性能上會有所下降,那我還用什麼讀寫鎖(簡直是瞎搞)   解釋: 讀寫

原创 使用Python導出svn中的項目

import time, os, sys import jenkins.autoJenk as auto class CheckSvn(): def getSvnUrl(self): # 需要剪切的項目sv

原创 zookeeper-常用命令

zookeeper安裝目錄結構: . ├── bin │ ├── README.txt │ ├── zkCleanup.sh │ ├── zkCli.cmd │ ├── zkCli.sh │ ├── zkEnv.cm

原创 zookeeper-單機版搭建

前提 zookeeper是什麼,幹什麼用的呢? 官方文檔上這麼解釋zookeeper,它是一個分佈式服務框架,是Apache Hadoop 的一個子項目,它主要是用來解決分佈式應用中經常遇到的一些數據管理問題,如:統一命名服務、狀態同步

原创 掃描代碼行數

package cn.lxm.attendance.common.utils; import java.io.*; /** * @author lxm * @version 1.1 * @date 2019/12/5 000

原创 Illegal hex characters in escape (%) pattern

URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "TR"   場景: 上傳附件,對文件名稱URL解碼時,當文件名稱包含特殊字符

原创 zookeeper-一致性

分佈式框架CAP,大家都知道,zookeeper可以保證狀態同步服務(一致性),能作分佈式鎖 C:Consistency,一致性,數據一致更新,所有數據變動都是同步的 A:Availability,可用性,系統具有好的響應性能 P:Par

原创 kafka-安裝與使用

Step 1: 下載代碼 > tar -xzf kafka_2.13-2.4.0.tgz > cd kafka_2.13-2.4.0     Step 2: 啓動服務 kakfa運行需要使用zookeeper,所以請先保證你以前啓動

原创 java-知識總結

原创 XPath使用說明

XPath 使用路徑表達式來選取 XML 文檔中的節點或節點集。節點是通過沿着路徑 (path) 或者步 (steps) 來選取的。 XML 實例文檔 我們將在下面的例子中使用這個 XML 文檔。 <?xml version="1.0"

原创 Python3正則表達式:match函數

import re url = "www.baidu.com" # 匹配包含www的字符串 re_compile = re.compile("www") # match從起始位置開始匹配,且只匹配一次,如果不沒找到,則返回None

原创 nginx: [error] invalid PID number ; in /usr/local/nginx/logs/nginx.pid

1.nginx 重新加載命令./nginx -s reload,出現 nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"問題。 解決辦法: