原创 TypeScript名詞解釋系列 -- tsconfg中的target,module和moduleResolution

tsconfg中的target,module和moduleResolution target  -- 就是TypeScript文件編譯後生成的javascript文件裏的語法應該遵循哪個JavaScript的版本。可選項爲:"ES5",

原创 springboot中,如何利用AOP,實現函數執行時間打印並支持給annotation傳遞參數

需求: 利用AOP和annotation,實現當指定函數的執行時間超過閾值後,打印log 實現: 1,定一個帶參數的annotation @Retention(RetentionPolicy.RUNTIME) @Target(Eleme

原创 如何在nginx 反向代理(proxy_pass)配置swagger2

假設: 1,部署swagger2的server的ip地址爲:192.168.1.10 2,通過url:http://my.test.com/report 訪問上述swagger2nginx配置如下: server {     listen

原创 SpringBoot小常識系列--配置文件相關屬性的命名規則

SpringBoot小常識系列--配置文件相關屬性的命名規則 參見官方文檔: https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-featu

原创 如何管理SpringBoot子模塊的配置文件

前言 如何創建和使用springboot子模塊來管理和共享代碼,參考如下鏈接:https://spring.io/guides/gs/multi-module/ 總體結構就是, 1,創建一個父工程(parent),用於整合所有模塊,一般是

原创 spring boot 2: 如何啓用tomcat的nio2協議(Http11Nio2Protocol)

@Slf4j @Component class AppTomcatConnectorCustomizer implements WebServerFactoryCustomizer<ConfigurableServletWebServe

原创 基於embedded jetty server的websocket開發

基於embedded jetty server的websocket開發 websocket提供一種在瀏覽器和服務器之間的全雙工通信(full-duplex),替代了傳統的輪詢(polling)做法。目前,在一些web-base的富文本

原创 JAVAScript:mobile端,基於transform-origin和tranform(scale),實現表格縮放

需求: 1,實現表格區域的縮放,而不是整個頁面。整個頁面包含toolbar + table。 其中只縮放table區域 2,已用戶操作處進行縮放,而不是固定的某個點,例如中心點,或左上角,筆記縮放時,數據

原创 隨想 -- SaaS項目中問題的發現和解決

在線問題根據出現時序的分類 做在線服務,有一個重要的指標就是有效時間或者說高可用性(high availability)。而保證這個指標通常的方法中,除了增加一些備份的候選服務(在主服務發生錯誤後,取代主服務的角色),就是最好能夠做到

原创 談一談Java開發中的坑(一) -- log4j2在SaaS項目中的應用

背景介紹: 做server端開發有些年頭了,特別是開始做SaaS類型的項目時,深知log的重要性,特別是半夜三更用戶(大都是美國那邊的)遇到問題的電話打過來,這個時候沒有一個強大log,那只有抓瞎的份了。以前都是走的微軟系的開發工具,l

原创 隨想(二)-- 基於負載均衡和本地鎖的分佈式鎖

實現背景 業務需求實現多人對同一片文檔的協同編輯,要求採用第一個發起請求時,當前文檔的最新版本作爲協同內容的基礎,多人同時請求時,要保證,所有請求獲得相同的文檔內容 現有架構 其中 用戶請求到WebServer之間是給予WebS

原创 typescript -- 全棧工程師的利器

做了將近10年的服務器端代碼開發,現在轉到前段開發,略有不適應。最最無法接受的有兩點:1, JS不是強類型,無法很好的通過編譯的手段發現問題,使得產品迭代中,很容易出bug,如果自動化測試程度再低點,產品質

原创 如何利用數據庫實現簡單的分佈式鎖

問題:現在的手頭的項目大多開始使用nodejs了,nodejs的單線程本質,導致大多數nodejs的項目都採用pm2等類似的進程管理工具,採用多進程的方式(也即是同時啓動目標項目的多個實例),提高應用的吞吐量和cpu的利用率。但這也要求在

原创 MongoDB一對多模式的三種設計方案

今天讀了篇文章,關於mongodb裏,一對多模式下的schema設計方案,感覺說的挺清晰,所以分享一下。原鏈接:https://www.mongodb.com/blog/post/6-rules-of-thumb-for-mongodb-

原创 談談在Tyepscript(version:2.2.2)擴展(extends)built-in類型(e.g. Array)的問題

前兩天用typescript寫代碼的時候,像擴展一下內置的數據類型:Array,結果發現編譯出的js文件,運行時提示找不到擴展的方法。google以後發現如下說法: Why doesn't extending built-ins lik