Live data from Hacker News

Why I Built Litestream

litestream.io

51–60 of 178 posts

Re: Why I Built Litestream

#51
post #31

Earlier quoted context omitted.

we only have a single kitchen and it seems just above 200k is our ceiling for a single location. Expanding soon. we took down our revenue from indiehackers but somebody took a screenshot and posted on twitter of the stripe verified revenue. https://pbs.twimg.com/media/EXbNBVUX0AAotOo?format=jpg&name=...

Is that gross?

Looks to be. Still very impressive!

Re: Why I Built Litestream

#52

> Solutions such as Kubernetes tout the benefits of zero-downtime deployments To be fair, these features of k8s are nice to have. Is there a similar tool for running single node (i.e. ec2) instances that offers zero-downtime deploys? One way you could do it is run a EKS cluster with a single ec2 node running your single-node setup. You could get the benefits of k8s while still running the simple single-node arch

You can do zero-downtime deploys on a single node with tools like seamless[1]. That works for Go but I'm sure there are other options for other languages. I'm not sure if/how you can do it with a containerized workload on a single node though. I haven't tried that. [1] https://github.com/rs/seamless

Cool, hadn't heard of seamless. Something similar to this for other langs wrapped in a CLI with an integration with Digital Ocean/AWS/etc. could be valuable

Re: Why I Built Litestream

#54

Awesome! I built a side-business that runs completely on Crystal + SQLite. Very light, fast service and makes ~$200k/mo. I just cp my sqlite file to S3 every 2 hours. From my app, i have a page[1] where i can load any snapshot database saved on S3. I can backup at anytime too with a click, which i do before deployment. [1]: https://i.imgur.com/Ls1Tnxc.png

As a non-native speaker I struggle with "make". To me "make" for a side-business means "personal income" but it looks like you mean "revenue"?

If the side business makes $200k/mo, that usually means the revenue of the side business is $200k/mo.

Re: Why I Built Litestream

#55
> If you exceed the capacity of a single node, sharding your data can allow you to scale horizontally to multiple nodes.

It's so simple, just don't have a lot of data that doesn't need to interact with other data and your problem is solved!

/s

Re: Why I Built Litestream

#56

Earlier quoted context omitted.

Is this a public business? Would you mind sharing, if so?

We do local cookie delivery[1]. We run our own mapping software and have our own drivers so most of the software is internal facing. Talked about it on Indie Hackers podcast[2], where i briefly mention SQLite as well. [1]: https://cravecookie.com [2]: https://www.indiehackers.com/podcast/166-sam-eaton-of-crave-...

Dammit man, now I want cookies.

Re: Why I Built Litestream

#57

> Solutions such as Kubernetes tout the benefits of zero-downtime deployments To be fair, these features of k8s are nice to have. Is there a similar tool for running single node (i.e. ec2) instances that offers zero-downtime deploys? One way you could do it is run a EKS cluster with a single ec2 node running your single-node setup. You could get the benefits of k8s while still running the simple single-node arch

> From the kernel point of view, there is a only one socket with a unique listen queue. This socket is associated to several file descriptors: one in systemd and one in the current process. The socket stays alive as long as there is at least one file descriptor. An incoming connection is put by the kernel in the listen queue and can be dequeued from any file descriptor with the accept() syscall. Therefore, this approach actually achieves zero-downtime deployment: no incoming connection is rejected. [0]

systemd can be sufficient for a zero-downtime deployment.

[0] https://vincent.bernat.ch/en/blog/2018-systemd-golang-socket...

Re: Why I Built Litestream

#58
This is neat! I have a tool blacklite[1] that logs to sqlite, so using this I can export those logs automatically to S3 and keep persistent logs even if the instance goes away. I can see this being really useful for k8s and docker containers.

[1]: https://tersesystems.com/blog/2020/11/26/queryable-logging-w...

Re: Why I Built Litestream

#59
post #54

Earlier quoted context omitted.

As a non-native speaker I struggle with "make". To me "make" for a side-business means "personal income" but it looks like you mean "revenue"?

If the side business makes $200k/mo, that usually means the revenue of the side business is $200k/mo.

Another non-native speaker here. I was also confused by this wording.

Re: Why I Built Litestream

#60

Things are not quite that simple. You can't say "because my Go app serves a single request under no load in 50us, it will serve 20'000 per core under 100% load" you'd be surprised it will not. Modern machines are like a networked cluster themselves. You need to do a ton of work to tune both kernel and "hardware" parameters to identify bottlenecks with near-non-existing debugging tools. There is one truth here: we use…

That's a fair point. I've updated the post to read, "That translates to thousands of requests per second per core" instead of saying it's linear scaling. Thanks for the feedback!
Post reply on HN