每日HackerNews RSS

Web 流量管理公司 Cloudflare 宣布发布一个用 Rust 编程语言编写的名为“trie-hard”的开源软件库。 trie-hard 创建的目的是提高 Cloudflare 服务器处理大量互联网流量的效率。 具体来说,它解决了 Cloudflare 网络中的瓶颈,将处理传入 HTTP 请求的 CPU 使用率降低了 1.28%,使他们能够在不添加硬件资源的情况下管理更多流量。 该问题是在分析名为“clear\_internal\_headers”的特定函数的执行时间时产生的。 该功能在所有服务器上运行超过总CPU时间的1.7%,由于其使用率较高且结构相对简单,因此需要优化。 通过实施名为“trie”的数据结构的自定义版本,cloudflare 工程师将“clear\_internal\_headers”函数的运行时间从 3.65μs 提高到不到 1μs,从而实现了预期目标。 此外,测试表明,他们新的硬实现对内存消耗的影响最小。 从那时起,trie-hard 已在生产中部署,并证明与以前的方法相比,CPU 使用率显着降低,符合基于测试的预期。 因此,我们竭尽全力承诺增强 Cloudflare 庞大基础设施的可扩展性和性能,让每个人都能更快地使用互联网。

Cloudflare 处理内部标头并删除它们的方法涉及为每个内部标头创建唯一标识符,而不是将它们分隔在特定列表中。 这些独特的 ID 使 Cloudflare 能够轻松删除不必要的信息,同时保持功能。 然而,将标头存储在特定列表中以进行识别的方法被认为是复杂的,容易出错,并且由于设置差异算法需要额外的计算或由于同时执行程序或不正确的标头命名约定而引起的冲突而可能速度较慢。 在分析这种方法的效率时,使用统计分析软件 R 进行了一项研究。研究发现,通过使用“trie”(一种用于高效检索的树状数据结构)来识别内部标头的速度没有显着提高 基于其前缀的键。 此外,研究表明,在某些情况下,“trie”的表现甚至可能比传统方法稍差。 还值得注意的是,由于需要检查字符串中的每个元素,应用于字符串的哈希函数可能需要大量计算。 尽管如此,Cloudflare 声称已经通过解决列表或图形结构中常见的内存跳跃问题来改进这个问题,从而提高“trie”的性能。 此外,该研究将“trie”与自动机理论 (Aho-Corasick) 和正则表达式 (regex) 等替代方案进行了比较,发现“trie”对于涉及较短字符串的查找速度明显更快。 总体而言,Cloudflare 用于管理内部标头的方法似乎很有效,在效率和性能方面提供了潜在的优势,特别是在处理较短的字符串时。 然而,需要进一步的研究和测试才能完全确定各种工作负载和环境的最佳解决方案。

周二,欧洲法院 (ECJ) 在有关爱尔兰税务事务的长期争议中做出了败诉苹果的裁决。 此前,欧盟委员会于 2016 年发布命令,要求爱尔兰追回苹果公司最多 130 亿欧元的补缴税款。 这一消息是在苹果公司宣布推出旨在重振 iPhone、Apple Watch 和 AirPod 系列新产品后不久发布的。 受此决定影响,股价下跌约 1%。 爱尔兰政府在一份声明中称此案与历史无关,并表示他们一直坚称不提供税收优惠待遇。 Apple 预计该判决将产生 100 亿美元的所得税费用。 作为后续法律程序的一部分,托管账户中持有的资产将被转移到爱尔兰。 苹果公司的一位代表评论说,该公司无论在哪里运营,都会毫无例外地缴纳所欠税款,同时还声称,欧盟委员会旨在追溯性修改税法,并无视有关美国科技公司此前在美国境内纳税的国际税务规定。 该委员会最初于 2014 年对苹果在爱尔兰的税务安排展开调查。欧盟反垄断主管玛格丽特·维斯塔格 (Margrethe Vestager) 主持了此次调查的启动。 欧洲法院在最近的裁决中确认了委员会 2016 年的初步判决。 这一结果表明,美国科技集团与欧盟之间在数据隐私、税收和反垄断监管等问题上持续存在紧张关系。 由于涉及欧盟的几起正在进行的案件,苹果公司面临进一步审查。 最近,欧盟因苹果公司滥用其在音乐流媒体应用分发市场的主导地位而对其处以 18 亿欧元的罚款。 此外,欧盟的《数字市场法案》迫使参与企业改变某些做法,对苹果、Alphabet 和 Meta 等科技巨头发起了大量调查。

