4作者: Beardier16 天前原帖
我在每个项目中都不断重复使用相同的 `array.slice(i, i + n)` 逻辑。最终,我决定停止这种做法,干脆做一个工具库。 Chonkify 是一个小型(约 870B)、零依赖的 JS/TS 库,用于将任何类型的数据分块: - 适用于数组、字符串、缓冲区、集合、映射、类数组对象、类型化数组 - 支持异步可迭代对象(非常适合批量处理流) - Unicode 安全(正确处理字形簇、表情符号等) - 以 ESM 为优先,支持 TypeScript 我主要是为自己制作的,但觉得其他人也可能会觉得它有用。 欢迎反馈!
5作者: 00taffe16 天前原帖
我是一名高级网页开发人员,有时会在复杂的依赖关系中挣扎,这些依赖关系掩盖了真正的技术运作方式。<p>有时我希望退一步,简化我的工作方式,基本上只使用少数工具/语言,这些工具/语言虽然理念较少,但却能做成大事!<p>C语言是一种容易理解但非常难以掌握的语言。<p>我非常好奇谁在使用它,以及用来做什么!<p>谢谢 :)
3作者: genovalente16 天前原帖
嘿,HN - 今天我们推出了一个全新的全球可用的无服务器平台,首要考虑的是简洁性和开发者体验。欢迎告诉我们您的想法 - 现在可以免费试用。 传统的无服务器函数就像孤岛。每个函数处理一个请求,完成工作后就忘记一切。如果需要一个函数与另一个函数通信?您就得通过公共互联网进行HTTP调用,管理自己服务之间的身份验证,并在简单的内部操作中处理不必要的网络延迟。 这种架构限制阻碍了复杂应用程序的无服务器采用。如果将单体应用拆分为微服务,意味着每个内部操作都变成了缓慢、不安全的HTTP调用,或者任何更好的服务间通信方式完全依赖于开发者,这样又有什么意义呢? 介绍 Raindrop 服务 Raindrop中的服务是无状态的计算模块,解决了这个根本问题。它们是可以独立工作或直接相互通信的无服务器函数——没有HTTP开销,没有身份验证的麻烦,没有架构上的妥协。 可以将服务视为现代无服务器开发的三大支柱之一: 1. 服务(下方链接):高效的无服务器函数,内置通信功能 2. 观察者(第二部分):自动响应变化和事件 3. 执行者(第三部分):维护状态并协调复杂工作流 让我们深入了解服务如何让您的生活更轻松。 公共服务:您应用的前门 公共服务正是您所期望的——通过唯一的URL访问的无服务器函数。它们处理外部请求,管理身份验证,并作为您应用的入口点。 公共服务 ```plaintext // raindrop.manifest service "my-api" { domain { cname = "my-unique-service" } } ``` 部署后,该服务将可以在 my-unique-service.<org-id>.lmapp.run 访问。非常适合API、Webhook和任何面向用户的功能。 内部服务:秘密武器 这里的事情变得有趣。内部服务不需要公共URL——它们设计为被应用内的其他服务调用。但与传统的无服务器函数不同,它们可以直接调用,而无需HTTP请求。 这就是服务绑定的实际应用:在您的服务之间实现高效、安全的通信,而无需网络开销。 内部服务 ```plaintext // raindrop.manifest service "my-api" {} ``` 服务绑定:直接的内部通信 当服务相互调用时,魔法就发生了。服务直接调用其他服务的方法,而不是发出HTTP请求。这就像在您的函数之间建立了一个私有的高速网络。以下是公共和内部服务的实际应用: ```javascript // 服务A(面向公众) export default class extends Service<Env> { async fetch(request: Request): Promise<Response> { // 直接调用内部服务 - 不需要HTTP,不需要URL const response = await this.env.SERVICE_B.processData({ userId: getUserId(request) }); return response; } } // 服务B(仅限内部) export default class extends Service<Env> { async processData(input: any): Promise<Response> { // 这里是您的业务逻辑 return new Response("处理成功"); } } ``` 技术博客 - 服务: [https://liquidmetal.ai/casesAndBlogs/services/](https://liquidmetal.ai/casesAndBlogs/services/) 技术文档 - [https://docs.liquidmetal.ai/reference/services/](https://docs.liquidmetal.ai/reference/services/) 注册我们的免费套餐 - [https://raindrop.run/](https://raindrop.run/)