原创 微服務架構

微服務架構核心20講 01 | 微服務定義 微服務是一種架構風格 大中臺,小前臺 定義一 一種架構風格,將單體應⽤劃分成一組小的服務,服務之間相互協作,實現業務功能 每個服務運行在獨立的進程中,服務間採用輕量級的通信機制協作(

原创 從0開始學架構5 - 實戰篇

從0開始學架構.實戰篇 38 | 架構師應該如何判斷技術演進的方向? 潮流派? 保守派? 跟風派? 技術演進的動力 1)對於產品類業務,答案看起來很明顯:技術創新推動業務發展! 蘋果開發智能手機,將諾基亞推下王座,自己成爲

原创 Apache簡介

1、Apache 簡介 1-1 www概念解析   Internet   Intranet – 內網   萬維網   TCP/IP   HTTP - 無狀態協議   請求-響應   Web服務器   1-2 Apache 服務器簡介  

原创 從0開始學架構4 - 可擴展篇

從0開始學架構.可擴展篇 32 | 可擴展架構的基本思想和模式 今天我們進入架構可擴展模式的學習,這部分內容包括分層架構、SOA 架構、微服務和微內核等,先來聊聊架構的可擴展模式。 可擴展的基本思想 幸運的是,可擴展性架構的設計

原创 從0開始學架構3 - 高可用篇

從0開始學架構.高可用篇 22 | 想成爲架構師,你必須知道CAP理論 CAP 定理(CAP theorem)又被稱作布魯爾定理(Brewer’s theorem),是加州大學伯克利分校的計算機科學家埃裏克·布魯爾(Eric Bre

原创 Python面試

Python 面試 ==================== 電話面試 ==================== What? 什麼是Python? 什麼是Python自省? 什麼是PEP? 什麼是pickling和unpick? 什

原创 算法面試

算法面試通關40講 知識點 Array 理論 Access: O(1) Insert: 平均O(n) Delete: 平均O(n) Singly Linked List & Doubly Linked List 理

原创 從0開始學架構2 - 高性能篇

從0開始學架構.高性能篇 14 | 高性能數據庫集羣:讀寫分離 讀寫分離原理 讀寫分離的基本原理是將數據庫讀寫操作分散到不同的節點上,下面是其基本架構圖。 讀寫分離的基本實現是: 數據庫服務器搭建主從集羣,一主一從、一主多從

原创 Python爬蟲開發從入門到實戰

Python爬蟲開發從入門到實戰(微課版) 第1章 緒論 爬蟲的主要目的是獲取網頁內容並解析。只要能達到這個目的,用什麼方法都沒有問題。 關於獲取網頁,本書主要介紹了Python的兩個第三方模塊,一個是requests,另一個是爬蟲

原创 數據結構與算法之美9 - 搜索

搜索 DFS、BFS、A*啓發式 31 | 深度和廣度優先搜索:如何找出社交網絡中的三度好友關係? BFS 廣度優先搜索,通俗的理解就是,地毯式層層推進,從起始頂點開始,依次往外遍歷。廣度優先搜索需要藉助隊列來實現,遍歷得到的路

原创 實現 LRU 緩存淘汰算法

實現 LRU 緩存淘汰算法 基於鏈表實現 LRU 緩存淘汰算法? 約定:越靠近鏈表尾部的結點是越早之前訪問的(頭插尾刪) 維護一個單鏈表。當有一個新的數據被訪問時,我們從鏈表頭開始順序遍歷鏈表。 1、如果此數據之前已經被緩存在鏈表

原创 數據結構與算法之美7 - 排序

排序 十大排序:冒泡、插入、選擇、希爾、歸併、快排、堆、計數、基數、桶 11 | 排序(上):爲什麼插入排序比冒泡排序更受歡迎? 一、幾種經典排序算法及其時間複雜度級別 冒泡、插入、選擇 O(n^2) 基於比較 快排、歸併 O(

原创 數據結構與算法之美6 - 圖

圖 圖的存儲、拓撲排序、最短路徑、關鍵路徑、最小生成樹、二分圖、最大流 30 | 圖的表示:如何存儲微博、微信等社交網絡中的好友關係? 另一種非線性表數據結構,圖 我們就拿微信舉例子吧。我們可以把每個用戶看作一個頂點。如果兩個用戶之

原创 數據結構與算法之美8 - 查找

查找 二分查找 15 | 二分查找(上):如何用最省內存的方式實現快速查找功能? 猜數字遊戲 一、什麼是二分查找? 二分查找針對的是一個有序的數據集合,每次通過跟區間中間的元素對比,將待查找的區間縮小爲之前的一半,直到找到要查找

原创 數據結構與算法之美5 - 樹

樹 二叉樹、多路查找樹、堆、樹狀數組、線段樹 23 | 二叉樹基礎(上):什麼樣的二叉樹適合用數組來存儲? 樹 - 二叉樹 - 滿二叉樹 - 完全二叉樹 完全二叉樹 二叉樹的存儲 想要存儲一棵二叉樹,我們有兩種方法,一種是