爱尔兰是欧盟成员国,在欧盟成员国中是独一无二的,因为它有义务对条约进行全民公投,这与其他依赖各自国家议会批准的国家不同。 此外,爱尔兰与荷兰、卢森堡以及某种程度上的比利时一样,对欧盟范围内的法规拥有否决权。 尽管不是申根协定的一部分,并且与英国保持着英联邦贸易协定,爱尔兰仍深受欧盟的影响。 然而,这种影响并非没有争议,特别是围绕爱尔兰的税收结构和庇护立法。 一个值得注意的问题涉及《都柏林条例》,该条例规定了确定负责处理寻求庇护者申请的欧盟成员国的标准。 批评者认为,与其他欧盟国家相比,爱尔兰执行都柏林法规导致处理庇护申请的责任不成比例。 此外,爱尔兰因通过复杂且有争议的转让定价策略向苹果公司等跨国公司提供优惠的税收优惠而面临审查。 这些策略导致苹果公司的纳税义务大幅减少,招致逃税和破坏公平竞争原则的指控。 值得注意的是,欧盟委员会对苹果公司的税务行为展开了调查,引发了一场法律诉讼,最终欧洲法院裁定爱尔兰政府通过其税务裁决向苹果公司提供了非法国家援助。 总之,爱尔兰在欧盟内保持着独特的地位,因为它要求对条约进行全民公投,并对欧盟范围内的法规拥有选择性否决权。 此外,围绕爱尔兰的庇护政策以及通过操纵税收结构对跨国公司的偏袒也存在争议。

软件开发是一种激情:本文重点介绍了许多开发人员编写代码所带来的快乐和兴奋。 与普遍看法相反,并非所有程序员的目标都是创建下一个价值数百万美元的应用程序; 有些人只是喜欢构建软件的艺术和挑战。 这些开发人员被称为“黑客”。 他们乐于创造,即使很少有人使用他们的作品或从他们的作品中受益。 这篇文章还讨论了消费者文化心态,即软件主要被视为一种商品,而不是表达或学习的手段。 这些人可能会质疑看似不必要的项目背后的目的。 然而,这些黑客沉迷于创作过程本身,而不考虑经济利益。 最后,作者强调,编程是一种艺术追求,类似于诗歌,思想的构建是在体现为有形的创作之前进行的。 因此,该流程具有内在价值,而不仅仅是生产力或盈利能力。 总之,本文鼓励读者再次拥抱编程,尤其是那些因外部因素或压力而对编程热情逐渐减弱的读者。 这篇文章邀请那些将疯狂创意编程视为排他性或精英主义的人重新考虑这一观点并参与其中。 最后,作者分享了几个标有“只是为了好玩”的项目,展示了编程的无限潜力和创造力。

用户更喜欢简单的项目而不是复杂的项目,在投入实施之前重点关注理解基本概念。 他们不喜欢使用大型库或框架,更喜欢通过阅读参考资料和 Git 存储库来探索代码。 用户认同游戏开发者约翰·卡马克早期因限制而导致技能发展的经历。 用户反映了将生产力和收入潜力置于个人享受和成长之上的社会压力。 他们质疑“为了好玩”而编码的价值,并担心他们的创作可能会在没有得到认可或补偿的情况下被盗用。 尽管存在这些担忧,他们仍然继续追求小型的、令人愉快的项目。 他们对那些仅仅根据头衔或职位就认为他们比软件开发人员“更重要”的人感到沮丧,并感到被那些可能对员工显得虚伪的高层人士误解。 总体而言,用户在个人贡献软件开发中寻求满足感,并对当前对生产力和收入而非创造力和享受的重视提出质疑。

