Because Redis' database is stored exclusively in RAM, which is an order of magnitude more expensive than even SSD.
Also, long-term maintenance effort and costs would be substantially higher. (Redis persistent-to-disk options, namely AOF and RDB, are notoriously unreliable.) These issues would persist (ha) even with a clustered setup (actually, especially then.)
I've never heard of them being unreliable, and certainly not notoriously so. What sources do you have on this? My own impression formed from reading HN is that opinion around Redis is nearly entirely (almost cultish-ly) positive.
Not exactly true. There are things like "Redis on Flash" that redis.com offers for large sets of data. If you enable it, most of your data gets stored in a Flash memory and hence super cheap, in fact even cheaper than things like DynamoDB and stuff.
Probably surprisingly little. Also, the publicity HN brings is most likely orders of magnitude more valuable and that makes it much less important to try and optimise the service.
The pages are very light and the algorithms seem to be designed to be quite light, too.
Now, I know neither Arc nor the traffic stats, but I would not be surprised if one or two machines were able to serve entire traffic.
Do you have to look at the peaks and design for those?
(The hardware link accounts for this of course, but not sure the hardware scales linearly with average load, because the peaks may not scale linearly with average load)
You know... Hacker News is built with a pretty-obscure framework IIRC that is little-used elsewhere, and we're all about open-source. It would almost make sense to reimplement HN in something more common and then open-source it so that regular developers could make improvements.
I actually love the design of Craigslist. it works well enough for you to find what you're looking for (if it exists), but it does not invite you to linger afterwards.
I have to be honest, the 'craigslist of web forums' is the entire appeal for me. It's simple, fast, low clutter and in my opinion benefits from great moderation and a general involvement from the community to avoid treating it like a gutter. I could be suffering from limited imagination, but I'm not really seeing major opportunities for improvement. Change? Yes, for sure, lots of ways to change the site but I don't know how they would result in an outcome of improved community or experience.
I never said that. I said exiled disinformation breathers are polluting HN because they were systematically exiled everywhere else for their dangerous views.
Isn't it interesting in threads like these that no one ever seems to link to specific examples of their claims?
The commenter may not have quoted you the right rule, but their heart was in the right place. This thread is about building an HN clone, but you've taken it political.
You'll need to not want to do that if you want to continue participating on HN. Otherwise it's a matter of time.
You kind of did though. The website itself hasn't materially changed, so 'HN turning into Reddit' conversation isn't about the features of the application we're using here. It's always about some migration of 'undesirables' into the community.
To be honest, I find your foamy characterizations of the folks you're describing fairly toxic as well.
Fully agreed. I've noticed so many political bait comments in the past year or so, and loads of weasel-worded antivax misinformation. Some comments also seem to be trying to push subtle anti-science and anti-left stances, whereas before mostly people just stuck to the technical side of things.
As per usual, the all-trite ruins everything they touch.
> Please respond to the strongest plausible interpretation of what someone says, not a weaker one that's easier to criticize. Assume good faith. https://news.ycombinator.com/newsguidelines.html
Improvements welcome. The nicest part is how quickly you can iterate on a webpage. The production site pulls from github every 10 seconds, and everything reloads on demand, so I can just push new code to master and see the changes instantly.
(No need to push to github just to see changes locally, of course. Every time you reload, it checks whether any loaded files have changed.)
I kinda feel that I should point out that if you want to build a complex app on top of just redid you can as well use zeesql that I develop for exactly this reason.
Can someone speak more to this? I've also seen it stated that it's possible to use redis for durable data storage, is that really the case? What do you lose out on?
52 comments
[ 2.9 ms ] story [ 127 ms ] threadAlso, long-term maintenance effort and costs would be substantially higher. (Redis persistent-to-disk options, namely AOF and RDB, are notoriously unreliable.) These issues would persist (ha) even with a clustered setup (actually, especially then.)
I'm just checking if there is something I missed.
Maybe, but still very cheap. Unless you are talking about insanely high priced cloud services.
Something like Hetzner would provide you with 128GB of ram for 60 euros / month or 1TB of ram for around 500 euros / month.
The pages are very light and the algorithms seem to be designed to be quite light, too.
Now, I know neither Arc nor the traffic stats, but I would not be surprised if one or two machines were able to serve entire traffic.
(update: I mixed up M5 hosting company with AWS M5 instance types)
Half the posts are political, insidiously worded, and frankly toxic, now that they joined.
https://news.ycombinator.com/newsguidelines.html
The commenter may not have quoted you the right rule, but their heart was in the right place. This thread is about building an HN clone, but you've taken it political.
You'll need to not want to do that if you want to continue participating on HN. Otherwise it's a matter of time.
To be honest, I find your foamy characterizations of the folks you're describing fairly toxic as well.
As per usual, the all-trite ruins everything they touch.
It has bcrypt, HN's current CSS, and so on. We use it to manage our TPUs: http://www.tensorfork.com/tpus
Improvements welcome. The nicest part is how quickly you can iterate on a webpage. The production site pulls from github every 10 seconds, and everything reloads on demand, so I can just push new code to master and see the changes instantly.
(No need to push to github just to see changes locally, of course. Every time you reload, it checks whether any loaded files have changed.)
https://Zeesql.com
I should make it open source...
https://www.youtube.com/watch?v=OqCK95AS-YE
Either would have the generic disadvantages of:
- Dataset can't exceed available memory
- The general disadvantages of NoSQL vs SQL around queries, transactions, etc, if you're expecting relational type functionality
From my understanding, they do support sharding
There are also managed solutions that implement Redis with partial flash storage. Redis Enterprise and AWS ElastiCache both do this.
From what I saw, people think two times before doing `truncate table` but not that much with `FLUSHALL` in redis...
Also, I don't really see where the usecase would be as a permanent datastore compared to something like postgres.
It is more about writing backends generally, but in it he uses Redis as a primary database and walks through durability and scalability.
* MySQL for a datastore
* All rendering done server-side
* PHP for the language
* As little JavaScript as humanly possible, and only vanilla, no libraries or frameworks
* As few images as possible
An actual clone, no real value add. But it'd be fun to do, regardless.