-
NSQ 源码阅读 (四) diskqueue 文件读写
所属栏目:[大数据] 日期:2020-12-16 热度:140
引言 我们在这个系列第一篇文章中提到过,如果需要消息落地而对存储子系统的选择上,从速度上来说 文件系统分布式KV(持久化)分布式文件系统数据库 。而NSQ选择了文件系统作为存储子系统。这篇文章将重点介绍nsq 对于文件的操作。 何时写入文件? 在内存的m[详细]
-
Go实战--golang实现MP4视频文件服务器(nareix/joy4)
所属栏目:[大数据] 日期:2020-12-16 热度:132
生命不止,继续 go go go !!! 有点忙,有点懈怠,继续。 关于golang实现的静态文件服务器之前有写过: Go实战–golang实现静态文件服务器(文件查看,文件上传,文件下载) 正好,最近在做视频方面的东西,那么先来个简单的,实现一个提供mp4视频文件的服务器[详细]
-
Golang学习之InterfaceAddrs获取本地IP
所属栏目:[大数据] 日期:2020-12-16 热度:125
Go 获取本地IP package main import ( "fmt" "net" "os" ) func main() { addrs,err := net.InterfaceAddrs() if err != nil { fmt.Println(err) os.Exit (1 ) } for _,address := range addrs { // 检查ip地址判断是否回环地址 if ipnet,ok := address.(*ne[详细]
-
Golang学习之net/http包
所属栏目:[大数据] 日期:2020-12-16 热度:99
使用net/http包快速创建一个HTTP服务器。 // file http_test1 .go package main import ( "fmt" "net/http" "log" )func HandleIndex(w http .ResponseWriter ,r *http .Request ) { r .ParseForm () fmt .Println ( "PATH: " ,r .URL .Path ) fmt .Println[详细]
-
Golang学习之net包介绍
所属栏目:[大数据] 日期:2020-12-16 热度:190
与大多数语言一样,Go的标准库很全,因为Go的出现本来就是为了网络通信的高并发实现,所以其相关的网络库封装得更简洁,更Readable。 这里来大致介绍几个网络库,掌握了学习方法,那么只要里面有那个功能,你就能找到并快读查阅源码,了解其实现。 net.Resol[详细]
-
Golang学习之net包详解
所属栏目:[大数据] 日期:2020-12-16 热度:89
/** * Created by Administrator on 13-12-9. */ package main import ( "fmt" "os" "net" ) /** * 将string类型的ip地址转换为IP对象 */ func main() { name := "192.168.1.97" ip := net.ParseIP(name) if ip == nil { fmt.Fprintf(os.Stderr, "Err:无效的[详细]
-
数据告诉你,胡歌的微世界
所属栏目:[大数据] 日期:2020-12-16 热度:139
使用神奇的数据采集工具——造数,爬取男神的微博 昨天胡歌(35岁)生日刚刚过去,各位胡椒粉有什么想说的呢,一路走来,有多少人知道胡歌最早是这样的: 当胡歌说道要先把饥寒问题管制时,许多粉丝心伤到眼泪都进去了。 爬微博原因:过去的生日胡歌都会发微[详细]
-
golang如何执行脚本并获取返回值
所属栏目:[大数据] 日期:2020-12-16 热度:172
golang中如何执行脚本并获取返回值 调用脚本 在golang标准库中提供了两种方式可以用来启动进程调用脚本 第一种是在os库中的Process类型,Process类型包含一系列方法用来启动进程并对进程进行操作(参考: https://golang.org/pkg/os/#Process) 第二种是在os[详细]
-
为什么添加并发会降低这个golang代码?
所属栏目:[大数据] 日期:2020-12-16 热度:64
我有一些Go代码,我一直在修补,回答一个小的好奇心,我的一个视频游戏我的兄弟玩。 基本上,下面的代码模拟了与游戏中的怪物的交互,以及他可以期望他们在失败时丢弃物品的频率。我所遇到的问题是,我希望像这样的代码片段是完美的并行化,但当我并发添加时[详细]
-
Go实战--golang中获取公网ip、查看内网ip、检测ip类型、校验ip区
所属栏目:[大数据] 日期:2020-12-16 热度:72
生命不止,继续 go go go!!! 之前,有介绍过golang提供的标准库:net包 Go语言学习之net包(The way to go) 简要回味net包 func ParseIP func ParseIP(s string ) IP ParseIP parses s as an IP address,returning the result. The string s can be in dot[详细]
-
Golang旅程开始啦
所属栏目:[大数据] 日期:2020-12-16 热度:130
一年多以前,同时开始学习python和Golang,进行两个项目。Golang项目进行几个月后,pause掉了。断断续续做了一年的python开发,中间写了几周的C++。就这样走过来,发现对语言认识慢慢加深了。 现在又开始做Golang项目,重新回顾这门语言,发现自己对它的理解[详细]
-
Golang 不定参数
所属栏目:[大数据] 日期:2020-12-16 热度:198
下面举例说明不定参数的使用。 不定参数必须是最后一个参数。 arm.go package main import ( "fmt" ) func main () { manyParam1 ( 1 , 2 , 3 ) manyParam2 ( "tow" , 4 , 5 , 6 ) manyParam3 ( "tow" , 66 , "three" ) } 不定参数是同一个类型的情况: func[详细]
-
Golang use of .(type) outside type switch 关于参数类型
所属栏目:[大数据] 日期:2020-12-16 热度:199
Golang 中如何获取参数的类型? 执行使用以下语句: fmt.Println( "type:" ,v.( type )) 提示错误: use of .(type) outside type switch 正确的使用方法是必须在switch case中。 举例如下: package main import ( "fmt" ) func main() { CheckType( "tow"[详细]
-
通过leetcode学习常见排序算法及其Go实现
所属栏目:[大数据] 日期:2020-12-16 热度:51
问题描述 75. Sort Colors Given an array with n objects colored red,white or blue,sort them so that objects of the same color are adjacent,with the colors in the order red,white and blue. Here,we will use the integers 0,1,and 2 to represent[详细]
-
关于Go语言
所属栏目:[大数据] 日期:2020-12-16 热度:198
声明: 本文不是来吸引口水战的。仅仅是记录水平有限的本人的一些个人观点。Go死忠粉或者口水战爱好者勿入。 Go 是一个年轻,但是迅速蹿红的语言。我在Go刚出来的时候,出于对其创造者的崇拜,就开始关注了。然而真正使用却是这两年的事。Docker,kubernetes[详细]
-
Golang设计模式之外观模式
所属栏目:[大数据] 日期:2020-12-16 热度:174
1. 概述 它为一套复杂的调度子系统提供一个统一的接入接口。外部所有对子系统的调用都通过这个外观角色进行统一调用,降低子系统与调用者之间的耦合度。 Golang设计模式相关源码在github上有提供,可供参考! 2. 举例说明 那当前比较热门的微服务来说,一套[详细]
-
golang 获取api 数据
所属栏目:[大数据] 日期:2020-12-16 热度:166
直接上代码 type ApiRequest interface{} //参数 e 一个空接口,f http请求连接, p 请求方式 参数为 “POST” 或 “GET” func FromApiGetData(e *ApiRequest,f *PostUrl,p string) (string,error) { jsons,errs := json.Marshal(e) if errs != nil { fmt.P[详细]
-
部分排序算法总结
所属栏目:[大数据] 日期:2020-12-16 热度:141
关于排序 通常所说的排序是指内部排序,即在内存里进行排序。相对应的有外部排序,当待排序数据比较多时,排序过程需要使用闪存。 排序算法大体可分为两种: 一种是比较排序,时间复杂度O(nlogn) ~ O(n^2),主要有:冒泡排序,选择排序,插入排序,归并排序[详细]
-
Go基础学习二
所属栏目:[大数据] 日期:2020-12-16 热度:68
Go编程语言:支持并发、垃圾回收的编译型系统级编程语言!本文主要是按照无闻的《Go 编程基[详细]
-
Golang学习之net/http 包使用模式
所属栏目:[大数据] 日期:2020-12-16 热度:176
译注: 这篇文章的内容非常基础,也非常容易理解。原文地址,感觉是最能清晰的讲述了net/http包的用法的一篇,故翻译一下共享之。 一切的基础:ServeMux 和 Handler Go 语言中处理 HTTP 请求主要跟两个东西相关: ServeMux 和 Handler 。 ServrMux 本质上是一[详细]
-
自动领豆golang版
所属栏目:[大数据] 日期:2020-12-16 热度:137
packagemain//51cto自动领豆import("github.com/crufter/goquery""fmt""math/rand""net/http/cookiejar""net/http""net/url""io/ioutil""strconv")//用户名和密码const(NAME="username"PWD="password")funcmain(){//设置cookiecookieJar,_:=cookiejar.New(ni[详细]
-
golang中os/exec包用法
所属栏目:[大数据] 日期:2020-12-16 热度:123
exec包执行外部命令,它将os.StartProcess进行包装使得它更容易映射到stdin和stdout,并且利用pipe连接i/o. func LookPath(file string) (string,error) //LookPath在环境变量中查找科执行二进制文件,如果file中包含一个斜杠,则直接根据绝对路径或者相对[详细]
-
Go基础学习三之数组array、切片slice、map
所属栏目:[大数据] 日期:2020-12-16 热度:151
Go编程语言:支持并发、垃圾回收的编译型系统级编程语言!本文主要是按照无闻的《Go 编程基[详细]
-
Golang条件编译
所属栏目:[大数据] 日期:2020-12-16 热度:120
我在Go 1中遇到了条件编译的麻烦。 这里是我的测试代码。有没有什么我误解了“//构建”约束和“-tags”标志? main1.go // +build main1package mainimport ( "fmt")func main() { fmt.Println("This is main 1")} main2.go // +build main2package mainimpo[详细]
-
golang修改struct数组问题
所属栏目:[大数据] 日期:2020-12-16 热度:82
struct数组修改结构体值: // 22222111 project 22222111.gopackage mainimport ("fmt")type Bid struct {CRID stringImpID string}func main() {bid1 := Bid{CRID: "222",ImpID: "aaa",}bid2 := Bid{CRID: "111",ImpID: "bbb",}//方法1:赋给一个新的对象var[详细]
