首页   注册   登录
 gantleman 最近的时间轴更新
gantleman's repos on GitHub
Java · 2 人关注
shopd
This is an example project of the article "ITDSD - 5. Lock-free Programming for Micro-service Splitting". It implements distributed system, micro-service splitting, lock-free programming.This project is based on the reconstruction of online shop malls.
CSS · 1 人关注
pelagia_websit
C++ · 1 人关注
sorted_set
Redis SortedSet for C++
C · 0 人关注
alure
C++ · 0 人关注
bcode
Kademlia bcode
C · 0 人关注
ddkv
Distributed KV database based on DHT
0 人关注
gantleman.github.io
0 人关注
Shader-learning
JavaScript · 0 人关注
xin
xin
gantleman

gantleman

V2EX 第 498160 号会员,加入于 2020-07-08 00:20:09 +08:00
今日活跃度排名 5573
使用 redis 实现 5 万人同服的“相位技术”
推广  •  gantleman  •  9 天前  •  最后回复来自 gantleman
20
为什么多线程开发中需要无锁编程?
无要点  •  gantleman  •  14 天前  •  最后回复来自 tidyoux
35
我们来为“死锁的四个必要条件”加一条
程序员  •  gantleman  •  15 天前  •  最后回复来自 ksedz
84
如何监控 channel 的缓冲区使用状况?
Go  •  gantleman  •  29 天前  •  最后回复来自 janxin
5
纪念远去的赛博朋克
随想  •  gantleman  •  29 天前  •  最后回复来自 red2dog
12
在 unity2d 同屏显示 9 千人
游戏开发  •  gantleman  •  30 天前  •  最后回复来自 gantleman
2
拯救多线程混乱的 pelagia
程序员  •  gantleman  •  3 天前  •  最后回复来自 gantleman
39
多线程开发的终结者 pelagia
开源软件  •  gantleman  •  25 天前  •  最后回复来自 KunMinX
1
gantleman 最近回复了
3 天前
回复了 gantleman 创建的主题 程序员 拯救多线程混乱的 pelagia
@danc 你提出了一个有趣的问题,我没有理解错的话是想问 rust 和 go 在并行上和 pelagia 有什么区别。简单说 go 和 rust 会死锁,pelagia 不会。深入的说 go 和 rust 通过放弃对线程间共享数据的管理。来减少工程的复杂程度。也许开发者仅仅不想处理这么复杂的问题,或则没想好怎么处理这么复杂的问题。去掉共享数据的管理在技术水平上就相当于自降一级。假设有一天软件工程师在做开发的时候,不需要考虑语言错误问题,存储错误问题,网络错误问题。那不表示这些问题天生不存在。哪仅仅是因为所使用系统语言或工具将这些问题处理掉了。
3 天前
回复了 gantleman 创建的主题 程序员 拯救多线程混乱的 pelagia
@swulling 在讨论任何事情的时候都要设置一个合理的前提,pelagia 就是一个小团队项目。为了最大可能兼容单片机和任何其他种类的客户端所以不会引入网络功能。预计最终代码不会超过 5 万行。随着项目的稳定也必然会添加防御相关的代码。工程开发有其过程,核心功能都不完备的情况就添加各种防御,哪么核心功能发生变化后防御代码怎么办?这些防御的代码文或档在大团队下对团队协作是必须。我带团队也天天强调文档和防御的重要性。强调文档的重要并不意味真的就比核心功能还重要。核心功能都没有的话,这个帖子就不存在了。以上内容都是我猜测的,因为你没有说出为什么文档比核心功能更重要的原因。希望能坦诚告诉我。至于开发习惯,是不是因为我一直写个人项目或则小团队项目,没有大公司成熟代码的习惯。还是因为 pelagia 本身是开源项目而没有把大公司病带入这个项目。或则大公司的代码是不是因为文档就更加强壮。这个命题真的很大,涉及到多个软件管理的领域。当然我也有兴趣和你聊聊开发管理的问题。小团队,大团队,公司角度的管理都不同。侧重点也各有不同。但无论什么时候软件按时,按质,按要求做出来。对公司,对团队,对团队领导才是最重要。无论小项目,大项目,团队项目。都要认真对待做出成绩。我能力也有不足的地方,对于细枝末节把空的并不好。也欢迎有兴趣,志同道合的开发者加入进来。
5 天前
回复了 gantleman 创建的主题 程序员 拯救多线程混乱的 pelagia
@no1xsyzy 很抱歉最近很忙,在准备用 pelagia 冲刺 3D 同屏 1 万人的目标。functionPoint 会在 3 个地方被使用。分别是 job 的 885 行,919 行,954 行,和用户相关的是 919 行这段。

这段表示表示如果是 C 函数指针类型直接执行调用执行,如果失败将回滚数据库事物。
if (pEventPorcess->scriptType == ST_PTR) {

if (0 == pEventPorcess->functionPoint(pOrderPacket->value, plg_sdsLen(pOrderPacket->value))) {
job_Rollback(pJobHandle);
}
}
6 天前
回复了 gantleman 创建的主题 程序员 拯救多线程混乱的 pelagia
@xsen 是的,软件工程的特点就在不断进化。对于纸带机所有开发和编译都是设计管理问题。我们知道后来这些都被编译器和操作系统取代了。软件工程的自动化,平台化,排斥人工的特点是诞生之日起就深入骨髓的。
8 天前
回复了 gantleman 创建的主题 程序员 拯救多线程混乱的 pelagia
@no1xsyzy 推荐你看下另一帖子 www.v2ex.com/t/695286#reply20 。我这人确实有些狂妄,因为我一直在并行技术的最前沿疯狂尝试。解决一些国内几年都解决不了的技术问题并分享给大家。开发过程中每个人使用语言的习惯都不相同。可以贴出来不好懂的代码我来慢慢讲。
9 天前
回复了 gantleman 创建的主题 推广 使用 redis 实现 5 万人同服的“相位技术”
@tcfenix
@sunny352787
谢谢,谢谢
9 天前
回复了 gantleman 创建的主题 推广 使用 redis 实现 5 万人同服的“相位技术”
@livid 真的要好好夸夸你,谷歌的中文优化做的真棒。第二天就排到了云风 blog 的后面。相位技术 14 年出来的,是魔兽游戏服务器的核心技术。到今天国内都不能出仿制品。无数的大牛在这个技术上折戟沉沙。我就这么免费给大家拿出来了,给各位也卖个热闹好看。各位看过的爷,有钱的捧个钱场,没钱的捧个人场。谢谢您了。
9 天前
回复了 CrisTao 创建的主题 程序员 疑问,外国程序员都不写 blog 的吗?
blog 是日常个人记录,老外这点分的很清楚。
9 天前
回复了 gantleman 创建的主题 推广 使用 redis 实现 5 万人同服的“相位技术”
@Acoolda 是的所以要加限制,使用九宫格,81 宫格,六变格的技术进行过滤。
我发了个文章因为链接到知乎专栏也被小黑屋,谁要是能写一篇 v 站小黑屋指南就好了。哈哈哈
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1053 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms · UTC 20:48 · PVG 04:48 · LAX 13:48 · JFK 16:48
♥ Do have faith in what you're doing.