原创 MySQL-NonMySQL同步工具源碼解讀——鑑權與註冊
好吧,其實這節是解讀一個MySQL的一個事件捕獲工具——MySQL replication。MySQL的主從同步就是通過向Binlog寫入事件,由主庫向從庫傳遞,來完成的。那麼如果非MySQL的應用也想從主庫做同步,就需要自行解決獲取事件和
原创 學習Java8的Stream
Stream把對一個集合的很多操作,以一種流式作業串起來,按照類似函數式編程書寫代碼,界面清爽清晰。 Stream不同於Guava的FluentIterable系列。FluentIterable系列,是通過封裝集合(List、Set等
原创 關於MySQL Binlog類型的一個謠言
衆所周知,MySQL的Binlog可以是三種類型:Statement、Row、Mixed。Statement的特點是每次只存儲一條語句,Row的特點是存儲每行數據的變化情況,Mixed是前兩種的混合。於是,網上很多資料都提到,Row模
原创 MySQL-NonMySQL同步工具源碼解讀——發起第一個同步
發起同步命令格式:1 [12] COM_BINLOG_DUMP 4 binlog-pos 2 flags 4 server-id str
原创 Thrift解讀(六)——客戶端基本RPC邏輯
這一節說說客戶端。可以說,對於阻塞的客戶端,近乎於沒有任何邏輯。這裏僅僅把一次RPC調用的過程記錄下來。還是認爲,我們在Thrift聲明的服務叫XXX,RPC調用的函數名叫YYY,而且不是oneway方法。Thrift會生成XXXClien
原创 MySQL-NonMySQL同步工具源碼解讀——確定同步位置
經過上一節的鑑權過後,程序已經受主庫認可,並且可以像主庫發起同步請求。在發起請求之前,還有一個可選的步驟:確認同步時間點。同步時間點由兩個屬性進行標識:Binlog文件名、偏移量。工具支持自定義時間點,如果沒有指定,默認從主庫的當前時間點開
原创 找出佔用空間最多的文件或目錄
# df -h 查看磁盤空間使用情況! # du -cks * | sort -rn | head -n 10 找出佔用空間最多的文件或目錄
原创 getComponentType、isPrimitive方法說明
Class<?> getComponentType()方法是Class中的方法,可以返回表示數組類型的Class。 boolean isPrimitive()用來判斷指定的Class類是否爲一個基本類型。 例:String [] arr =
原创 我的友情鏈接
Keep Movingluojing肖舸的blog
原创 什麼是SysWow64
今天有個同事,被SysWow64搞暈了。這裏簡單介紹一下。64位的Windows並不是簡單地把所有東西都編譯成64位就萬事大吉的。關於64位的CPU應該做成什麼樣子,Intel和AMD曾有各自的打算。AMD的回答直接了當:新的64位處理器,
原创 Java零碎知識
裝載、連接、初始化 Java的class文件,會在裝載的時候,生成Class信息。缺失的符號,通過連接,變成直接引用。雖然我們都是對一個不存在的類發起引用的時候,發生類沒有定義的異常,但是這並不意味着裝載和連接一定是lazy模式的,只
原创 Eventlet
If it’s your first time to Eventlet, you may find the illuminated examples in the Design Patterns document to be a good
原创 MIME::Base64::encode格式
這個函數比較坑,用它生成Zookeeper的acl,末尾總會多個%0A,正確的應該是以等號結尾。 果斷使用chomp把生成的串洗白白~~
原创 Jar包內讀取配置文件
1. 獲取Jar包的相對路徑 關於此話題,網上衆說紛紜。經嘗試,下面的方法是OK的。 1. xxx.class.getResource("filename") 這裏的filename是基於xxx的class文件的相對路徑
原创 解決 Net::ZooKeeper找不到動態鏈接庫符號問題
引用Net::ZooKeeper這個包,可能會報這個錯誤Can't load '/usr/local/lib64/perl5/auto/Net/ZooKeeper/ZooKeeper.so' for module Net::ZooK