摘要:Java + robotframework + seleniumlibrary 使用Robot Framework Maven Plugin(//robotframework.org/MavenPlugin/)執行自動化測試 chromedriver下載: //chromedri 閱讀全文
posted @ 2019-08-11 15:58 胡峻崢 閱讀 (80) 評論 (0) 編輯
摘要:背景 目前開發過程中,按照公司規范,需要依賴框架中的緩存組件。不得不說,做組件的大牛對CRUD操作的封裝,連接池、緩存路由、緩存安全性的管控都處理的無可挑剔。但是有一個小問題,該組件沒有對分布式鎖做實現,那就要想辦法依靠緩存組件自己去實現一個分布式鎖了。 什么,為啥要自己實現?有現成的開源組件直接拿 閱讀全文
posted @ 2019-08-05 08:43 胡峻崢 閱讀 (407) 評論 (0) 編輯
摘要:上一篇(基于zookeeper實現分布式配置中心(一))講述了zookeeper相關概念和工作原理。接下來根據zookeeper的特性,簡單實現一個分布式配置中心。 配置中心的優勢 1、各環境配置集中管理。 2、配置更改,實時推送,jvm環境變量及時生效。 3、依靠配置變更,動態擴展功能,減少二次上 閱讀全文
posted @ 2019-06-06 16:43 胡峻崢 閱讀 (520) 評論 (4) 編輯
摘要:最近在學習zookeeper,發現zk真的是一個優秀的中間件。在分布式環境下,可以高效解決數據管理問題。在學習的過程中,要深入zk的工作原理,并根據其特性做一些簡單的分布式環境下數據管理工具。本文首先對zk的工作原理和相關概念做一下介紹,然后帶大家做一個簡單的分布式配置中心。 zookeeper介紹 閱讀全文
posted @ 2019-05-19 09:07 胡峻崢 閱讀 (489) 評論 (3) 編輯
摘要:前兩篇(Spring MVC源碼——Root WebApplicationContext 和 Spring MVC源碼——Servlet WebApplicationContext)講述了springmvc項目創建上下文的過程,這一篇帶大家了解一下springboot項目創建上下文的過程。 Spri 閱讀全文
posted @ 2019-05-13 09:13 胡峻崢 閱讀 (354) 評論 (0) 編輯
摘要:上一篇筆記(Spring MVC源碼——Root WebApplicationContext)中記錄了下 Root WebApplicationContext 的初始化代碼.這一篇來看 Servlet WebApplicationContext 的初始化代碼 DispatcherServlet 是另 閱讀全文
posted @ 2019-05-07 13:16 胡峻崢 閱讀 (302) 評論 (2) 編輯
摘要:Spring MVC源碼——Root WebApplicationContext 打算開始讀一些框架的源碼,先拿 Spring MVC 練練手,歡迎點擊這里訪問我的源碼注釋, SpringMVC官方文檔一開始就給出了這樣的兩段示例: WebApplicationInitializer示例: web. 閱讀全文
posted @ 2019-05-06 15:22 胡峻崢 閱讀 (402) 評論 (2) 編輯
摘要:一、前言 最近做了電子發票的需求,分省開票接口和發票下載接口都有一定的延遲。為了完成開票后自動將發票插入用戶微信卡包,目前的解決方案是利用線程池,將開票后插入卡包的任務(輪詢分省發票接口,直到獲取到發票相關信息或者輪詢次數用完,如果獲取到發票信息,執行發票插入微信卡包,結束任務)放入線程池異步執行。 閱讀全文
posted @ 2019-04-06 23:08 胡峻崢 閱讀 (427) 評論 (3) 編輯
摘要:一、Spring異步調用底層原理 開啟異步調用只需一個注解@EnableAsync AsyncConfigurationSelector的作用是從兩個異步配置類中選擇一個來完成底層異步代理的工作。這個兩個配置類分別是AspectJAsyncConfiguration、ProxyAsyncConfig 閱讀全文
posted @ 2019-03-18 17:50 胡峻崢 閱讀 (692) 評論 (0) 編輯
摘要:一、引入依賴 二、PDF轉PNG代碼 三、PNG中文方塊亂碼 查看linux服務器上的字體庫如下。 轉換后的PNG如下。 日志中打印出類似這樣的日志(例:Using fallback XXX for CID-keyed font STSong-Light),就說明系統沒有安裝STSong-Light 閱讀全文
posted @ 2019-03-10 23:50 胡峻崢 閱讀 (969) 評論 (0) 編輯
摘要:一、前言 本文章所講并沒有基于Aspectj,而是直接通過Cglib以及ProxyFactoryBean去創建代理Bean。通過下面的例子,可以看出Cglib方式創建的代理Bean和ProxyFactoryBean創建的代理Bean的區別。 二、基本測試代碼 測試實體類,在BPP中創建BppTest 閱讀全文
posted @ 2019-03-03 00:50 胡峻崢 閱讀 (768) 評論 (2) 編輯
摘要:前言 之前研究了一下如何使用ScheduledThreadPoolExecutor動態創建定時任務(Springboot定時任務原理及如何動態創建定時任務),簡單了解了ScheduledThreadPoolExecutor相關源碼。今天看了同學寫的ThreadPoolExecutor 的源碼解讀,甚 閱讀全文
posted @ 2019-02-12 14:13 胡峻崢 閱讀 (117) 評論 (0) 編輯
摘要:一、前言 上周工作遇到了一個需求,同步多個省份銷號數據,解綁微信粉絲。分省定時將銷號數據放到SFTP服務器上,我需要開發定時任務去解析文件。因為是多省份,服務器、文件名規則、數據規則都不一定,所以要做成可配置是有一定難度的。數據規則這塊必須強烈要求統一,服務器、文件名規則都可以從配置中心去讀。每新增 閱讀全文
posted @ 2019-02-07 22:02 胡峻崢 閱讀 (2846) 評論 (1) 編輯
摘要:一、前言 最近負責支付寶小程序后端項目設計,這里主要分享一下用戶會話、接口鑒權的設計。參考過微信小程序后端的設計,會話需要依靠redis。相關的開發人員和我說依靠Redis并不是很靠譜,redis在業務高峰期不穩定,容易出現問題,總會出現用戶會話丟失、超時的問題。之前聽過JWT相關的設計,決定嘗試一 閱讀全文
posted @ 2019-01-20 00:25 胡峻崢 閱讀 (2471) 評論 (3) 編輯
摘要:一、前言 最近帶著兩個兄弟做支付寶小程序后端相關的開發,小程序首頁涉及到很多查詢的服務。小程序后端服務在我司屬于互聯網域,相關的查詢服務已經在核心域存在了,查詢這塊所要做的工作就是做接口中轉。參考了微信小程序的代碼,發現他們要么新寫一個接口調用,要么新寫一個接口包裹多個接口調用。這種方式不容易擴展。 閱讀全文
posted @ 2019-01-10 18:42 胡峻崢 閱讀 (680) 評論 (2) 編輯
摘要:前言 之前讀過一些類的源碼,近來發現都忘了,再讀一遍整理記錄一下。這次讀的是 JDK 11 的代碼,貼上來的源碼會去掉大部分的注釋, 也會加上一些自己的理解。 Map 接口 這里提一下 Map 接口與1.8相比 Map接口又新增了幾個方法: 這些方法都是包私有的static方法; of()方法分別返 閱讀全文
posted @ 2019-01-06 23:56 胡峻崢 閱讀 (334) 評論 (0) 編輯
摘要:支付寶官方解密文檔:https://docs.alipay.com/mini/introduce/aes 雖然是參考代碼,但個人感覺太隨意了。做了一些簡單的修改,編譯和邏輯都沒有問題了。 解密報文示例。 閱讀全文
posted @ 2018-12-27 13:19 胡峻崢 閱讀 (514) 評論 (0) 編輯
摘要:一、前言 由于之前寫過的一片文章 (java接口簽名(Signature)實現方案 )收獲了很多好評,此次來說一下另一種簡單粗暴的簽名方案。相對于之前的簽名方案,對body、paramenter、path variable的獲取都做了簡化的處理。也就是說這種方式針所有數據進行了簽名,并不能指定某些數 閱讀全文
posted @ 2018-12-26 13:51 胡峻崢 閱讀 (2080) 評論 (0) 編輯
摘要:工程中的nginx配置 nginx配置詳解參考:Nginx配置文件(nginx.conf)配置詳解 include /home/xxx/opt/nginx/conf.d/mime.types; 參考:nginx proxy_pass和rewrite的區別 Nginx之proxy_redirect詳解 閱讀全文
posted @ 2018-12-14 13:26 胡峻崢 閱讀 (1097) 評論 (0) 編輯
摘要:CacheManager基本配置 請參考博文:springboot2.0 redis EnableCaching的配置和使用 RedisCacheManager構造函數 RedisCacheManager需要一個 RedisOperations實例,一般是RedisTemplate?;褂幸桓霾槐匭氳? 閱讀全文
posted @ 2018-12-10 15:42 胡峻崢 閱讀 (2061) 評論 (0) 編輯
摘要:一、前言 為什么要設計kafka告警方案?現成的監控項目百度一下一大堆,KafkaOffsetMonitor、KafkaManager、 Burrow等,具體參考:kafka的消息擠壓監控。由于本小組的項目使用的kafka集群并沒有被公司的kafka-manager管理,所以只能自己簡單做一個告警。 閱讀全文
posted @ 2018-12-04 15:53 胡峻崢 閱讀 (488) 評論 (0) 編輯
摘要:kafka-manager配置 最主要配置就是用于kafka管理器狀態的zookeeper主機。這可以在conf目錄中的application.conf文件中找到。 當然也可以聲明為zookeeper集群。 另外也可以通過環境變量ZK_HOSTS來表示。 自定義kafka-manager功能,類似于 閱讀全文
posted @ 2018-11-20 00:04 胡峻崢 閱讀 (948) 評論 (0) 編輯
摘要:一、前言 高效、合理的使用hibernate-validator校驗框架可以提高程序的可讀性,以及減少不必要的代碼邏輯。接下來會介紹一下常用一些使用方式。 二、常用注解說明 三、定義校驗分組 四、定義校驗Bean 請自行參考:@Validated和@Valid區別 五、validator基本使用 這 閱讀全文
posted @ 2018-11-13 18:56 胡峻崢 閱讀 (3415) 評論 (0) 編輯
摘要:報錯內容 None of the configured nodes are available elasticsearch.yml配置 Java客戶端配置 ES客戶端屬性配置 問題追蹤 在異常棧中定位到 org.elasticsearch.client.transport.TransportClie 閱讀全文
posted @ 2018-11-12 18:37 胡峻崢 閱讀 (694) 評論 (0) 編輯
摘要:一、前言 公司中的項目雖然已經用了很多的新技術了,但是日志的底層框架還是log4j,個人還是不喜歡用這個的。最近項目再生產環境上由于log4j引起了一場血案,于是決定升級到log4j2。 二、現象 雖然生產環境有多個結點分散高并發帶來的壓力,但是消息中心上一周好多接入方接入,導致并發量一下就增多了, 閱讀全文
posted @ 2018-11-09 20:50 胡峻崢 閱讀 (2885) 評論 (0) 編輯
摘要:一、接口開關功能 1、可配置化,依賴配置中心 2、接口訪問權限可控 3、springmvc不會掃描到,即不會直接的將接口暴露出去 二、接口開關使用場景 和業務沒什么關系,主要方便查詢系統中的一些狀態信息。比如系統的配置信息,中間件的狀態信息。這就需要寫一些特定的接口,不能對外直接暴露出去(即不能被s 閱讀全文
posted @ 2018-11-04 01:08 胡峻崢 閱讀 (578) 評論 (0) 編輯
摘要:一、前言 為什么要在本地開發機器上安裝nexus?首先聲明公司內部是有自己的nexus倉庫,但是對上傳jar包做了限制,不能暢快的上傳自己測試包依賴。于是就自己在本地搭建了一個nexus私服,即可以使用公司nexus私服倉庫中的依賴,也可以上傳和使用自己的測試包依賴。 二、nexus下載 Downl 閱讀全文
posted @ 2018-10-18 07:35 胡峻崢 閱讀 (3879) 評論 (3) 編輯
摘要:一、前言 spring為開發人員提供了兩個搜索注解的工具類,分別是AnnotatedElementUtils和AnnotationUtils。在使用的時候,總是傻傻分不清,什么情況下使用哪一個。于是我做了如下的整理和總結。 二、AnnotationUtils官方解釋 功能 用于處理注解,處理元注解, 閱讀全文
posted @ 2018-10-15 15:54 胡峻崢 閱讀 (3704) 評論 (0) 編輯
摘要:一、前言 javax.servlet.http.HttpServletRequestWrapper 是一個開發者可以繼承的類,我們可以重寫相應的方法來實現session的自定義以及緩存InputStream,在程序中可以多次獲取request body的內容。 二、自定義seesion 也許大家都用 閱讀全文
posted @ 2018-10-10 15:52 胡峻崢 閱讀 (2227) 評論 (0) 編輯
摘要:一、前言 一句話,git rebase 可以幫助項目中的提交歷史干凈整潔?。?! 二、避免合并出現分叉現象 git merge操作 1、新建一個 develop 分支 2、在develop分支上新建兩個文件 3、然后分別執行 add、commit、push 4、接著切換到master分支 分別添加c. 閱讀全文
posted @ 2018-09-30 19:07 胡峻崢 閱讀 (6481) 評論 (1) 韩国快乐8开奖结果查询