目前可用的虚拟现实 (VR) 设备由于缺乏可更换部件、价格昂贵和客户支持有限而存在可修复性差的问题。 许多设备,包括 Oculus 等热门品牌,都无法提供必要的备件,导致用户在设备发生故障时束手无策。 尤其是控制器,很容易损坏,而寻找替代品既具有挑战性又昂贵。 虽然 VR 技术提供了身临其境的体验,但其缺点使得该领域的投资难以证明其合理性。 用户可能会出于新奇的目的考虑购买一次 VR 设备,但 VR 的整体状况仍然令人失望。 建议避免购买由缺乏客户支持的公司(例如 Facebook 或类似实体)开发的产品。 智能手机在安全和定制选项方面也面临着类似的问题,导致科技爱好者感到沮丧。 制造商应优先为用户提供对其设备的基本控制,包括允许刷新自定义操作系统并提供二进制文件以方便修改。 理想情况下,维修应该是简单的,并且对普通用户来说是可以访问的,但当前的设计重点是使故障部件难以拆卸和更换。 一份个人账户描述了他试图修理 Oculus Quest 2 控制器的经历,却发现连接按钮的细小带状电缆在拆卸过程中导致频繁断裂。 鉴于制造商施加的限制,用户在考虑投资 VR 设备和智能手机时应谨慎。 此外,服务协议条款通常会剥夺用户的所有权,并保证制造商提供最低限度的保护或帮助。 一些人认为,计划报废在智能手机制造中发挥着重要作用,而另一些人则强调为实用性和可承受性而做出的设计选择。 尽管在具体细节上存在分歧,但很明显,用户应该让他们的设备具有更大的灵活性和更长的使用寿命。

2008 年,开发了一款软件来设计最佳行走机构。 通过进化数千代虚拟腿部变化,根据步行速度、间隙和材料使用等因素选择最好的变化。 2017 年,这些概念被应用于创建一款名为“Carpentopod”的功能性无线步行咖啡桌。 每个腿尖在其周期的最低三分之一期间的运动经过精心设计,以最大限度地减少摆动和脚滑,同时鼓励腿尖的水平运动,以促进三条腿之间的协调。 最终的腿部设计是通过模拟进化过程的另一次迭代来选择的。 “carpentopod”一词源自古拉丁语和希腊语词根——“carpentum”,意思是马车,“pod”,意思是有脚或有腿的生物。 为了建造 Carpentopod 桌子,设计师结合了传统木工技术和现代技术,用可持续材料制成了一件美观、实用的家具。 所有组件均使用 Autodesk Fusion 360 精心设计,使他能够从多个角度轻松可视化成品,并确保整个施工过程中的精确配合。 Carpentopod 由两个高扭矩直流电机提供动力并配备陀螺仪传感器,可以在表面上平稳平稳地移动。 它高约 2 英尺,重约 19 磅,需要仔细校准以防止发生事故。 定制设计的应用程序使用户能够控制桌子的移动,从而赋予他们对其操作的完全自主权。 尽管设计和建造 Carpentopod 涉及的技术很复杂,但设计师选择自己制造几乎所有方面,利用他个人的 3 轴 CNC 铣床来生产精确的木制部件。 他利用层压竹子的耐用性和美观性,在整个结构中融入了微妙的曲率。 腿连接到曲轴上,曲轴容纳在弯曲的中央腔室中,其中包含电子设备、电池和其他机械部件。 总体而言,Carpentopod 代表了机器人和家具设计领域的一项令人印象深刻的成就,展示了创新和独创性,同时提供了形式和功能的惊人融合。

这个 DIY 项目展示了一款独特的自动行走咖啡桌,其灵感来自“Discworld”中的虚构行李箱。 该桌子使用最少的技术来隐藏其移动机制,使其具有类似于哈利波特中的物体的迷人品质。 创作者强调桌腿的平滑运动,让桌子移动时没有任何噪音。 此外,创建者还表示,他计划将该设计作为开源发布,使其他人能够创建自己版本的自动行走桌。 虽然该创造物采用复杂的计算系统进行导航,但由于缺乏动态目标设定功能,作者质疑它是否真正符合人工智能的资格。 尽管人们对这种设备的实用性感到担忧,但该桌子的新颖性和独创性还是引起了读者的兴趣,希望看到更多这样的创造性项目。

