Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
ngrilly
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
69 ms
·
901.
▲
by
ngrilly
8y ago
> Live host migrations and BEAM sometimes are not friends. Two weeks ago, we discovered a defect in GCP live migrations that would cause a 80-90% performance degradation on one of our services during source-brownout migration phase. I th
902.
▲
by
ngrilly
8y ago
Don't you miss jQuery set-oriented operations, like $('.widget-item').removeClass('.selected')? With querySelectorAll, you have to iterate over all the matching elements. Do you use some shortcut?
903.
▲
by
ngrilly
8y ago
Please change your username, which is misleading (makes think you represent Google Cloud Build in some capacity). @dang
904.
▲
by
ngrilly
8y ago
Thanks for the links. This is definitely great engineering. I also recommend this short presentation of ZGC: https://dinfuehr.github.io/blog/a-first-look-into-zgc/
905.
▲
by
ngrilly
8y ago
This is exactly what I'm wondering. If an attacker finds a way to reverse the hashids, then he can increment the ID and scan the resources.
906.
▲
by
ngrilly
8y ago
The hashids website has been updated since the cryptanalysis was published. For example, the old website used the words encrypt/decrypt instead of encode/decode, which was confusing.
907.
▲
by
ngrilly
8y ago
Interesting! I think a 1 second downtime when deploying a new version of the backend is tolerable if the app is a single-page application, because the app can implement a retry logic client-side. This is possible only if the backend can be
908.
▲
by
ngrilly
8y ago
Thanks for sharing your setup here. Go and SQLite are great! I have a few questions :-) Is the Go service directly accessible from Internet, or is it hosted behind a reverse proxy? When you deploy a new binary, is there a small downtime bet
909.
▲
by
ngrilly
8y ago
Thanks for sharing your stack here! How do you deploy your backend containers without downtime? Do you host your Node app and PostgreSQL on the same machine? I understand your frontend is hosted on Netlify and your backend on DigitalOcean:
910.
▲
by
ngrilly
8y ago
Do you think it's correct to claim that hashids are not reversible, if the attacker is unable to choose the plain text to be encoded? [1] [1] In other words, the sequential IDs are generated server-side and the attacker has not control
911.
▲
Cryptanalysis of hashids (2015)
(carnage.github.io)
25 points
by
ngrilly
8y ago
|
13 comments
912.
▲
by
ngrilly
8y ago
> The new low-latency Java GCs are more sophisticated than Go's, and deliver pauses that are on the order of OS-caused pauses. ZGC, whose explicit goal is to be a low latency GC for Java, has a goal of 10 ms max pause time, which se
913.
▲
by
ngrilly
8y ago
I'm not really sure what you're trying to prove here. Java is definitely a great platform and has a cutting-edge GC. Nobody contests that. Go's GC is another point in the design space, starting with different constraints (low
914.
▲
by
ngrilly
8y ago
> The new low-latency Java GCs As you wrote, they are new, and weren't available when the decision was made for the Go GC. > The reason Go was able to achieve low latency with a relatively simple design is because 1. it suffers a
915.
▲
by
ngrilly
8y ago
> The most important point, though, is that you don't know whether the hypothesis that Go wouldn't benefit from generational GC is true until you test it. Nobody has tested it. I agree. But you would probably agree it would be
916.
▲
by
ngrilly
8y ago
> Otherwise it seems to me that the Java/C# model is the best design for most tasks. This is discussed in the article (basically, Google needed low latency servers): « If you want 10 answers ask for several more and take the first
917.
▲
by
ngrilly
8y ago
cgo doesn't copy the stack to a "bigger stack" when calling a C function. It just uses another stack, dedicated to cgo, and disallows passing pointers into the stack: https://github.com/golang/go/iss
918.
▲
by
ngrilly
8y ago
You wrote that Unity FFI is much faster than cgo. I'd be interested in knowing more about this. Why is it faster? Can you share a link to some reference material and/or benchmark?
919.
▲
by
ngrilly
8y ago
> Additionally, the performance of cgo can cause problems when linking to libraries like Vulkan that can't effectively be lowered into syscalls. Agreed. But you also ask for very fast memory allocation, which implies a bump allocato
920.
▲
by
ngrilly
8y ago
> This is not due to GC design but to language semantics (value types, which aren't yet available in Java). The fact that Go has value types helps a lot, but the latency inferior to 0.5 ms is mainly the result of GC design, as expla
921.
▲
by
ngrilly
8y ago
> The write barriers you need reduce throughput, but they're ordinarily counterbalanced by the throughput gains you get from bump allocation. Bump allocation significantly increases throughput only if you allocate a lot. If you don&
922.
▲
by
ngrilly
8y ago
"Idiotic culture" is a bit harsh.
923.
▲
by
ngrilly
8y ago
A "consumer account"? I don't know what you're talking about. This is Google Cloud, not Spotify. I don't know a lot of "consumers" spending hundreds of dollars, thousands of dollars or more per month on Go
924.
▲
by
ngrilly
8y ago
Now we're waiting for Aphyr to test this works as intended :-)
925.
▲
by
ngrilly
8y ago
I know Lua and I use it sometimes (for example in Redis). But I don't want to include a full Lua interpreter in my program just to parse a configuration file. It's overkill in my opinion :-)
926.
▲
by
ngrilly
8y ago
I didn't have. But how do you parse it without Lua? Is a parser library available for mainstream languages?
927.
▲
by
ngrilly
8y ago
Interesting, but, as you wrote, it's a bit too much complex, and there is too much syntactic variations for my taste.
928.
▲
by
ngrilly
8y ago
I feel like I'm missing something. I see two layers of Raft consensus at play here: one at orchestrator's level, and another at Consul's level. Would it be possible to manage consensus at only one level?
929.
▲
by
ngrilly
8y ago
The answer is in version 1.2 of the spec: > The primary objective of this revision is to bring YAML into compliance with JSON as an official subset.
930.
▲
by
ngrilly
8y ago
JSON + comments + trailing commas + naked keys + multiline strings would be a great alternative. Maybe something like JSON5.
More ›