原创 go語言學習筆記4------常量

1:常量定義使用 變量是用來存儲數據,並且變量裏面存儲的值是可以在程序運行時隨時發生變化的。但是,常量裏面的值在確定好後,後面是不允許修改的下面看一下關於常量的定義使用。 Func main(){ //變量:程序運行期間,可以改變

原创 go語言學習筆記16------雙色球玩法

雙色球 紅球1-33號 隨機選擇6個 不能重複 藍球 1-16號 選擇1個 package main import ( "math/rand" "time" "fmt" ) func main() {

原创 go語言學習筆記19------面向對象②

1.方法 1.1基本方法創建 package main import "fmt" type Interger int func (a Interger)Test(b Interger) Interger { retur

原创 go語言學習筆記21------Go語言併發編程①

1.Go併發編程 1.1概述 簡而言之,所謂併發編程是指在一臺處理器上“同時”處理多個任務。隨着硬件的發展,併發程序變得越來越重要。Web服務器會一次處理成千上萬的請求。平板電腦和手機app在渲染用戶畫面同時還會後臺執行各種計算任

原创 go語言學習筆記28------Goland之TCP、UDP通信①

1網絡應用程序設計模式 1.1C/S模式 傳統的網絡應用設計模式,客戶機(client)/服務器(server)模式。需要在通訊兩端各自部署客戶機和服務器來完成數據通信。 1.2B/S模式 瀏覽器(Browser)/服務器(Ser

原创 go語言學習筆記13------數據結構①

1:數組 所謂的數組:是指一系列同一類型數據的集合。 1.1數組定義 var a [10]int 數組定義也是通過var 關鍵字,後面是數組的名字a,長度是10,類型是整型。表示:數組a能夠存儲10個整型數字。也就是說,數組a的長

原创 go語言學習筆記11------函數③

1.函數類型 在GO語言中還有另外一種定義使用函數的方式,就是函數類型,所謂的函數類型就是將函數作爲一種類型可以用來定義變量,這種用法類似於前面我們講過的int ,float64,string等類型,這些類型都是可以用來定義變量。

原创 go語言學習筆記20------面向對象③

1.接口 1.1接口實現 package main import "fmt" type Human interface { sayhi() } type student struct { name string

原创 go語言學習筆記22------Go語言併發編程②

1.Goroutine 1.1什麼是Goroutine goroutine是Go語言並行設計的核心,有人稱之爲go程。 goroutine說到底其實就是協程,它比線程更小,十幾個goroutine可能體現在底層就是五六個線程,Go

原创 Redis集羣服務搭建

爲什麼要有集羣 a)服務器可能因爲代碼原因,人爲原因,或者自然災害等造成服務器損壞。數據服務就掛掉了 b)大公司都會有很多的服務器(華東地區、華南地區、華中地區、華北地區、西北地區、西南地區、東北地區、臺港澳地區機房) 集羣的概念 集

原创 Redis數據庫介紹、安裝、基本用法及go語言操作redis

Redis簡介 Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日誌型、Key-Value數據庫,並提供多種語言的API。從2010年3月15日起,Redis的開發工作由VMware主持。從2013年5

原创 Redis主從服務搭建

主從概念 a)⼀個master可以擁有多個slave,⼀個slave⼜可以擁有多個slave,如此下去,形成了強⼤的多級服務器集羣架構 b)master用來寫數據,slave用來讀數據,經統計:網站的讀寫比率是10:1 c)通過主從配

原创 go語言學習筆記31------Goland之簡版聊天室

package main import ( "net" "fmt" "strings" "time" ) // 創建全局用戶結構體類型 type Client struct { Name string Addr stri

原创 go語言學習筆記30------TCP通信

1.TCP通信過程 下圖是一次TCP通訊的時序圖。TCP連接建立斷開。包含大家熟知的三次握手和四次握手。 在這個例子中,首先客戶端主動發起連接、發送請求,然後服務器端響應請求,然後客戶端主動關閉連接。兩條豎線表示通訊的兩端,從上到下表

原创 go語言學習筆記29------Goland之TCP、UDP通信併發②

1.TCP併發C/S模型通信 1.1併發Server 現在已經完成了客戶端與服務端的通信,但是服務端只能接收一個用戶發送過來的數據,怎樣接收多個客戶端發送過來的數據,實現一個高效的併發服務器呢? Accept()函數的作用是等待客戶端