Time of Update: 2018-07-24
如何讀取設定檔 config.go package confimport ( "bufio" "io" "os" "strings")func InitConfig(path string) map[string]string { //初始化 myMap := make(map[string]string) //開啟檔案指定目錄,返回一個檔案f和錯誤資訊 f,
Time of Update: 2018-07-26
func Quick2Sort(values []int) { if len(values) <= 1 { return } mid, i := values[0], 1 head, tail := 0, len(values)-1 for head < tail { fmt.Println(values) if values[i] > mid { values[i], values[
Time of Update: 2018-07-26
go語言進行開發Web開發,雖然使用go語言自身的包即可實現,但是需要快速開發的時候對初學者還是有一定的障礙。go語言有上千個開源的項目,而這其中也不乏面向web開發的架構,比如Revel/beego/iris等。 beego beego的開發人員是中國的astaxie,是受了tornado 和 sinatra的啟發而做出的一個簡單易用功能強大的web架構。目前已有很多企業使用者。 安裝 [root@liumiaocn beego]# export
Time of Update: 2018-07-26
以下內容全部轉自http://www.cnblogs.com/xfzhang/archive/2013/05/24/3096412.html 在有監督(supervise)的機器學習中,資料集常被分成2~3個,即:訓練集(train set) 驗證集(validation set) 測試集(test set)。 http://blog.sina.com.cn/s/blog_4d2f6cf201000cjx.html 一般需要將樣本分成獨立的三部分訓練集(train
Time of Update: 2018-07-26
OpenVZ虛擬化開源項目簡介 OpenVZ虛擬化開源項目 [官方網站:http://openvz.org] 什麼是OpenVZ OpenVZ是開源軟體,是基於Linux平台的作業系統級伺服器虛擬化解決方案。OpenVZ採用SWsoft 的Virutozzo虛擬化伺服器軟體產品的核心,Virutozzo是SWsoft公司提供的商業虛擬化解決方案。
Time of Update: 2018-07-26
like模糊查詢,和大小寫,去空 用 like查詢最好用#這樣在輸入文字參數的時候會自動加上''就不會報錯。(欄位太多來源複雜直接用map裝,其也相當於一個對象,前段EL運算式直接類似對象訪問) <select id="getWhLogList" parameterType="map" resultType="map"> select a.*,c.* &
Time of Update: 2018-08-11
Happens Before 是記憶體模型中一個通用的概念,Go 中也定義了Happens Before以及各種發生Happens Before關係的操作,因為有了這些Happens Before操作的保證,我們寫的多goroutine的程式才會按照我們期望的方式來工作。什麼是Happens Before關係Happens Before定義了兩個操作間的偏序關係,具有傳遞性。對於兩個操作E1和E2:如果E1 Happens Before E2, 則E2 Happens After E1;如果E1
Time of Update: 2018-08-07
對於一些有並發要求的業務,特別是對接外部流量時,產品上線前一定要做的就是壓力測試,但是常規的壓力測試並不能覆蓋所有情況。以gemeter、ab,、webbench、http_load為例,這些通過類比請求的壓測工具,只能發送特定的參數,對於一些參數異常導致的程式處理異常是無法考慮到的,所以就需要一款能複製真實流量,並且不影響線上業務的工具。流量複製工具有很多,例如Gor、tcpreplay、tcpcopy等,這些工具貼合真實情境,能類比真實流量,並支援流量的放大或縮小,更容易測試出程式的瓶頸
Time of Update: 2018-08-10
初始化client,以及request竟然無法調用第二次,奇了八怪。沒怎麼深入閱讀源碼,但是知道問題出在哪了。首先代碼長這樣:resp, err := client.Do(req)resp, err := client.Do(req)本來想著過一段時間重新整理一下資料,來看看資料有什麼變化,所以就想著能複用req,但是沒想到報錯:: http: ContentLength=15 with Body length 0這是為什麼呢。深入調查了一下,先看下req長啥樣req, err =
Time of Update: 2018-07-31
Go+區塊鏈 課程大綱 BlockchainSyllabus 課程競爭優勢 清華微軟名師精心打造課程,曆時半年研發的獨一無二的體系化課程; 率先引入Go語言分布式叢集開發。 率先打造區塊鏈前端+後端一站式開發。 率先引入山寨比特幣、分叉以太坊、深入EOS源碼分析。 率先從0到1打造與CryptoKitties互動的以太坊DAPP。 率先使用Ripple協議實現區塊鏈拍賣系統底層設計。 課程照顧了沒有編程基礎的小白,從基礎講起,循序漸進,達到企業實戰水平;
Time of Update: 2018-08-05
上個月受 DockOne 社區邀請,做了一次 CI 實踐方面的線上分享,在此記錄下。本文講述 GitLab CI 的架構及其能力特性,分析它在 DevOps 實踐中的作用。 通過分析 Docker In Docker 的技術細節,詳細講述 CI 實踐以及在生產環境中的所做的最佳化,包括但不限於鏡像倉庫等,以達到數倍的效能提升。本次分享內容以 GitLab Community Edition 11.0.4 edb037c 為例。為何選擇 GitLab CI認識 GitLab CI什麼是
Time of Update: 2018-08-05
一、寶付私密金鑰加密,公開金鑰解密 由於對RSA加密解密原理不是很熟悉,寶付也沒有Golang的Demo提供。Go語言庫裡一般都是私密金鑰解密、公開金鑰加密,或者私密金鑰簽名、公開金鑰驗簽。寶付需要反過來,這裡也到好找到了https://github.com/farmerx/gorsa的實現,但始終寶付那邊提示簽名驗證失敗。然後就繼續找其他的實現了,這就慘了各種Google完全無解。最後回過頭來只能,使用加解密原文,跟.Net平台的結果進行比對。一通折騰或者叫折磨之後,發現其實只是每次加密多了
Time of Update: 2018-07-25
上一篇文章裡我們詳細介紹了signal的用法。今天我們將介紹slot的使用。在qt中slot和signal十分相像,這次我們將實現一個能顯示16進位數位SpinBox,它繼承自QSpinbox並重寫了validate,valurFromText和textFromValue這三個slot,以便能將原先的10進位整數值顯示為16進位。我們將在其中展示slot的具體用法。slot的聲明我們先看一下樣本:type HexSpinbox struct { widgets.QSpinBox
Time of Update: 2018-08-05
在公司專屬應用程式中RPC的使用可以說是十分的廣泛,使用該技術可以方便的與各種程式互動而不用考慮其編寫使用的語言。如果你對RPC的概念還不太清楚,可以點擊這裡。現今市面上已經有許多應用廣泛的RPC架構,比如GRPC,而今天我們要介紹的是同樣使用廣泛的Apache
Time of Update: 2018-07-28
最近很多朋友問我,我在自學爬蟲,學到什麼程度可以去找工作呢?這篇文章會說說我自己的心得體驗,關於爬蟲、關於工作,僅供參考。學到哪種程度暫且把目標定位初級爬蟲工程師,簡單列一下吧:(必要部分)語言選擇:一般是瞭解Python、Java、Golang之一熟悉多線程編程、網路編程、HTTP協議相關開發過完整爬蟲項目(最好有全站爬蟲經驗,這個下面會說到)反爬相關,cookie、ip池、驗證碼等等熟練使用分布式(非必要,建議)瞭解訊息佇列,如RabbitMQ、Kafka、Redis等具有資料採礦、自然語言
Time of Update: 2018-08-03
android電量分析準備工作--環境配置注意Python 要使用2.7 系列的下載路徑:https://www.python.org/下載完之後配置環境變數檢查是否成功cmd 輸入 pythonGo語言環境配置下載路徑:https://golang.org/doc/install#testing配置環境變數檢查是否成功cmd 輸入go version配置Java環境略下載Battery
Time of Update: 2018-07-27
本文即Go語言的那些坑三。不要對Go並發函數的執行時機做任何假設請看下列的列子:1import(2"fmt"3"runtime"4"time"5)6func main(){7names := []string{"lily","yoyo","cersei","rose","annei"}8for_, name := range names{9go
Time of Update: 2018-07-27
用Goland在調試go-ethereum源碼時遇到一些問題,在大神的指導下把Goland給搞定了,在此整理一下,希望能協助到初學者。在學習golang時,把書本上的代碼敲一遍跑一邊沒問題,因為都是單個檔案運行。但是真正用go去跑項目時就出問題了,因此要從根本上理解問題。MinGW在對項目進行編譯時間,發生報錯:編譯報錯因此重新下載安裝了MinGW,安裝完成後設定Path,運行 gcc- v,能列印版本表示已安裝成功。GOROOT和GOPATHGOROOT
Time of Update: 2018-07-27
本文系第十三篇Golang語言學習教程可變參數函數參數數量可變的函數,稱為可變參數函數。最典型的例子就是fmt.Printf和類似的函數。Print首先接受一個必備的參數,之後接收任意個數的後續參數。文法如果函數的最後一個參數被記作...T,那麼函數可以接受任意個T類型的參數作為最後一個參數。聲明可變函數func sum(vals...int) int { //定義函數sum,vals被看作[]int類型的切片,sum可以接受任意數量的int型別參數 total := 0 for
Time of Update: 2018-07-26
使用者模型是比原鏈在最初就需要確定的重要資料結構, 團隊的選擇還是聚焦在兩種典型的模型系統中,Account模型和UTXO模型,和其他大多數區塊鏈設計一樣, 選擇了模型就決定了協議層的重要實現,兩種模型各有利弊,不同區塊鏈針對想聚焦的情境自身會有判斷。UTXO 的起源(來自高明的中本聰)中本聰對比特幣的設計,讓整個世界進入了數字貨幣時代。比特幣起源於中本聰,UTXO出自比特幣。自然,UTXO來自高明的中本聰。UTXO的優點:在版本控制方面的考慮,svn