Microsoft 的 Windows NT 操作系统于 1989 年开始开发,旨在与 Unix 竞争。与起源于 20 世纪 60 年代中期的 Unix 不同,NT 旨在支持各种处理器架构、多任务处理以及与旧版 DOS 和 Windows 系统的兼容性。 NT 的主要设计目标包括可移植性、支持多处理以及遵守 POSIX 标准。 NT 的设计与 Unix 显着不同,它采用面向对象的模型而不是整体内核,从而实现更好的资源管理和访问控制。 它的特点是集中访问控制、对象之间的共同身份以及统一的事件处理。 其内核通过硬件抽象层(HAL)提供抽象硬件原语,支持在不同架构上运行。 NT 从一开始就采用了抢占式多任务处理,与许多 Unix 系统相比,提供了卓越的性能。 此外,NT 一开始就支持线程,这将其与 Unix 的早期版本区分开来。 然而,与 Unix 不同的是,NT 放弃了信号的使用,转而使用警报,从而在线程管理方面提供了明显的改进。 NT 提供了增强的安全措施,实现了一个基于功能的系统,并为各个进程提供了访问令牌。 它通过专门的子系统容纳了一系列 API,包括 POSIX 和 Win32。 值得注意的是,NT 从最初发布之日起就促进了无缝 I/O 重定向、高效虚拟内存和多个文件系统。 与当代 Unix 系统相比,NT 具有许多进步,例如 64 位寻址、日志记录、Unicode 文件名和 64 字节扇区大小。 此外,NT还支持异步I/O、RAID和设备热插拔。 NT 对互联网协议的影响也值得强调,它为网络域提供全面的支持,同步用户帐户,并采用高级访问控制列表 (ACL) 来实现细粒度的文件权限。 NT 还利用命名管道在本地或远程进程之间进行通信。 总而言之,尽管 NT 与 Unix 共享一些功能元素,但其底层体系结构展现了许多创新方面。 NT 非常强调效率、可扩展性和可靠性,标志着与传统 Unix 设计的背离。 然而,随着时间的推移,随着 Unix 的发展和成熟

作者认为,虽然 NT 操作系统可能比同时代的操作系统有更好的初始设计原则,但总体上它既不更先进,也不“更好”,因为它的复杂性阻碍了性能、开发和市场采用等实际方面。 作者提供了 2000 年代中期使用 Windows 代码库的个人经验的例子,将 NT 描述为具有过多、冗长和僵化的编码风格,导致与类 Unix 系统相比,流程更长且效率更低。 此外,作者指出,虽然 NT 拥有强大的理论基础,但与类 Unix 系统相比,它在灵活性、适应性和资源分配等方面遇到了一些问题。 作者最后指出,尽管 NT 的设计具有高水平的架构艺术性,但其成本超出了其价值,特别是考虑到 Microsoft 的资源有限。 作者认为 NT 对严格架构的关注导致其可靠性差且复杂。 此外,作者强调,即使是最可靠的内核也可能由于额外的用户模式组件和辅助服务而变得不可靠。 最后,作者批评微软向开发人员隐藏代码并忽视与用户的协作机会。 总的来说,作者认为 NT 代表了“最坏就是更好”的例子,在实用性和效率方面,简单性胜过复杂性。

锤子计划旨在通过数据收集和分析来增加加拿大主要杂货店之间的竞争。 目标是编译一个可公开访问的数据库,其中包含来自领先杂货店网站的历史价格。 该数据库应支持学术研究以及针对任何共谋行为证据的潜在法律行动。 要取得成功,需要具有经济学、数据处理和分析专业知识的志愿者的合作。 感兴趣的人可以通过电子邮件 ([jacob@website]) 联系创建者 Jacob,以获得机会,例如进行经济分析、测试数据是否有错误或改进,或者分享与其他地区或 Mario Zechner 作品中的杂货定价相关的知识。 初步数据集已经可用,其中包含 2024 年 6 月 10 日至 2024 年 9 月 8 日期间七家加拿大杂货店的价格。该数据集采用 SQLite 文件格式,可以使用免费的 DB 浏览器软件打开。 我们鼓励用户探索原始数据,将其转换为 CSV 文件,并调查特定时期(例如 11 月 1 日至 2 月 5 日)的三明治成本或定价模式等方面。 进一步研究的潜在问题包括分析售前和售后商品价格的变化,确定特定商品是否始终出现在“销售”中,检查各个杂货商价格趋势之间的关系,检测一个零售商领先而其他零售商跟随的情况,评估价格是否波动 随机或精确地相互模仿,并识别各个竞争对手之间的总体价格趋势。 分享研究结果可以帮助制定旨在提高加拿大杂货市场公平性的策略。

