逃离美国云服务:一次企业级迁移实践

2025-03-18
逃离美国云服务:一次企业级迁移实践

由于美国数据隐私法律与欧盟冲突,以及美国政府可能滥用其科技公司作为武器的担忧,作者决定迁移其企业依赖的美国云服务。文章详细描述了将Microsoft 365迁移到Proton、Bitwarden迁移到Proton Pass、以及逐步迁移其他服务(如GitHub、Google搜索、Cloudflare/Google DNS、Docker Hub和NPM)的过程和经验。作者发现一些迁移比预期容易,例如Proton提供了优秀的Microsoft 365替代方案,而其他一些迁移(例如GitHub)则因依赖程度高而需要更多时间。文章强调了减少对美国云服务的依赖性的重要性,并鼓励读者探索欧洲替代方案。

阅读更多
开发

Next.js预渲染站点能承受多少流量?意外的Hacker News流量冲击

2025-03-09
Next.js预渲染站点能承受多少流量?意外的Hacker News流量冲击

作者测试了其Next.js预渲染站点的流量承受能力,结果发现一个VPS服务器只能处理约200个并发请求,远低于预期。这促使他升级到专用服务器,性能提升显著,每秒可处理数千个请求。与之对比,服务器端渲染(SSR)的性能远低于预渲染,在高流量下容易出现问题。文章还探讨了Cloudflare、Vercel等其他方案的优缺点,最终作者选择升级到专用服务器以满足需求,并计划未来进一步测试优化方案。

阅读更多

Google 翻译与 React 应用的冲突:一场 DOM 之战

2025-02-14
Google 翻译与 React 应用的冲突:一场 DOM 之战

Google Chrome 内置的 Google 翻译扩展程序会修改网页的 DOM 结构,导致许多现代 Web 应用,尤其是使用 React 的应用出现问题。文章深入探讨了 Google 翻译的工作机制,以及它如何通过替换 TextNode 为 FontElement 来破坏 React 的虚拟 DOM,从而导致应用崩溃或数据无法更新等问题。文章还分析了几个常见的错误,例如 `NotFoundError` 和 `insertBefore` 失败,并提出了几种解决方法,包括猴子补丁和用 `` 包裹 TextNode,但这些方法都存在局限性。最终,文章建议开发者权衡利弊,可能需要禁用 Google 翻译或自行实现本地化功能,以确保应用的稳定性和用户体验。

阅读更多