<input id="ohw05"></input>
  • <table id="ohw05"><menu id="ohw05"></menu></table>
  • <var id="ohw05"></var>
  • <code id="ohw05"><cite id="ohw05"></cite></code>
    <label id="ohw05"></label>
    <var id="ohw05"></var>
  • 摘要: 新的一年第一篇技術文章希望開個好頭,所以元旦三天我也沒怎么閑著,希望給大家帶來一篇比較感興趣的干貨內容。 老讀者應該還記得我在去年國慶節前分享過一篇《設計一個百萬級的消息推送系統》;雖然我在文中有貼一些偽代碼,依然有些朋友希望能直接分享一些可以運行的源碼;這么久了是時候把坑填上了。 閱讀全文
    posted @ 2019-01-02 08:03 crossoverJie 閱讀(15514) 評論(31) 推薦(41) 編輯
    摘要: 首先遲到的祝大家中秋快樂。 最近一周多沒有更新了。其實我一直想憋一個大招,分享一些大家感興趣的干貨。 鑒于最近我個人的工作內容,于是利用這三天小長假憋了一個出來(其實是玩了兩天??)。 閱讀全文
    posted @ 2018-09-25 08:22 crossoverJie 閱讀(11649) 評論(33) 推薦(28) 編輯
    摘要: 已經記不清有多少讀者問過: 博主,你是怎么學習的?像我這樣的情況有啥好的建議嘛? 也不知道啥時候我居然成人生導師了。當然我不排斥這些問題,和大家交流都是學習的過程。 閱讀全文
    posted @ 2018-08-13 08:05 crossoverJie 閱讀(3344) 評論(16) 推薦(25) 編輯
    摘要: 之前在 Java-Interview 中提到過秒殺架構的設計,這次基于其中的理論簡單實現了一下。 本次采用循序漸進的方式逐步提高性能達到并發秒殺的效果,文章較長請準備好瓜子板凳(liushuizhang??)。 閱讀全文
    posted @ 2018-07-26 08:02 crossoverJie 閱讀(2549) 評論(12) 推薦(14) 編輯
    摘要: 前言 之前在寫 gscript時我就在想有沒有利用編譯原理實現一個更實際工具?畢竟真寫一個語言的難度不低,并且也很難真的應用起來。 一次無意間看到有人提起 JSON 解析器,這類工具充斥著我們的日常開發,運用非常廣泛。 以前我也有思考過它是如何實現的,過程中一旦和編譯原理扯上關系就不由自主的勸退了; 閱讀全文
    posted @ 2022-06-28 12:12 crossoverJie 閱讀(879) 評論(0) 推薦(9) 編輯
    摘要: 前言 最近又在重新學習編譯原理了,其實兩年前也復習過,當初是為了能實現通過 MySQL 的 DDL 生成 Python 中 sqlalchemy 的 model。 相關文章在這里:手寫一個詞法分析器 雖然完成了相關功能,但現在看來其實實現的比較糙的,而且也只運用到了詞法分析;所以這次我的目的是可以通 閱讀全文
    posted @ 2022-05-31 12:49 crossoverJie 閱讀(559) 評論(1) 推薦(1) 編輯
    摘要: 背景 前段時間同事碰到一個問題,需要在 SpringCloud 的 Feign 調用中使用自定義的 URL;通常情況下是沒有這個需求的;畢竟都用了 SpringCloud 的了,那服務之間的調用都是走注冊中心的,不會需要自定義 URL 的情況。 但也有特殊的,比如我們這里碰到 ToB 場景,需要對每 閱讀全文
    posted @ 2022-05-23 17:50 crossoverJie 閱讀(1288) 評論(2) 推薦(4) 編輯
    摘要: 前言 大概在兩年前我寫過一篇 擼了一個 Feign 增強包,當時準備是利用 SpringBoot + K8s 構建應用,這個庫可以類似于 SpringCloud 那樣結合 SpringBoot 使用聲明式接口來達到服務間通訊的目的。 但后期由于技術棧發生變化(改為 Go),導致該項目只實現了基本需求 閱讀全文
    posted @ 2022-05-06 13:13 crossoverJie 閱讀(290) 評論(1) 推薦(1) 編輯
    摘要: 背景 許久沒有分享 Java 相關的問題排查了,最近幫同事一起排查了一個問題: 在使用 Pulsar 消費時,發生了同一條消息反復消費的情況。 排查 當他告訴我這個現象的時候我就持懷疑態度,根據之前使用的經驗 Pulsar 在官方文檔以及 API 中都解釋過: 只有當設置了消費的 ackTimeou 閱讀全文
    posted @ 2022-03-23 18:02 crossoverJie 閱讀(155) 評論(0) 推薦(0) 編輯
    摘要: 介紹 我猜測大部分長期使用 Java 的開發者應該較少會接觸 gRPC,畢竟在 Java 圈子里大部分使用的還是 Dubbo/SpringClound 這兩類服務框架。 我也是近段時間有機會從零開始重構業務才接觸到 gRPC 的,當時選擇 gRPC 時也有幾個原因: 基于云原生的思路開發部署項目,而 閱讀全文
    posted @ 2022-03-10 18:15 crossoverJie 閱讀(703) 評論(0) 推薦(0) 編輯
    摘要: 前言 最近實現某個業務時,需要讀取數據然后再異步處理;在 Go 中實現起來自然就比較簡單,偽代碼如下: list := []*Demo{{"a"}, {"b"}} for _, v := range list { go func() { fmt.Println("name="+v.Name) }() 閱讀全文
    posted @ 2021-12-28 00:43 crossoverJie 閱讀(629) 評論(1) 推薦(2) 編輯
    摘要: 前言 早在幾年前寫過關于 LRU cache 的文章: https://crossoverjie.top/2018/04/07/algorithm/LRU-cache/ 當時是用 Java 實現的,最近我在完善 ptg 時正好需要一個最近最少使用的數據結構來存儲歷史記錄。 ptg: Performa 閱讀全文
    posted @ 2021-12-20 18:27 crossoverJie 閱讀(232) 評論(0) 推薦(0) 編輯
    摘要: 前言 平時大家寫完 gRPC 接口后是如何測試的?往往有以下幾個方法: 寫單測代碼,自己模擬客戶端測試。 可以搭一個 gRPC-Gateway 服務,這樣就可以在 postman 中進行模擬。 但這兩種方法都不是特別優雅;第一種方法當請求結構體嵌套特別復雜時,在代碼中維護起來就不是很直觀;而且代碼會 閱讀全文
    posted @ 2021-11-29 18:03 crossoverJie 閱讀(578) 評論(2) 推薦(1) 編輯
    摘要: 前言 前段時間有個項目即將上線,需要對其中的核心接口進行壓測;由于我們的接口是 gRPC 協議,找了一圈發現壓測工具并不像 HTTP 那么多。 最終發現了 ghz 這個工具,功能也非常齊全。 事后我在想為啥做 gRPC 壓測的工具這么少,是有什么難點嘛?為了驗證這個問題于是我準備自己寫一個工具。 特 閱讀全文
    posted @ 2021-11-15 17:40 crossoverJie 閱讀(70) 評論(0) 推薦(0) 編輯
    国产美女a做受大片观看