原创 深度學習-圖片識別(上)

深度學習-圖片識別(上) 本文主要針對優達學城深度學習課程中的練習題,整理練習內容,有興趣者可結合本文內容然後按練習題實踐,幫助理解。 任務一:下載並整理數據 任務主要完成圖片下載、圖片內容數字化、選取三個數據集、打亂順序、持久化

原创 Python I/O與進程

Python I/O與進程 I/O with語句 with context_expression [as target(s)]: with-body context_expression返回值遵從上下文管理協議,包含__e

原创 V8垃圾回收

V8垃圾回收 自己使用Node.js有差不多4年了,限於環境、個人等因素,對Node.js中V8的垃圾回收一直只有一個模糊的概念,趁寫博客這個契機,好好整理一下垃圾回收相關知識,加深認識。 垃圾回收的由來 垃圾回收,簡稱GC(Ga

原创 Node.js之class vs module

Node.js之class vs module class是面向對象編程中的重要概念,它強大到大家沒有任何可以吐槽它的角度,但本文還是想針對Node.js對class與module做個對比,然後結合實際倆聊自己的思考。 class

原创 Node.js Event Loop備忘

Node.js Event Loop備忘 Event Loop階段描述圖 ┌───────────────────────────┐ ┌─>│ timers │ │ └────────

原创 Python錯誤與調試

Python錯誤與調試 錯誤 try-catch語法: try: pass except SomeError as e: pass except SomeError as e: pass finally:

原创 Python常用模塊

Python常用模塊 datetime 日期時間類,主要熟悉API,時區的概念與語言無關。 from datetime import datetime as dt dt.utcnow() # 系統UTC時間 dt.now() #

原创 系統限流

系統限流 最近在系統中對一個資源訪問做了限流,寫篇文章聊聊這個話題。 爲什麼要限流 在衡量Web系統性能的指標中,最重要的參數是極限QPS,它表示系統每秒最多能夠處理的Query數。從定義中可以知道QPS是一個描述系統處理速度的指標,

原创 利用Redis實現排隊需求

利用Redis實現排隊需求 近期在項目中做了一個用戶排隊等待接入客服的需求,此文記錄自己的實現思路與過程,以及一些考慮的異常。 需求 大部分人都有排隊等待接入客服的經歷,所以需求不難理解:“存在一個在線客服列表,用戶發起接入請求時,從

原创 排序算法

排序算法 直接插入排序 直接插入排序的思路是遍歷過程中保持被遍歷過的元素有序,每遍歷到一個新元素時如不能保持已遍歷元素有序,則爲該新元素尋找合適的插入位置插入以保持遍歷元素的有序性,當完成遍歷時所有元素均有序。 假設初始列表items

原创 數據結構-二叉樹

數據結構-二叉樹 樹 樹的定義 樹是n個結點的有限集合,在一個非空的樹中有且只有一個根結點,其餘結點可分爲m個互不相交的有限子集,其中每個子集又是一棵樹,並且成爲根節點的子樹。 文字定義有點繞,但圖形化很容易記住: |

原创 小程序-Canvas繪製折線圖

小程序-Canvas繪製折線圖 自己在一個小程序項目中,希望通過繪製折線圖展示不同時間的數值變化趨勢,搜索了一番後沒找到特別好的第三方庫,故打算自己實現一個簡單的繪製折線圖方法,本文記錄自己如何在小程序中通過canvas繪製折線圖。

原创 WebSocket備忘

WebSocket備忘 記些websocket的知識備忘。 對比HTTP優勢 websocket與HTTP一樣,都是建立TCP之上的應用層協議,它較於HTTP的優點主要有以下兩點: 全雙工 HTTP不允許服務端主動向client

原创 實現文本diff比較與展示

實現文本diff比較與展示 作爲編程人員,文本diff比較與展示應該不陌生,最常見的是在Git中使用git diff命令,可以查看代碼修改前後的對比。在git中diff比較與展示的最小單位是行,因爲代碼修改涉及的改動一般較多,以行爲單

原创 利用Redis實現分佈式鎖

利用Redis實現分佈式鎖 在之前的答題對戰項目中,遊戲規則是根據雙方回答同一道題所花時間長短判勝負,但測試過程中遇到一個偶現BUG:“對戰開始後雙方收到的題目不一致”,經過分析代碼,發現問題原因在於發題邏輯沒有加鎖,所以寫篇文章聊聊