TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

We migrated from AWS to GCP with minimal downtime

51 点作者 levkk11 个月前

6 条评论

sgarland11 个月前
&gt; To make things harder, zfs send is an all or nothing operation: if interrupted for any reason, e.g. network errors, one would have to start over from scratch.<p>ZFS absolutely handles resuming transfers [0].<p>Honestly, articles like this make me doubt companies’ ability to handle what they’re doing. If you’re going to run a DB on ZFS, you’d damn well better know both inside and out. mbuffer is well-known to anyone who has used ZFS for a simple NAS. Also, you can’t use df to accurately measure a ZFS filesystem. df has no idea about child file systems, quotas, compression, file metadata…<p>It’s also unclear to me why they didn’t just ship the filesystems through nc. Assuming they’re encrypted (which, I mean, I would hope so…) it wouldn’t be any more risky than unencrypted via SSH.<p>[0]: <a href="https:&#x2F;&#x2F;openzfs.github.io&#x2F;openzfs-docs&#x2F;man&#x2F;master&#x2F;8&#x2F;zfs-send.8.html" rel="nofollow">https:&#x2F;&#x2F;openzfs.github.io&#x2F;openzfs-docs&#x2F;man&#x2F;master&#x2F;8&#x2F;zfs-send...</a>
shrubble11 个月前
I wonder what would have happened if they created a ZFS snapshot, transferred as &quot;tar over ssh&quot; to the remote host, then created hourly snapshots thereafter and synced those across? It seems they were not aware of this method.
评论 #40622337 未加载
kccqzy11 个月前
A really cool story. But I have to say, everyone will notice that rewriting a file transfer tool in Rust is a poor use of the engineering time without having first understood the cause of the slowness. It&#x27;s almost like a blind cult-like trust in Rust.<p>&gt; So just like with everything else, we decided to write our own, in Rust. After days of digging through Tokio documentation and networking theory blog posts to understand how to move bytes as fast as possible between the filesystem and an HTTP endpoint, we had a pretty basic application that could chunk a byte stream, send it to an object storage service as separate files, download those files as they are being created in real time, re-assemble and pipe them into a ZFS snapshot.<p>I mean this sounds like a fun engineering project and I suspect I would enjoy writing it very much. While this might be bring me joy personally, as an organization this is still a failure.
评论 #40610821 未加载
评论 #40611309 未加载
评论 #40610689 未加载
评论 #40612397 未加载
klabb311 个月前
Blog says 100Gbit NICs and 200MB&#x2F;s achieved. Big gap!<p>Since both endpoints are controlled by you, you should be able to tune the tcp buffers. In either case RTT and iperf3 with dozens concurrent tcp conns would be the first step to determine a baseline for what could be expected.<p>Author if you are here that data would be very interesting to know.
评论 #40611159 未加载
评论 #40613832 未加载
Spooky2311 个月前
Awesome story! Made me miss my DBA days long ago.
评论 #40610583 未加载
threecheese11 个月前
I love watching a systems problem being solved, we’re forced to learn so much during outages and problems like this. When I read that you were starting to write a rust tool to integrate zfs with s3 because you thought aws was limiting throughput, I nearly yelled out loud! Guess you learned the same lesson I did, once :)