博客 RSS 訂閱

jump__jump - 聊聊存儲引擎的實現要素

眾所周知,MySQL 的 InnoDB 存儲引擎使用了 B+ 樹作為索引實現,那麼為什麼不使用其他的數據結構呢?數組、鏈表或者哈希表。實現存儲引擎究竟需要什麼條件呢? 我們現在先以存儲最簡單的數據為例,這裏的數據類似於 json 對象。有 key 和 value。 { "0": "value1", "1": "value2" } 最簡單的存儲引擎必須實現以下三個方法: rea

服務端 , 性能優化 , 數據結構 , 數據庫設計 , 分析

收藏 評論

Duang - 使用依賴注入框架管理多實例服務(以 InversifyJS 為例)

在大型項目的管理中,控制反轉的思想是非常重要的。它可以幫助我們解耦代碼,提高代碼的可維護性。同時避免了不必要的重複實例化,降低內存泄漏的可能性。 而在 JS/TS 技術棧中,我們通常會使用依賴注入框架來幫助我們管理服務。這其中最佳的選擇當然是 Angular 這種大而全的大型工程開發框架。而對於使用了其他 UI 框架的項目來説,我們同樣可以額外引入一個輕量化的依賴注入框架。而 InversifyJ

架構設計 , typescript , ioc

收藏 評論

山東布穀科技 - 直播程序源碼技術分享主播邀請上麥功能

在我們日常生活中,常常要面臨很多的社交,而在眾多社交方式中,我們常使用的方式之一就是邀請別人進行交流,以聊天來熟悉對方,進行認識。我今天要分享的知識和這個社交方式有些相似,它是一種網絡中的社交,也可以稱之為互動,常常出現的直播程序源碼的直播間內,在直播程序源碼的直播間內的使用是由直播間內的主播對直播間的用户發起邀請,被邀請到的用户可以上到直播間內的麥位中,在麥位上的用户可以獲得説話的機會,大家可能

軟件開發 , 源碼 , 源碼分析 , 直播 , 程序設計

收藏 評論

京東雲開發者 - 一種接口依賴關係分層方案 | 京東雲技術團隊

1、背景 到店商詳迭代過程中,需要提供的對外能力越來越多,如預約日曆、附近門店、為你推薦等。這其中不可避免會出現多個上層能力依賴同一個底層接口的場景。最初採用的方案是對外API入口進來後獲取對應的能力,併發調用多項能力,由能力層調用對應的數據鏈路,進行業務處理。然而,隨着接入功能的增多,這種情況導致了底層數據服務的重複調用,如商品配置信息,在一次API調用過程中重複調了3次,當流量增大或能力項愈多

依賴注入 , API , 分層架構圖 , 接口設計

收藏 評論

京東雲開發者 - Maven進階學習指南 | 京東雲技術團隊

前言 當我們在開發項目時,有時需要用到外部依賴組件,例如當我們需要Json序列化的時候需要用到FastJson組件,我們可以通過下載對應jar包加載到項目中。但當一個大的項目同時需要依賴各種各樣的外部服務,就存在着配置繁瑣、依賴衝突等問題,因此可以通過maven來完成對應的依賴管理功能。 一、Settings配置 settings.xml用來配置maven項目中的各種參數文件,包括本地倉庫、遠程倉

依賴注入 , maven , JAVA , 鏡像 , 後端

收藏 評論

阿里雲開發者 - 提升您的 MQTT 雲服務:深入探索 BYOC

引言 您是否希望將物聯網基礎設施提升到更高的水平?為了應對業務的不斷擴展,您需要一個強大且安全的消息平台來支持它。 MQTT 協議憑藉其輕量級、發佈/訂閲模型和可靠性,已經成為構建物聯網平台的首選方案。但是,隨着業務的增長,物聯網解決方案提供商可能面臨基礎設施維護費用上升和數據隱私要求提高的挑戰。 開源 MQTT 消息平台的領導者 EMQ 近日推出了 EMQX Cloud BYOC,允許用户在自選

擴展 , 物聯網 , 阿里雲 , 雲服務 , mqtt

收藏 評論

noear - Solon Web 也支持響應式開發了?!

"solon.web.flux" 是 solon v2.3.6 新推出的生態插件,為 solon web 提供響應式接口支持 (io.projectreactor) 。為什麼叫這個名呢?因為用户羣裏投票説,這個名大家一看就知道是幹啥的! 這個插件,支持所有 solon 已適配的 http server 插件,包括 jdk 自帶的 sun http server。情況如下: 插件

框架 , JAVA , 響應式 , Web

收藏 評論

OpenResty - 在微軟 Azure 雲上安裝自主部署版 OpenResty XRay

