找到11209个回复
  • 有没有wifi5的全屋漫游方案产品推荐
    30854点击 / 2023-06-15发布 / 2023-06-16回复 / /
    我又搜到179的华三 nx30pro路由器,可惜这个价只能买一台,感觉这里面水很深啊
  • golang的log包求助
    17251点击 / 2023-06-15发布 / 2023-06-16回复 / /

    @胡椒舰长 ListenAndServe,看起来监听端口,要同步阻塞的,把他丢到goroutine里面吧
    ~~~

  • 有没有wifi5的全屋漫游方案产品推荐
    30854点击 / 2023-06-15发布 / 2023-06-16回复 / /
    ac+ap优势到底在哪里?ac真的有能力计算设备连接哪个ap信号最佳?
  • 有没有wifi5的全屋漫游方案产品推荐
    30854点击 / 2023-06-15发布 / 2023-06-16回复 / /
    @胡椒舰长,ap那么贵?一个就得将五百块了,我看有些子母路由器更便宜些,比如锐捷蜂鸟h30s也才三百,而且是wifi6
  • 有一个关于即时聊天的疑惑
    48412点击 / 2023-06-14发布 / 2023-06-16回复 / /

    @无名啊,可以负载均衡啊,一个直播间对应一个弹幕服务器就行了。

    减少弹幕数量和屏蔽的功能都可以在前端实现,字幕轨只是用于提取弹幕内容。

  • 有一个关于即时聊天的疑惑
    48412点击 / 2023-06-14发布 / 2023-06-15回复 / /

    @老虎会游泳,那个收弹幕的中心服务器,性能一定很强吧,要接收全国这么多用户的弹幕。。

    说来也是,直播的数据量比聊天、弹幕大多了,基本也都全送达了

    直播弹幕嵌在视频里,这想法挺新奇啊。
    就是设置 全屏/半屏/四分之一屏弹幕、弹幕关键字屏蔽 等功能会不会不方便了。。

  • gta5适合电脑玩,现在自己组一台900块钱的电脑都能畅玩
  • golang的log包求助
    17251点击 / 2023-06-15发布 / 2023-06-15回复 / /

    @㝶芾厶眵攴䭡

    会不会和后面的阻塞函数有关,这是后面部分的

    server := &http.Server{
    		Addr:    register.ListenAddr,
    		Handler: handleServer,
    	}
    
    	var startError error
    	if register.TLS {
    		startError = server.ListenAndServeTLS("server.crt", "server.key")
    	} else {
    		startError = server.ListenAndServe()
    	}
    
    	if startError != nil {
    		return startError
    	}
    	//正常exit
    	return nil
    
  • golang的log包求助
    17251点击 / 2023-06-15发布 / 2023-06-15回复 / /

    go version go1.20.4 darwin/arm64

    package main
    
    import (
    	"bytes"
    	"fmt"
    	"log"
    )
    
    type reg struct {
    	Name       string
    	ListenAddr string
    }
    
    func main() {
    	register := reg{
    		Name:       "123",
    		ListenAddr: "127.0.0.1",
    	}
    
    	flag := false
    	if flag {
    		startInfo := bytes.Buffer{}
    		startInfo.WriteByte('[')
    		startInfo.WriteString(register.Name)
    		startInfo.WriteString("] Starting  server at -> ")
    		startInfo.WriteString(register.ListenAddr)
    		startInfo.WriteString(" ;Listening...")
    		fmt.Println("ok1")
    		log.Println(startInfo.Bytes())
    		fmt.Println("ok2")
    	} else {
    		startInfo := bytes.Buffer{}
    		startInfo.WriteByte('[')
    		startInfo.WriteString(register.Name)
    		startInfo.WriteString("] Starting  server at -> ")
    		startInfo.WriteString(register.ListenAddr)
    		startInfo.WriteString(" ;Listening...")
    		fmt.Println("ok1")
    		log.Println(startInfo.String())
    		fmt.Println("ok2")
    	}
    
    }
    
    

    @胡椒舰长 复现不了,没发现阻塞

    ~~~

  • 有没有wifi5的全屋漫游方案产品推荐
    30854点击 / 2023-06-15发布 / 2023-06-15回复 / /

    低端方案
    最便宜的tplink ac+ap 方案,5ap+1ac 大约是2500左右。

    我使用的是这套方案,Ax3000的AP面板,但是我说下缺点:
    Ac控制器(POE)发热 容易死机 (AC+路由器大约8瓦;目前我在弱电箱放了风扇解决了散热)
    AP面板发热大约在65-70度左右(单个Ap大约6瓦功率,设置无线发射功率为最小)

    此外,6000起步的华三 捷锐等 中等方案 也发热严重+功耗大。
    此外,吸顶AP大功率 除非是别墅那种顶, 听说容易秃头

    当然可以是mesh方案,这样大约是300-600左右,功耗大约10瓦,因为我买的水星路由器5G+2.4也才4瓦

  • 爱特文管美化并增加代码高亮和纠错功能
    31105点击 / 2023-06-15发布 / 2023-06-15回复 / /

    @hui214,我上传了美化后的文件,你可以试试

  • 爱特文管美化并增加代码高亮和纠错功能
    31105点击 / 2023-06-15发布 / 2023-06-15回复 / /
    @旧人,我用爱特文管
  • 有一个关于即时聊天的疑惑
    48412点击 / 2023-06-14发布 / 2023-06-15回复 / /

    顺便一提直播弹幕,我觉得最有趣的方法是直接把弹幕嵌在视频流的字幕轨里,这样只要前端加个字幕轨提取代码就行了。视频编码器那边,加字幕的工作交给切片服务器就行了,切片是很简单的工作,顺便混合一下字幕不会有什么额外开销。唯一的问题是审核,想删掉嵌入视频的弹幕比较困难

  • 有一个关于即时聊天的疑惑
    48412点击 / 2023-06-14发布 / 2023-06-15回复 / /

    @卷心菜,我与老虎讨论,老虎给我出了一个接近90%完美方案,还有10%是因为没有经过大规模实践不确定因素。

    大致就是: 微信私我,给你发我总结的原理截图

  • 爱特文管美化并增加代码高亮和纠错功能
    31105点击 / 2023-06-15发布 / 2023-06-15回复 / /

    @森森,你的我好像看到过,用的zui,不过好像不太符合我的审美

  • 爱特文管美化并增加代码高亮和纠错功能
    31105点击 / 2023-06-15发布 / 2023-06-15回复 / /
    嘿嘿,我原来也美化过
  • 有一个关于即时聊天的疑惑
    48412点击 / 2023-06-14发布 / 2023-06-15回复 / /

    @老虎会游泳,群聊风暴的问题,我是使用了group_id赋予群的内部编号,这样系统逻辑需要推送的时候,只要解析这个id就知道具体的分布式中的目标gateway的ip:port,这样就不会造成群惊了,
    IMG_9891.jpeg(45.95 KB)IMG_9892.png(164.18 KB)

  • yuzu能玩舞力全开不?
    13306点击 / 2023-06-15发布 / 2023-06-15回复 / /
    @老虎会游泳,可以用这,我买过,没用几次,手感不咋地但可以给joycon充电,十几块
    Screenshot_2023-06-15-18-48-44-498_com.xunmeng.pinduoduo-edit.jpg(102.78 KB)
  • golang的log包求助
    17251点击 / 2023-06-15发布 / 2023-06-15回复 / /

    目前发现,只要有- 或者> 就会这样,去掉就正常,
    用strconv.Quote()解决,因为特殊符号被转义为实体动作了,或者用log.printf(“%s”,str)解决

  • golang的log包求助
    17251点击 / 2023-06-15发布 / 2023-06-15回复 / /

    我问了一下gpt4,以下是gpt4的回复,从你的描述看,这个问题可能并不是一个 bug,而是因为 log.Println()fmt.Println() 对待参数的方式有所不同。

    log.Println() 函数会为每个参数调用 fmt.Sprint() 来生成输出的字符串。在你的第一个例子中,你传递给 log.Println() 的是一个字节切片(startInfo.Bytes()),fmt.Sprint() 会将这个字节切片转换为一个字符串,其中每个字节都被转换为其对应的十进制数值,这就是为什么你看到一串数字的原因。

    在你的第二个例子中,你传递给 log.Println() 的是一个字符串(startInfo.String())。这个字符串应该能正常打印出来,但是你说结果卡住了。这可能是因为你的环境或者终端有些问题,或者是因为 register.ListenAddr 中包含了一些非打印字符,导致在终端上看起来像是卡住了。

    你提到你已经设置了 log.SetOutput(file),并且在文件中的记录是正常的,这说明 log.Println() 是正常工作的。你可以尝试在不同的终端或者环境下运行你的程序,看看是否还会出现同样的问题。

    如果使用 fmt.Println() 没有问题,那么在这种情况下,你可以继续使用 fmt.Println() 来打印日志。如果你需要的是将日志写入文件,那么你可能需要使用 log 包,因为 fmt 包并没有提供设置输出的功能。

    另外,你也可以尝试一下 log.Printf() 函数,这个函数允许你指定一个格式字符串,可以更精确地控制输出的格式。例如:

    log.Printf("[%s] Starting  server at -> %s ;Listening...\n", register.Name, register.ListenAddr)
    

    这样,你就不需要使用 bytes.Buffer 来手动构建字符串了。