原创 rpcx實現

一.rpcx介紹 1.1 rpc是什麼        遠程過程調用的通信協議。該協議允許運行於一臺計算機的程序調用另一臺計算機的子程序,而程序員無需額外地爲這個交互作用編程。如果涉及的軟件採用面向對象編程,那麼遠程過程調用亦可稱作遠程調用

原创 微服務-部署策略

一.動機        部署單體應用意味着運行一個或多個來自單個較大應用的相同副本。你通常會配置 N 個服務器(物理或虛擬),每臺服務器上會運行 M 個應用實例。單體應用的部署並不總是那麼簡單,但它比部署微服務應用要簡單得多。      

原创 golang-隊列

一.使用鏈表實現隊列 package Algorithm import ( "container/list" "errors" "fmt" "sync" ) type Queue struct { list *list.Li

原创 Golang設計模式-適配器模式

一.介紹 意圖:將一個類的接口轉換成客戶希望的另外一個接口。適配器模式使得原本由於接口不兼容而不能一起工作的那些類可以一起工作。 主要解決:主要解決在軟件系統中,常常要將一些"現存的對象"放到新的環境中,而新環境要求的接口是現對象不能滿足

原创 MySQL三大範式和五大約束

一 數據庫設計三大範式 1.1 第一範式(1NF)          原子性、 數據不可再分。 原地址表 ID StuAddress 1 天津   10080 2 上海   10082 3 杭州   10083 4 深圳   10084

原创 Matlab快速入門

一. 方程求根 1.1 方程求根的主要方法   1.2 MATLAB主要命令介紹           二. 線性方程組求解       三.插值和擬合

原创 golang-鏈表

一.鏈表的實現 1.1 代碼 package Algorithm import ( _ "container/list" "errors" "fmt" ) type Node struct { data interface

原创 Golang設計模式-代理模式

一.介紹 意圖:爲其他對象提供一種代理以控制對這個對象的訪問。 主要解決:在直接訪問對象時帶來的問題,比如說:要訪問的對象在遠程的機器上。在面向對象系統中,有些對象由於某些原因(比如對象創建開銷很大,或者某些操作需要安全控制,或者需要進程

原创 算法集

1.在一個二維數組中(每個一維數組的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。 思路: 數組排序後找到重複數字,排序數組

原创 HTTP、HTTP2.0 詳解

一 HTTP詳解介紹 1.1 HTTP簡介       HTTP協議是Hyper Text Transfer Protocol(超文本傳輸協議)的縮寫,是用於從萬維網(WWW:World Wide Web )服務器傳輸超文本到本地瀏覽器的

原创 微服務-降級、熔斷

一.降級        當服務器壓力劇增的情況下,根據實際業務情況及流量,對一些服務和頁面有策略的不處理或換種簡單的方式處理,從而釋放服務器資源以保證核心交易正常運作或高效運作。 1.1 使用場景        服務降級主要用於什麼場景呢

原创 系統高可用方案

一.系統設計相關 1.擴展        擴展是最常見的提升系統可靠性的方法,系統的擴展可以避免單點故障,即一個節點出現了問題造成整個系統無法正常工作。換一個角度講,一個容易擴展的系統,能夠通過擴展來成倍的提升系統能力,輕鬆應對系統訪問量

原创 TCP/IP四層網絡

一.OSI七層模型        物理層:主要定義物理設備標準,如網線的接口類型、光纖的接口類型、各種傳輸介質的傳輸速率等。它的主要作用是傳輸比特流(就是由1、0轉化爲電流強弱來進行傳輸,到達目的地後在轉化爲1、0,也就是我們常說的數模

原创 用例建模-在線購物(四)

一.問題描述        基於Web的“在線購物系統”中,客戶可向供應商請求購買一件或多件商品。客戶提供個人信息,例如地址和信用卡信息。這些信息被存儲在客戶賬戶中。如果信用卡是有效的,那麼系統創建一個配送訂單並且發給供應商。供應商檢查可

原创 go slice實現

一.slice實現 1.1 slice結構體 type slice struct { array unsafe.Pointer len int cap int } array:指向所引用的數組指針(unsafe.Point