标题:调查主要超市之间潜在的价格合谋 副标题:我们可以信任公共数据集收集的数据吗? 内容摘要:本文讨论了分析食品杂货定价数据(特别是来自公开数据集)的挑战和局限性,以检测主要超市之间的价格合谋实例。 它认为,超市之间的价格趋同不一定表明存在串通活动,因为市场动态和优化策略可能会发生串通行为。 然而,提供具体的例子和经验证据来最终证明共谋仍然具有挑战性。 此外,文章还强调了在评估价格变动时了解毛利率和投入成本的重要性,并提出了对因 COVID-19 限制、地缘政治冲突或能源危机等外部因素夸大价格上涨的担忧。 最后,它鼓励研究人员和分析师谨慎和细致地处理这个复杂的问题,认识到仅靠公共数据集可能无法提供对超市之间潜在串通行为的足够见解。 关键词:价格串通、杂货市场、反竞争行为、经济分析、毛利率、投入成本、公共数据集、具体证据。

B 树是许多软件程序使用的基本数据结构,特别是 MySQL、PostgreSQL、MongoDB 和 DynamoDB 等数据库管理系统 (DBMS)。 B 树由包含在树形结构中分层组织的键值对的节点组成。 键相互比较以确定它们在树中的位置,从而通过索引实现高效的数据检索。 在数据库环境中,B 树是理想的选择,因为它们的节点大小固定,允许它们与磁盘块无缝对齐。 因此,它们可以促进处理存储在硬盘驱动器或固态驱动器(HDD 和 SSD)上的大量持久数据所需的快速读写操作。 MySQL 采用 B 树的变体(称为 B+树)来组织其表中的主要数据。 与传统的 B 树不同,B+树仅在叶节点存储键值对,而内部节点专门保存键和子指针。 此外,MySQL对B+树的实现还有一个附加规则:非叶节点存储N个子指针而不是N+1个,并且所有节点都拥有“下一个”和“上一个”指针,从而更容易遍历树的各层 并使用双向链表。 在为 MySQL 中的表选择主键时,开发人员普遍选择简单的自增整数。 借助B+树,每个新创建的InnoDB表都配备了使用指定主键的索引,组织数据以进行高效搜索并提高数据库的整体性能。 但请记住,虽然选择顺序主键通常可以确保最佳结果,但 UUID(尽管经常用于此目的)可能会对数据操作的效率和可预测性产生负面影响。

综上所述,用户通过实施 BTree+ 索引方法优化了名为 Aerospike 的数据库系统,专门针对大小超过 5 TB 的大型数据集。 每个数据集都属于特定的“X”属性,需要单独的订单表索引。 挑战在于管理从 BTree+ 中驱逐过期密钥的方法,因为它们被分配了生存时间 (TTL),从而导致昂贵的清理过程,导致高锁争用和性能下降。 因此,该策略仅涉及一级分支和初始兄弟叶节点的融合,以实现高效维护。 此外,还应用分片来提高速度并最大限度地减少锁争用,从而允许在各个分片/分支上同时并发读取和写入操作。 然而,清理过程可能会导致 BTree+ 结构内部不平衡,因此需要定期重建索引以保持平衡。 最后,用户还解决了与 BTree+ 最终不平衡相关的警告的潜在问题,提供了专用的“重建索引”功能。 总体而言,目标是在处理复杂的大数据场景时实现高效率、可扩展性和可靠性。

