Zhuzhuchenyan 最近的时间轴更新
Zhuzhuchenyan

Zhuzhuchenyan

V2EX 第 463901 号会员,加入于 2020-01-08 18:41:47 +08:00
最近写代码感觉像是憋着一口闷气在写
程序员  •  Zhuzhuchenyan  •  246 天前  •  最后回复来自 Zhuzhuchenyan
31
49 年入国军,这个时间点购入了一台 16 寸 mbp
  •  1   
    MacBook Pro  •  Zhuzhuchenyan  •  262 天前  •  最后回复来自 Zhuzhuchenyan
    29
    关于 TCP 传输发送包的策略的一个问题
    问与答  •  Zhuzhuchenyan  •  277 天前  •  最后回复来自 Zhuzhuchenyan
    6
    有点激动 mac mini, macbook air, macbook pro 13
    Apple  •  Zhuzhuchenyan  •  346 天前  •  最后回复来自 c0011
    64
    控诉一下, 996 基本毁了我们的爱情
    情感问题  •  Zhuzhuchenyan  •  2020-08-16 09:39:57 AM  •  最后回复来自 s4nd
    118
    求推荐 AWS 国内访问比较好的地区
    云计算  •  Zhuzhuchenyan  •  2020-07-28 13:41:19 PM  •  最后回复来自 feng04998
    12
    关于国内 UDP 网络环境的问题
    互联网  •  Zhuzhuchenyan  •  2020-08-02 09:33:44 AM  •  最后回复来自 x1911
    11
    关于自己开发游戏的公网服务器的一些问题
    游戏开发  •  Zhuzhuchenyan  •  2020-10-09 21:08:38 PM  •  最后回复来自 yanzhiling2001
    33
    Angular 一个有关编程风格的问题
    前端开发  •  Zhuzhuchenyan  •  2020-03-07 21:11:04 PM  •  最后回复来自 coloz
    22
    Zhuzhuchenyan 最近回复了
    坐标法国
    14 寸满血 PRO + 32G + 1T
    发布会结束立即下单,估计是因为换了美式键盘的缘故,预计到达时间 11/04 - 11/08
    3 天前
    回复了 ggsl 创建的主题 程序员 请教大家服务器压力测试的问题
    然后探讨下你叙述中显露出的一些问题,仅供参考

    1. “登录 1000 人,每个客户端每 20ms 给服务器发送一条测试消息,长度为 10 的字符串”
    不知道你的游戏框架的序列化是怎么做的,若是想要反映真实情况,仅仅用字符串来模拟肯定是不够的,建议在压测环境中引入序列化和反序列化,这样可以更多暴露出在这个过程中的内存、CPU 问题

    2. “每个客户端每 20ms 给服务器发送一条测试消息”
    不建议给 20ms 间隔,每个客户端直接将单个 TCP 链接打满更具备压测意义

    3. “10 多分钟开始客户端大批掉线”
    不知道你客户端掉线的原因是什么,若是用 TCP 的话,最好可以知道连接断开的原因然后具体分析,正常情况下掉线一定是不正常的

    最后,
    若是你的序列化方案就是字符串序列化,而又不想自己写压测逻辑的话,可以考虑用你的服务器结构实现一个最简单的 HTTP Server,然后用成熟的 HTTP 压测工具去压,这个不具备任何业务逻辑,但是能很好暴露出你潜在的服务器处理能力。

    这里我用的 wrk, 可以参考一下我在 MacBook Pro (16-inch, 2019) 2.3 GHz 八核 Intel Core i9 下的结果,
    wrk -c 400 -t 4 -d 5 http://localhost:13023/

    Running 5s test @ http://localhost:13023/
    4 threads and 400 connections
    Thread Stats Avg Stdev Max +/- Stdev
    Latency 3.11ms 1.25ms 38.01ms 88.82%
    Req/Sec 20.08k 2.02k 23.81k 83.33%
    407661 requests in 5.10s, 60.65MB read
    Socket errors: connect 153, read 101, write 0, timeout 0
    Requests/sec: 79880.37
    Transfer/sec: 11.88MB
    3 天前
    回复了 ggsl 创建的主题 程序员 请教大家服务器压力测试的问题
    最近也在做类似的事情,可以参考一下我的方法论

    1. 时间指标
    - 平均响应时间
    - 最大响应时间,用来衡量极端情况下的用户承受的最大延迟
    - 方差,标准差,用来衡量用户承受延迟的分布
    - 有能力的话可以做一个直方图,并不需要全量记录,个人感觉取 1%抽样就足够了

    2. 内存指标
    我用的是.net core, 一些概念可能和 java 不一样,可以类比下
    - GC 次数,特别是不同代的 GC 次数
    - GC 时间占总执行时间的比例
    - 若是 GC 次数不正常,可以考虑间隔每段时间取堆内存的 snapshot,若是工具支持,最好可以拿到内存分布的热点图,比如这个函数这一行分配了全体的 90%的内存

    在有以上数据的情况下,即使没有同类型的框架可以横向比较,也可以自己根据压测结果优化迭代,再行压测比较。
    已经下单 14 寸 PRO 版本,没买 max 版本实在是囊中羞涩
    到时候看看 16 核 GPU 能带来什么样的体验
    46 天前
    回复了 lanlanye 创建的主题 Python [求助帖] Django ORM 的联表查询问题
    看一下 webstorm 的 local history,或许还能救

    没有 stash 的话基本没办法了
    84 天前
    回复了 petrichor08 创建的主题 程序员 一个 golang 的题,求个思路
    看到这题感觉回到了大学。

    如果仅仅要求支持以上的几种形态的话,简单的做法就是定义等差,等比,开方等差的规则,然后判断当前数列不满足条件时,做差去递归求解就是了。别忘了加上最大递归层数的限制。后期如果增加需求加规则就好了。

    不想要仅仅如此的话可以看一下如何做一个求解器,举个现成的例子,你在 wolfram alpha 上直接搜索 1,3,5,7,9,他就会提示你这是个等差数列,并给出通项公式,网址: https://www.wolframalpha.com/input/?i=3%2C5%2C7%2C9%2C11

    最后,作业还是自己做吧。
    85 天前
    回复了 penll 创建的主题 C# 关于 C# 的异步使用方式疑问
    - 需要额外更新的操作放到此异步方法内,额外更新的是同步操作

    需要等待额外更新的操作结束才返回么?如果需要等待,那没必要用 Task.Run 再包一层

    如果不需要等待,只是希望执行了以后就不管了,那么去掉 async,await,直接用 _ = Task.Run(...) 就可以了,Task.Run 会在线程池上执行操作,所以并不会开辟过多的线程。

    ---
    另附,
    1 、普通处理只需 CPU 计算
    如果的确这个普通处理会耗费相对较多 CPU 时间,而期望调用函数尽快返回的话,用 Task.Run 是一个比较常见的方法

    2 、需要数据库读写等 I/O 操作
    此处建议直接找原生支持 Task 的异步方法的库
    之前 15 寸坏了的时候,也在犹豫是换 M1 还是 16,因为技术栈是.net core 服务端+Unity,了解了一下 c#开发技术栈在 M1 上的支持程度。

    简单来说,现阶段来讲是无法取得很好的开发体验的。原因楼上也说了,.net core 3.1 很难支持,.ne5 只能靠罗塞塔,jetbrains rider 目前也只是罗塞塔,mac 上的 vs 体验真的一言难尽,vs code 虽说也有 c#插件,但是体验也是一言难尽。

    Unity 的话目前只有最新的 alpha 原生支持 M1,但是 burst compiler 还处于无法用的状态,罗塞塔版本的话,c#重载速度让人如鲠在喉。

    所以老老实实 intel Mac
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1486 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 00:45 · PVG 08:45 · LAX 17:45 · JFK 20:45
    ♥ Do have faith in what you're doing.