今天我們要演示如何在微軟的 Azure 雲上部署自主部署版的OpenResty XRay。視頻演示中用到的命令説明,詳見文檔。創建訂閲和資源組第一步我們要創建訂閲和資源組,打開 Azure 首頁,點擊訂閲圖標。 這裏我們已經提前創建好了訂閲,名字叫 Azure subscription 1。 再返回 Azure 首頁。 準備創建資源組,點擊資源組圖標。

動態追蹤 , openresty-xray , openresty , Nginx

收藏 評論

limingcan - 弄懂這幾個概念後,我對webpack有了新的理解

前言 隨着vite的誕生,webpack似乎漸漸的被大家拋棄。前陣子我也用vue@3.x + vite@4.x開發了一個後台管理系統,體驗了一把,確實有被vite飛快的啓動速度給驚豔到。 但是畢竟webpack已經誕生了許久,也經過市場的一些考驗,並且它有着豐富的插件,豐富的功能,一些大型的項目也使用過它,目前來説,它是一個相對於vite來説更穩定的打包工具。 基於以下原因: 有些公司由於歷史

構建工具 , webpack5 , webpack , 前端 , Javascript

收藏 評論

京東雲開發者 - 從2PC和容錯共識算法討論zookeeper中的Create請求 | 京東雲技術團隊

