Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
jhgg
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
20 ms
·
181.
▲
by
jhgg
6y ago
We don't have an open req for our chat infra team right now which heavily uses Elixir. We are quite committed to Elixir, actually, we were interviewed by José Valim about how we use Elixir :) https://elixir-lang.org/blo
182.
▲
by
jhgg
6y ago
Discord does not sell user data. We've stated this many times, unequivocally. Our monetization puts the user as the customer, not say, the product to be sold to advertisers (read: other social networks.) We think that this alignment of
183.
▲
by
jhgg
6y ago
I'm sensing a trend in the replies here, which is that this was too low a pay out, perhaps we should have a discussion about what is a worthy payout, because we based this off of what we saw other companies paying out. Our bug bounty p
184.
▲
by
jhgg
6y ago
No. The vast majority of our updates are just new features & bugfixes of existing features.
185.
▲
by
jhgg
6y ago
Hi all! Discord Employee here that was involved in the remediation of this exploit! I just wanted to clarify with a timeline, and explanation as to why we had context isolation disabled! 9:21 PM on July 16, 2020 we received a very detailed
186.
▲
by
jhgg
6y ago
Once rearchitected there was negligible performance hit. But context bridge etc... basically requires cloning all objects that need to be passed to the renderer/browser window from another context (the native module). If your message p
187.
▲
by
jhgg
6y ago
Enabling contextIsolation was a lot of work, and required a re-working our native modules (around voice and video) while still maintaining performance. Getting everything to work in a context isolated world was a many month effort, which ha
188.
▲
by
jhgg
6y ago
We "use" traffic director at work. We thought we'd be able to use it for service discovery across our mesh, but it does way more than that in problematic ways that leak internal google abstractions :< I asked one thing of
189.
▲
by
jhgg
6y ago
discord is also on that list - although we have not spoken much about it yet!
190.
▲
by
jhgg
6y ago
Why the indirection in the pricing page. Like, if a unit is 1,000 searches/month, why not just put that in the matrix. Free = 10,000 searches/month. Standard = $1 per 1,000 searches. ... Pay as you go: 1,000 - 10,000 searches = F
191.
▲
by
jhgg
6y ago
Discord's first cohort of users came from the final fantasy XIV subreddit - after a friend of the cofounder posted there after trying out the app. It's been all uphill from there.
192.
▲
by
jhgg
6y ago
This product offering is a bit confusing. Not that I don't get the offering - but that the marketing around it confuses me. It's designed for forwarding applications for development purposes? But then why the in-depth monitoring a
193.
▲
by
jhgg
6y ago
You can kill them. Just like processes on your computer!
194.
▲
by
jhgg
7y ago
You are looking for Druid: http://druid.apache.org/
195.
▲
by
jhgg
7y ago
There are two fixes listed. One is to improve client behavior to reduce the likelihood of an incomplete request to be handled. The other is to fix the crash bug that occurred when an incomplete request is handled. The fix would be incomplet
196.
▲
by
jhgg
7y ago
In practice, for our service, most of our CPU time is not spent in data mutation, but rather networking and serialization (this is btw, the same conclusion Redis came to when they added "multi-threading".) You can scale-out by run
197.
▲
by
jhgg
7y ago
Assuming only one thread at a time needs to access the LRU cache (not hard with the shared-nothing message passing architecture which we employ here), the lifetime of the object being checked out from the cache is able to be understood at c
198.
▲
by
jhgg
7y ago
I think this is a statement that is ignorant to our development efforts, and how our team is staffed, and what our objectives are. First and foremost, we do care deeply about desktop performance. We shipped this week a complete rewrite of o
199.
▲
by
jhgg
7y ago
A lot of the startup cost right now is in our really ancient update checker. There are plans to rewrite all of this, now that we understand why it's bad, and have some solid ideas as to what we can do better. I do think it's reaso
200.
▲
by
jhgg
7y ago
When we investigated, there was no way to change that that we could find - barring compiling go from source (something we could have done, but wanted to avoid.)
201.
▲
by
jhgg
7y ago
More people at our company know Rust than Kotlin. It's used across multiple teams (from our game SDK, native encoder/capture pipeline, chat infra team for Erlang rust NIFs.) where as Kotlin is only used by our android team. We are
202.
▲
by
jhgg
7y ago
It was perhaps too deterministic. What's not mentioned in the blog is that after running for long enough, the cluster would line up it's GCs, and each node would do the 2 minute GC at exactly the same time causing bigger spikes as
203.
▲
by
jhgg
7y ago
tokio 0.1 was definitely less efficient, when we compare go to 0.2, tokio uses less cpu consistently, even when compared to a cluster of the same size almost a year later with our growth over the time since we switched over.
204.
▲
by
jhgg
7y ago
Correct. This is internal time it takes to process the message. Since once a node is "warm" thanks to their large caches, it's mostly in memory operations and queueing for persistence which happens in the background.
205.
▲
by
jhgg
7y ago
This blog post perhaps is a bit "after the fact" we had made the switch over mid 2019, and wanted to try out rust as well for services like this, due to adoption elsewhere in the company. Also, after upgrading between 4 golang ver
206.
▲
by
jhgg
7y ago
Your reply misses the point. We were already doing so few allocations that the GC only ran because it "had to" at every 2 minute mark. The issue was the large heap of many long lived objects.
207.
▲
by
jhgg
7y ago
checked in objects in a sync pool gets cleaned up on GC. It used to clean the whole pool, but now I think it does half each GC cycle. If you want to say "objects checked in should live here forever and not free themselves unless I want
208.
▲
by
jhgg
7y ago
This is one of multiple, we did not blog about this one, but switching a Python http service for analytics ingest that was purely CPU bound to rust resulted in a 90% reduction in compute required to power it. However, that's not too in
209.
▲
by
jhgg
7y ago
This is a bit unclear. The root map is still a hash map, but it's a "map of maps" the inner map is a BTreeMap - this is for memory efficiency, as the inner map is relatively smaller and we wouldn't have to deal with the
210.
▲
by
jhgg
7y ago
This transport mode is also publicly documented here: https://discordapp.com/developers/docs/topics/voice-connecti...
More ›