作者想为他的孩子创造一种有趣的互动电影选择方法,结合物理和数字格式的元素。 他的想法是在配备近场通信 (NFC) 标签的卡片纸上收集电影封面集。 这些卡可以放置在链接到智能家居中心(例如家庭助理)的 NFC 读卡器上,该读卡器将通过数字视频库 (Plex) 和 Apple TV 设置自动在电视上播放所选电影。 为了完成这个项目,作者从 NFC 读取器和 ESP32 开发板开始,使用电子元件和软件构建了一个简单的原型。 他将 ESPHome 固件刷入 ESP32,从而可以读取 NFC 标签的唯一标识符。 阅读器及其各自的 ESP32 被集成到定制外壳中以提供保护。 接下来,作者创建并层压了他希望提供给孩子们的电影的个性化微型电影海报版本,并在其中嵌入了 NFC 标签。 每张卡片都包含重要信息,例如电影名称、工作室和发行日期。 在 Home Assistant 的帮助下,作者编写了一个自动化程序,可以识别 NFC 标签的存在,将检测到的 ID 与预定义的列表相对应,将各个电影映射到其相应的 UNIQUE\_MEDIA\_ID,并触发 Plex 和 AppleTV 开始播放 选定的电影。 最终,作者和他的家人都很喜欢最终的产品,它为他们提供了一种引人入胜且怀旧的方式来选择他们的娱乐,同时利用现代技术。 下载链接: * [Fusion360设计文件](https://drive.google.com/file/d/1jXxKGhVt4Y0YlJgqL_p99l42n4qhZg4C/view?usp=sharing) * [ESPHome 配置示例(适用于 LOLIN32 lite)](https://github.com/thechriswood/esphome_configs/blob/main/examples/movienfc/movienfc_lolinnano.yaml) * [ESPHome 配置示例(适用于 ESP32C3 Super Mini)](https://github.com/thechriswood/esphome_configs/blob/main/examples/movienfc/

总而言之,用户描述了 DVD 播放器以及使用它观看电影的过程。 然而,对于 Netflix,用户将其比作一个漫长而复杂的过程,涉及多个步骤,包括设置计算机、连接到互联网、创建电子邮件帐户和获取订阅。 该用户提到了一款专为儿童设计的名为“Yoto”的玩具,它可以让父母将音频录制到存储卡上,为孩子们提供一种更安全的选择,让他们享受娱乐而无需过多的屏幕时间。 他们对该设备提供的功能表示满意,并表示与 Netflix 相比,学习如何使用 Yoto 更容易。 此外,该用户讨论了电视节目中的配音问题,提到了流行的儿童电视节目“Pat & Mat”的一个具体例子,当它用荷兰语而不是原始语言配音时,它会更加有趣。 最后,用户谈到了教幼儿如何通过媒体区分现实和虚构的困难,强调了适度接触屏幕的重要性。

著名演员詹姆斯·厄尔·琼斯 (James Earl Jones) 于 3 月 12 日在家中安详去世,享年 93 岁。琼斯 1931 年出生于密西西比州,在职业生涯早期因种族歧视而口吃长大,并很难找到工作。 然而,他最终通过坚持和对工艺的强烈奉献克服了这些障碍。 6 年来,他在戏剧、电影和电视领域建立了传奇的职业生涯,赢得了无数荣誉,包括 4 项托尼奖、一项艾美奖和一项肯尼迪中心荣誉奖。 他因出演迪士尼《狮子王》中的“木法沙”、《未来 2 美国》中的“贾菲·乔弗国王”等标志性角色而享誉国际,最重要的是,《星球大战》中令人生畏的反派“达斯·维德”。 尽管取得了巨大的成就,琼斯仍然保持谦虚,将他的长寿归功于作为一名表演者不断的自我完善。 在他的一生中,他孜孜不倦地工作,重返百老汇,出演了《金色池塘》和《热铁皮屋顶上的猫》等戏剧。 他留下了儿子弗林·厄尔·琼斯。

基思·大卫 (Keith David) 因在《奇爱博士》和《猎杀红色十月》等电影中的标志性角色而闻名,由于他独特的声音对这位用户具有重要意义。 他的表演超越了各种电影类型,包括喜剧、剧情片、爱情片和动作片。 他特别喜欢他的一部电影,该电影通过强有力的对话、音乐和故事情节融合了多种情感。 这部电影是用户一直以来的最爱,其中有一句名言:“鱼雷不会自毁!”。 尽管海军服役经验有限,但这句话经常浮现在脑海中。 其他著名的当代声音包括彼得·卡伦、杰夫·贝内特、弗兰克·韦尔克、蒂姆·库里、汤姆·凯恩(中风前)、菲尔·拉马尔、马克·哈米尔、克兰西·布朗和约翰·迪马吉奥。 然而,没有人能与基思·大卫 (Keith David) 在其整个职业生涯中具有影响力的声乐表演相比。

更多

联系我们 contact @ memedata.com