最近在讀《數據密集型應用系統設計》,其中談到了zookeeper對容錯共識算法的應用。這讓我想到之前參考的zookeeper學習資料中,誤將容錯共識算法寫成了2PC(兩階段提交協議),所以準備以此文對共識算法和2PC做梳理和區分,也希望它能幫助像我一樣對這兩者有誤解的同學。 1. 2PC(兩階段提交協議) 兩階段提交 (two-phase commit) 協議是一種用於實現跨多個節點的原子事務(分

算法 , zookeeper , 後端 , create-react-app

收藏 評論

京東雲開發者 - ClickHouse數據表遷移實戰之-remote方式 | 京東雲技術團隊

1 引言 ClickHouse是一個用於聯機分析(OLAP)的列式數據庫管理系統(DBMS)。我們內部很多的報表、數據看板都基於它進行開發。今天為大家帶來remote方式的ClickHouse數據表遷移的完整過程介紹,如有錯誤,還請各位大佬指正。 以下sql語句為測試使用,如需使用請根據實際情況修改。 2 背景 我們使用的是京東雲提供的分佈式數據庫 JCHDB,原ClickHouse是兩個部門共用

csv , 數據庫 , clickhouse , remote-addr

收藏 評論

會説話的樹 - uniapp開發app,使用高德地圖,如何進行打包配置

使用uni.chooseLocation()下方的搜索一直顯示加載中 造成這樣的原因是因為沒有配置key、權限等原因造成的。 一、創建高德地圖key 這裏需要獲取SHA1、需要先安裝jdk工具,由於我們需要用到SHA1、SHA256、MD5 目前最新版的jdk已經不支持MD5了,僅支持sha1,sha256兩種簽名。 分享一下可以獲取MD5的舊版本jdk 下載鏈接

高德地圖 , uniapp , Android , 前端

收藏 評論

cyl173 - 【後端面經-Java】HashMap詳解

1. HashMap的家族定位 接口java.util.Map有四個常用的實現類,如圖是它們之間的類繼承關係。 下面我將一一介紹其性能特點。 HashMap: 最常用的Map實現類,通過使用Hash表結構,提高查找速度; 使用鍵值對作為存儲節點,只允許一個key值為null,允許多個value值為null; 線程不安全,對於線程安全有要求的程序,可以考慮使

hashmap , 面試 , 源碼分析 , JAVA , 後端

收藏 評論

阿里雲開發者 - 通過用户名密碼認證保障 MQTT 接入安全

認證是一種安全措施,用於識別用户並驗證他們是否有權訪問系統或服務器。它能夠保護系統免受未經授權的訪問,確保只有經過驗證的用户才能使用系統。物聯網連接萬物,對試圖訪問基礎設施的用户進行認證至關重要。未經授權的訪問存在重大的安全隱患,必須加以防範。因此,物聯網開發者應該全面瞭解各類認證方法。 在本文中,我們將探討 MQTT 中的認證機制,以及其可以解決什麼安全風險,並介紹一種常用的認證方式:基於密碼的

系統 , 阿里雲 , mqtt , 安全 , 認證授權

收藏 評論

LnEoi - axios中responseType配置blob、arraybuffer、stream值有什麼差異

Axios處理文件下載時,需要配置responseType將返回數據處理成指定格式,官方文檔是這樣寫的: { // `responseType` indicates the type of data that the server will respond with // options are: 'arraybuffer', 'document', 'json', 'text', 'st

Axios , blob , stream , 前端 , Javascript

收藏 評論

Hunter - Redis數據結構二之SDS和雙向鏈表

本文首發於公眾號:Hunter後端 原文鏈接:Redis數據結構二之SDS和雙向鏈表 這一篇筆記介紹一下 SDS(simple dynamic string)和雙向鏈表。 以下是本篇筆記目錄: SDS 常數複雜度獲取字符串長度 杜絕緩衝區溢出 減少修改字符串帶來的內存重分配次數 二進制安全 兼容C字符串函數 雙向鏈表 1、 S

redis , 鏈表 , 後端

收藏 評論

cyl173 - 【後端面經-Spring】Spring 中 bean 的生命週期

1.bean簡介 bean是一個對象,是由Spring中的IoC創建、實例化的對象。 一般的java對象,使用的時候創建,不需要就釋放內存進行銷燬,而bean的生命週期更加複雜 作用域 singleton:默認單例形式,唯一的bean實例。 prototype:每次請求都會創建一個新的bean實例。 request:每次HTTP請求都會創建一個新的bean實例

spring , 生命週期 , 面試 , bean , 後端

收藏 評論

北冥有隻魚 - HTTP/2.0的二進制是什麼?

這篇純粹滿足自己的好奇心 我好像是一個在海邊玩耍的孩子,不時為拾到比通常更光滑的石子或更美麗的 貝殼而歡欣鼓舞,而展現在我面前的是完全未探明的真理之海。牛頓 寫本文的時候,想起高中物理課本的一句話: 我好像是一個在海邊玩耍的孩子,不時為拾到比通常更光滑的石子或更美麗的貝殼而歡欣鼓舞,而展現在我面前的是完全未探明的真理之海。 那個時候不懂這句話,忙於刷分,如今純粹是為了自己的好奇心而探究一些

http-2

收藏 評論

Etaon - Azure OpenAI 初體驗 - 20230619

參考文檔: Quickstart - Get started using ChatGPT and GPT-4 with Azure OpenAI Service - Azure OpenAI Service | Microsoft Learn 先決條件 Azure 訂閲 在所需的 Azure 訂閲中授予 Azure OpenAI 的訪問權限。 具有 或gpt-35-turbo已部署的模型。

azure , openai , openssl

收藏 評論

樹莓派開發者 - 「樹莓派」「上海晶珩」「EDATEC」 樹莓派音頻視頻播放

播放音頻 aplay music.mp3 如果不希望打印信息可以使用以下命令 aplay -q music.mp3 aplay文檔 播放視頻 桌面系統可以在左上角的開始菜單中找到vlc播放器 img :src="$withBase('/assets/RaspberryPiOS/Playing-Audio-Video/vlc.png')" vlc ./tes

嵌入式 , 物聯網 , raspberry-pi , 工業物聯網

收藏 評論

京東雲開發者 - Spring源碼核心剖析 | 京東雲技術團隊

前言 SpringAOP作為Spring最核心的能力之一,其重要性不言而喻。然後需要知道的是AOP並不只是Spring特有的功能,而是一種思想,一種通用的功能。而SpringAOP只是在AOP的基礎上將能力集成到SpringIOC中,使其作為bean的一種,從而我們能夠很方便的進行使用。 一、SpringAOP的使用方式 1.1 使用場景 當我們在日常業務開發中,例如有些功能模塊是通用的(日誌、權

spring , aop , 源碼分析 , springboot

收藏 評論

仁揚 - tcpdump 常用命令

最後更新時間 2021-10-05. Linux 的命令太多,tcpdump 是一個非常強大的抓包命令。 有時候想看線上發生的一些問題: nginx 有沒有客户端連接過來…… 客户端連接過來的時候 Post 上來的數據對不對…… 我的 Redis 實例到底是哪些業務在使用…… tcpdump 作為網絡分析神器就派上用場了! 它本身的命令和參數有點多,我也簡單記錄下一些常用的操作。 網上的

tcpdump , wireshark , Linux , 抓包過濾 , 後端

收藏 評論

Xi_Xu - 適用於 Visual Studio 的 C++ 萬能頭持續更新版(VS 萬能頭)

用於在 Visual Studio 上預編譯的 C++ 包含(stdc++.h for VS v1.0.0) 此文件是 GCC 13.1.0 中 bits/stdc++.h 文件的修改版本,與 Visual Studio 兼容。 修改由 Xi Xu 完成,他的個人官方主頁是 https://xi-xu-zg.github.io/。 修改版本是根據 GNU General Public Li

gcc , 編譯 , c++ , visual-studio , ide

收藏 評論

YYGP - Debian11安裝Homebrew

Homebrew 是 macOS 上的強大的包管理工具,可以高效管理各種軟件包。Homebrew 由 Max Howell 從 2009 年開始開發並在 GitHub 上開源,最初在 macOS 用户中和 Ruby 社區中得到廣泛使用,2019 年 Homebrew 的子項目 Linuxbrew 被合併進了 Homebrew,使得它能夠在 Linux 和 WSL 上運行。 gpg is not a

Debian , homebrew

收藏 評論