在程序设计中,我们希望关联程度低的对象之间的联系是“松耦合”的,也即减少直接依赖。一般的做法是使用消息机制进行信息的传递和响应,其中事件系统是其一种常规手段之一,下面我们尝试使用C++实现一个事件系统。
C++20新增属性[[no_unique_address]]详解
很多新手会回答0,但稍有经验的开发者会说出正确答案,大小至少是1字节。
上周热点回顾(9.1-9.7)
·
一个真·免费、真·开源的远程桌面神器——RustDesk (
程序员晓凡)
·
一人开发游戏的实战心得,长期更新! (
奇个旦)
·
园子的不务正业:向创业开发者推荐「楼盘」 (
博客园团队)
·
独立开发,做产品的45天 (
七号楼)
·
没想到!上周写证照小程序的博文火了 (
柯北(jvxiao))
·
火狐退出中国后,Zen 浏览器会是「理想平替」吗? (
葡萄城技术团队)
·
独立做项目,拿得起放得下 (
七号楼)
·
美团也出招了,LongCat-Flash 开源,主打一个快! (
削微寒)
·
在国企干了 5 年 Java,居然不知道 RPC?这正常吗? (
程序员鱼皮)
·
自己做产品,如何选技术栈? (
七号楼)
·
精选 4 款基于 C# 开源、实用的工具类库,开发效率提升利器! (
追逐时光者)
·
Redis有哪些部署方案?了解哨兵机制吗? (
程序员Seven)
K8s Pod 资源访问控制策略
客户端
Redis缓存一致性
这是最广泛采用的模式,由应用程序显式地管理缓存和数据库的交互。
聊一聊 .NET 中的 CompositeChangeToken

海量数据如何“安家”?一文读懂哈希、范围和一致性哈希三大分片策略
哈希分布
哈希分布(Hash-based Partition)是通过哈希函数(如MD5、SHA-1或简单取模)将数据的键(Key)映射到固定范围的哈希值,再根据哈希值将数据分配到不同的节点。
哈希分布(Hash-based Partition)通过一个确定的哈希函数(如MurmurHash、CRC32,或者简单的取模运算;MD5、SHA-1等加密哈希也可用于需要强随机性的场景,但通常计算开销较大)作用于数据的某个键(Key),将键映射到一个固定范围的哈希值。然后,根据哈希值(例如,hash(key) % num_nodes)将数据分配到对应的节点。
良好的哈希函数可以将数据尽可能均匀地散列到各个节点,避免数据倾斜,从而实现负载均衡。然而,当集群中的节点数量发生变化(增减节点)时,如果采用简单的取模方式(% num_nodes),绝大多数数据的哈希映射关系都会改变,导致大规模的数据迁移(如节点从10个扩容到11个,约90%的数据需要迁移)。
Google 推出新编程语言 Mangle:可能彻底改变数据库工作方式
首先,我们来搞清楚 Mangle 的本质。简单来说,Mangle 是 Google 专为数据库操作设计的编程语言,但它绝非普通的数据库语言——它针对”演绎式数据库编程”(deductive database programming)场景构建。别担心,这个概念并不复杂:它擅长通过逐步推理的方式,从复杂数据中挖掘答案,就像人一步步分析问题那样。
每周读书与学习->初识JMeter 元件(一)
Jmeter元件是使用Jmeter来完成性能测试的基础,是整个Jmeter的核心,Jmeter是由很多个不同种类的元件来共同组成的,每个元件具有不同的功能,编写Jmeter的性能测试脚本就是将多个功能不同的元件串联起来完成一个性能测试场景的过程,如下图所示,下图中展示的就是Jmeter中常用到一些元件的种类,每个不同种类的元件可以在性能测试中起到不同的作用,通常需要不同的元件来共同协作,才能完成一个性能测试场景。
【URP】Unity Shader Tags
URP 默认使用
前向渲染路径,其光源处理规则如下:
小狮博客