V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  wewin  ›  全部回复第 6 页 / 共 8 页
回复总数  148
1  2  3  4  5  6  7  8  
2019-07-09 12:52:41 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教 golang slice 相关的问题
@mengzhuo
你说的,len 超过 cap 的时候,会创建一个新的底层数组,数组的 cap 会按照 len 的两倍增加。是下面这种情况:

```
package main

import "fmt"

func someChage(slice []int) {
fmt.Printf("addres2: %p\n", slice)

slice = append(slice, 1, 2, 3)
fmt.Printf("addres3: %p\n", slice)

slice = append(slice, 4, 5, 6)
fmt.Printf("addres4: %p\n", slice)
fmt.Println(slice)
}

func main() {
slice := make([]int, 0, 4)
fmt.Printf("addres1: %p\n", slice)
someChage(slice)

fmt.Printf("addres5: %p\n", slice)
fmt.Println(slice)
}

```
输出结果:
```
addres1: 0xc00008a000
addres2: 0xc00008a000
addres3: 0xc00008a000
addres4: 0xc000090000
[1 2 3 4 5 6]
addres5: 0xc00008a000
[]
```

前前排大佬们的回复,那是些 get 到点的大佬们
2019-07-09 11:32:04 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教 golang slice 相关的问题
期待大佬的回复
2019-07-09 10:08:37 +08:00
回复了 lzzgzhm 创建的主题 酷工作 腾讯职位内推中,想换工作的朋友来简历砸我!
想实现 "跳槽+角色转换" 的路过。 都是泪,和面试官电话聊了一个半小时,还觉得聊的还可以,最后还是跪了。
@freestyle redigo: connection pool exhaustet 是和 maxActive 有关的,maxActive 需要设置和操作 redis 的 goroutine 数量差不多,或者多余 goroutine 的数量就不会出现 redigo: connection pool exhaustet 的错误
@rrfeng
@judeng

问题就是没有限制活跃连接数的问题。本来想法是 1000 个 goroutine 最多也就一个 1000 个连接,而 redis 的 maxclients 是 10000,所以没有想到是这里的问题。

通过 runtime.NumGoroutine() 查到 goroutine 的峰值是 1001。也就是一个主 goroutine + 1000 个 'Register' goroutine。

经过测试, maxActive 最好限制到 1000 左右,太少会报错 'redigo: connection pool exhausted',不限制就是报错 'read: connection reset by peer'
@Leigg 问题就是没有限制活跃连接数的问题。本来想法是 1000 个 goroutine 最多也就一个 1000 个连接,redis 的 maxclients 是 10000。所以没有想到是这里的问题。
2019-06-24 08:51:40 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教一个包导入问题,百思不得解
@donething 不错,经过测试发现自己对 defer 返回前调用理解有误。
@raynor2011 要是有种场景下,就是有很大的并发请求来操作 redis,并且 redis 服务器已经做了相应的优化,这种情况下如何避免不出现这种问题?
2019-06-23 15:07:41 +08:00
回复了 wewin 创建的主题 React React + Redux 实现的个人博客
补上了完整的部署文档,需要的朋友可以关注下项目 https://github.com/ItsWewin/react-blog 的 README
2019-06-19 18:59:09 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教一个包导入问题,百思不得解
@donething 你的意思是这样?
```
if err != nil {
defer file.close()
}
```
2019-06-19 18:57:23 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教一个包导入问题,百思不得解
@donething 你的意思是这样?
```
if err != nil {

}
```
2019-06-19 14:08:47 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教一个包导入问题,百思不得解
@donething 这是为什么呢?`defer` 语句不是在方法返回前触发的吗?
2019-06-19 08:52:46 +08:00
回复了 wewin 创建的主题 Go 编程语言 请教一个包导入问题,百思不得解
@freestyle 哎哟,我去,被闪了腰。现在用的语言文件找不到直接是跑出了异常,go 语言这种直接返回 err 的还真的不太习惯。

将 decoder.go InitConfig 方法改了:
```
...
func (this Config) InitConfig() {
file, err := os.Open("config.json")
defer file.Close()
if err != nil {
fmt.Printf("Open file error: %v\n", err)
}

decoder := json.NewDecoder(file)
Configuration = ConfigurationType{}
err = decoder.Decode(&Configuration)
if err != nil {
fmt.Println("Error: ", err)
}
fmt.Printf("Configuration: %v\n", Configuration)
}
```
将读文件的 err 信息打印出来了。

感谢!
2019-06-16 23:16:11 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@mogging 端对端逃过了数据监控,法律怕是不允许呀。我不太了解,想着说的。
2019-06-16 23:14:36 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@rainmakeroly 好的,感谢建议,测试还没来得及高。但是我该怎么改标题,这里的 V2EX 的文章好像没法编辑
2019-06-16 23:00:51 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@Tomotoes 本来就是随意写的,没想到有这么多人关注,会好好完善下的。
2019-06-16 11:25:04 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@littlewing 前面也有别人提到,测试会加上。
2019-06-16 11:24:12 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@kiwier
@xx19941215
@blless
是基于韩老师的那个项目做的。想做个练手项目,自己也没好的想法,感觉老师这个点在还不错,就基于这个做了。目前和韩老师那个不同地方是加了点对点聊天和日志分级使用不同的颜色输出。后面计划添加服务端日志记录,以及增加其他聊天相关功能模块和文件传输功能。
2019-06-16 01:24:17 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@lzynb 后面会补上的
2019-06-16 01:23:58 +08:00
回复了 wewin 创建的主题 Go 编程语言 Golang 实现的高并发聊天程序
@sdtfll
@acehow 可怕的拼写。
1  2  3  4  5  6  7  8  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1530 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 17:09 · PVG 01:09 · LAX 10:09 · JFK 13:09
Developed with CodeLauncher
♥ Do have faith in what you're doing.