HN user

continuations

1,073 karma
Posts7
Comments296
View on HN
iMac 24-inch 5 years ago

I think it's even more amazing that Apple can get away with charging $1,300 in 2021 for a desktop with only 8GB RAM.

The desktop I built in 2013 had 32GB RAM and that entire thing cost me $500 or $600.

Then why is it that IO-heavy benchmarks such as the Techempower web benchmark are dominated by async frameworks? The fastest results there are all from async frameworks [1].

And among Rust frameworks the same pattern holds. The fastest Rust frameworks are async while a synchronous frmework such as Rocket is about 20x slower.

[1] https://www.techempower.com/benchmarks/#section=data-r20&hw=...

[2] https://www.techempower.com/benchmarks/#section=data-r20&hw=...

A context switch takes around 0.2µs between async tasks, versus 1.7µs between kernel threads. But this advantage goes away if the context switch is due to I/O readiness: both converge to 1.7µs.

This is a big surprise.

If you look at the Techempower web benchmark [1], the performance of actix-web is about 20x higher than that of Rocket.

The common explanation is that actix-web is async and hence much faster than Rocket which relies on kernel context switching.

But if Rust async and kernel thread has the same switch time as shown by this benchmark, then why is actix-web so much faster than Rocket?

[1] https://www.techempower.com/benchmarks/#section=data-r20&hw=...

I remember reading about this a few years ago here. If I remember correctly back then the main selling point was that it used succinct data structure and it was only the compression algo that was not open source - everything else was.

But now when I look at the new repo and the online doc there is no mention of succinct data struct anywhere.

Also, the benchmarks back then claimed 10x or more faster than RocksDB. Now the performance claim is much more modest.

Does that mean TerarkDB no longer uses succinct data struct? Or are you just open sourcing a lower-end version of the software without the secret sauce?

Can you talk about what makes TerarkDB faster than RocksDB?

How big is your largest customer though?

You can easily buy a machine with several TB of RAM, several hundreds of TB of SSDs in RAID giving you millions of IOPS, quad-socket 256 cores. How likely is it that a single machine cannot handle a single customer?

I read that Quibi does not own its content. The content creators do.

I don't understand. How could Quibi possibly spend $2B in 6 months when it doesn't even own its content. What exactly did it spend those $2B on?

As of July 2020, I’d suggest picking actix-web if you are writing a production API in Rust.

What about server rendered websites that aren't API? Which framework would you recommend in this case?

Is Fractal Tree Index what is used in TokuDB?

While it sounds nice in theory, in practice it was very slow. The only thing TokuDB good at was bulk inserts. Other than that both writes and reads were slower than B+ tree.

I think eventually TokuDB just faded away.

Is there any other implementation of COLA/Fractal Tree that fares better?

I'm not familiar with casual gaming. How is Zynga doing these days?

I remember them from the Farmville days when Facebook billed itself as an "application platform" and Farmville was the poster child of that.

Facebook hasn't talked about "application platform" for years now and I don't know anyone still playing games on Facebook. So how is Zynga still a thing?

we store data very efficiently with minimal overhead.

Do you use encoding like delta-of-delta timestamps or something similar?

One interesting consequence is that in many cases, we don't require indexes where other databases do.

I don't follow. Why don't you require indexes where other databases do?

Thanks.