原创 工程化專題之Git

前言 一個專業的程序員,怎麼能不掌握Git呢?版本控制領域,已經發展了一段時間,從古老的CVS,到SVN集中式管理,再到現在的Git。由於Git的分佈式、everything is local、分支等諸多特性,讓越來越多的項目開始從SVN遷

原创 數據庫,你好!

大學時就開始學習數據庫,到工作2年多了,接觸過很多數據庫相關的產品,如Oracle/MySQL這樣的RDBMS,Redis/Mongodb這樣的NoSQL,還有Hive/HBase這樣的大數據技術。雖然說招式學了很多,而好的程序員應當知道數

原创 分佈式服務治理框架Dubbo

前言Dubbo是一個被國內很多互聯網公司廣泛使用的開源分佈式服務治理框架,是一個非常全面的SOA基礎框架,噹噹網在Dubbo基礎上新增了一些功能,並將其命名爲Dubbox(Dubbo eXtensions)。爲什麼需要Dubbo?以前所有的

原创 對高併發流量控制的一點思考

前言 在實際項目中,曾經遭遇過線上5W+QPS的峯值,也在壓測狀態下經歷過10W+QPS的大流量請求,本篇博客的話題主要就是自己對高併發流量控制的一點思考。 應對大流量的一些思路 首先,我們來說一下什麼是大流量? 大流量,我們很可能會冒出

原创 【隨筆】JVM核心:JVM運行和類加載

前言 本篇博客將寫一點關於JVM的東西,涉及JVM運行時數據區、類加載的過程、類加載器、ClassLoader、雙親委派機制、自定義類加載器等,這些都是博主自己的一點理解,如果有誤,歡迎大家評論拍磚~ 關於JVM運行時數據區 關於類加載

原创 分佈式利器Zookeeper(三)

前言《分佈式利器Zookeeper(一)》《分佈式利器Zookeeper(二):分佈式鎖》本篇博客是分佈式利器Zookeeper系列的最後一篇,涉及的話題是:Zookeeper分佈式鎖的代碼實現、zkclient的使用、Curator框架介

原创 從程序員的角度深入理解MySQL

前言作爲一名工作了4年的程序猿,今天我將站在程序員的角度以MySQL爲例探索數據庫的奧祕!數據庫基本原理第一,數據庫的組成:存儲 + 實例不必多說,數據當然需要存儲;存儲了還不夠,顯然需要提供程序對存儲的操作進行封裝,對外提供增刪改查的AP

原创 實現一個迷你版的RPC

前言 在實際後臺服務開發中,比如訂單服務(開發者A負責)需要調用商品服務(開發者B負責),那麼開發者B會和A約定調用API,以接口的形式提供給A。通常都是B把API上傳到Maven私服,然後B開始寫API的實現,A只需要引入API依賴進行開

原创 分析動態代理給Spring事務埋下的坑

前言 Spring的聲明式事務讓我們不在編寫獲得連接、關閉連接、開啓事務、提交事務、回滾事務等代碼,通過一個簡單的@Transactional註解,就讓我們輕鬆進行事務處理。我們知道Spring事務基於AOP,採用動態代理實現,雖然使用簡單

原创 奮鬥誓言

我要做自己的主人,我要做自己喜歡做的事情。我要創造,要冒險,要失敗,也要成功。我寧願實現夢想的激動,也不要毫無生氣的平靜。我決不在任何一位權威面前發抖,也不爲任何批評所屈服。生而爲人的天性,就是昂首挺胸,無所畏懼,勇敢地面對風

原创 【公告】本人的簡書地址

如果你喜歡我的博客,請到我的簡書來看看吧:http://www.jianshu.com/u/cb569cce501b

原创 Java通信實戰:編寫自定義通信協議實現FTP服務

前言以前,對JAVA通信,瞭解的不多,有些東西都迷迷糊糊的,經過一段時間的學習,知道了不少,也編寫了一個簡單的FTP服務器,下面分享給大家!實戰要做什麼?我們知道,很多WEB服務器,例如Apache HTTPD,Nginx等都提供類似上面圖

原创 分佈式利器Zookeeper(二):分佈式鎖

在《分佈式利器Zookeeper(一)》中對ZK進行了初步的介紹以及搭建ZK集羣環境,本篇博客將涉及的話題是:基於原生API方式操作ZK,Watch機制,分佈式鎖思路探討等。原生API操作ZK 什麼叫原生API操作ZK呢?實際上,利用zoo