Live data from Hacker News

The architecture behind a one-person tech startup

anthonynsimon.com

141–150 of 334 posts

Re: The architecture behind a one-person tech startup

#141
post #80

Earlier quoted context omitted.

cloud vendor lock-in fears are overblown. pricing and features will always be competitive between the big vendors. I suspect people waste a lot of time/money trying to be cloud agnostic. Real vendor lock-in is when you have decades of code written against an Oracle DB and you're getting charged outrageous Oracle rates and it would also cost a fortune migrate.

... a decade later: Real cloud vendor lock-in is when you have decades of code written against a [cloud vendor] and you're getting charged outrageous [cloud] rates and it would also cost a fortune migrate.[sic]

If anything, vendor lock-in is consistently underblown.

Re: The architecture behind a one-person tech startup

#142
post #133
post #28

My one-man-SaaS setup: - Static frontend hosted on Netlify (free unlimited scale) - Backend server on Google App Engine (connecting to Gcloud storage and managed DB via magic) I realize I'm opening myself up to vendor lock-in and increased costs down the road (if I even get that far), but I've wrangled enough Docker/k8s/Ingress setups in the past to know it's just not worth the time and effort for a non-master.

If your frontend is on CDN, how are you handling auth? Do you use Firebase for that?

I oversimplified a bit. I have a low-traffic "admin" interface that's rendered server-side. The people using that are my direct customers and are the only authenticated users (they auth in a traditional in-app way).

I also have a high(er)-traffic frontend on a CDN which is used by their customers. User writes there are purchases/payments handled by third(fourth?)-party SaaS.

Re: The architecture behind a one-person tech startup

#143
(Render founder) This is incredible work, and underscores the reason Render exists and is recommended by OP. Everything mentioned in the post is baked into Render already:

* Automatic DNS, SSL, and Load Balancing

* Automated rollouts and rollbacks

* Health checks and zero downtime deploys (let it crash)

* Horizontal autoscaling (in early access!)

* Application data caching (one-click ClickHouse and Redis)

* Built-in cron jobs

* Zero-config secrets and environment variable management

* Managed PostgreSQL

* DNS-based service discovery with private networking

* Infrastructure-as-Code

* Native logging and monitoring and 3rd-party integrations (LogDNA, Datadog, more coming this month!)

* Slack notifications

More at https://render.com.

Re: The architecture behind a one-person tech startup

#144
My one-person SaaS architecture with over 250k users:

* Flask + Flask-Login + Flask-SQLAlchemy [1]

* uWSGI app servers [2]

* Nginx web servers [3]

* Dramatiq/Celery with RabbitMQ for background tasks

* Combination of Postgres, S3, and DigitalOcean Spaces for storing customer data [4]

* SSDB (disk-based Redis) for caching, global locks, rate limiting, queues and counters used in application logic, etc [5]

I like how OP shows the service providers he uses, and why he decides not to self-host those parts of his infra. Also, there's a large up front cost involved for any stack (Rails, Django, k8s). I'd be interested in a more detailed writeup with configs, to try out OP's auto-scaling setup. My configs are linked in the gist below [2] for my non-auto-scaling Flask setup.

I spend about $4,000/mo on infra costs. S3 is $400/mo, Mailgun $600/mo, and DigitalOcean is $3,000/mo. Our scale/server load might be different, but I'm still interested in what the costs would be with your setup.

[1] https://wakatime.com/blog/33-flask-part-2-building-a-restful...

[2] https://gist.github.com/alanhamlett/ac34e683efec731990a75ab6...

[3] https://wakatime.com/blog/23-how-to-scale-ssl-with-haproxy-a...

[4] https://wakatime.com/blog/46-latency-of-digitalocean-spaces-...

[5] https://wakatime.com/blog/45-using-a-diskbased-redis-clone-t...

Re: The architecture behind a one-person tech startup

#145
post #121
post #80

Earlier quoted context omitted.

cloud vendor lock-in fears are overblown. pricing and features will always be competitive between the big vendors. I suspect people waste a lot of time/money trying to be cloud agnostic. Real vendor lock-in is when you have decades of code written against an Oracle DB and you're getting charged outrageous Oracle rates and it would also cost a fortune migrate.

Vendor lock-in depends heavily on exactly what vendor you’re using and especially if it’s OSS API hosted on the vendor or a vendor API. If you use something like AppEngine to run a Flask or Django app, you will not be locked in much because those are open source libraries with well known runtime options elsewhere. Same to some extent with any sort of managed OSS database. If you use something like Cloud Datastore or…

Cost involved really depends upon how you did it and the differences between what you're migrating to/from.

If all database access is compartmentalized and the two datastores are fairly similar then it can be pretty cheap. If you didn't compartmentalize it will be expensive. If their characteristics are different enough then your compartmentalization will probably fall down in some cases and it will probably be expensive, although not as expensive if it weren't compartmentalized.

Re: The architecture behind a one-person tech startup

#146
post #74

Earlier quoted context omitted.

I wouldn't say Netlify has free unlimited scale. There are some limitations, especially the data transfer limit of 100GB.

That's right, I'm exaggerating. At current rates I'll hit that limit at 7.5MM pageviews/month. I've also paid for extra builds once or twice in the past (automatically charges a few dollars when you cross the build time limit), and I pay them $9/mo for analytics.

Free unlimited scale does exist though. Cloudflare has no bandwidth limit for free plans, and it pairs well with App Engine.

Re: The architecture behind a one-person tech startup

#147

This is probably not the best place to ask this question, but as a solo founder or just to reduce costs/time are there some standard free software packages that are used when creating sites? For example most sites need a user sign up mechaism, a authN and authX mechanism to gate access to different pages. Are there open source projects that provide this? Or do site owners develop these from scratch every time?

This looks pretty good if using Laravel: https://spark.laravel.com/

Re: The architecture behind a one-person tech startup

#148
post #133
post #28

My one-man-SaaS setup: - Static frontend hosted on Netlify (free unlimited scale) - Backend server on Google App Engine (connecting to Gcloud storage and managed DB via magic) I realize I'm opening myself up to vendor lock-in and increased costs down the road (if I even get that far), but I've wrangled enough Docker/k8s/Ingress setups in the past to know it's just not worth the time and effort for a non-master.

If your frontend is on CDN, how are you handling auth? Do you use Firebase for that?

[deleted]

Re: The architecture behind a one-person tech startup

#150
post #74

Earlier quoted context omitted.

I wouldn't say Netlify has free unlimited scale. There are some limitations, especially the data transfer limit of 100GB.

That's right, I'm exaggerating. At current rates I'll hit that limit at 7.5MM pageviews/month. I've also paid for extra builds once or twice in the past (automatically charges a few dollars when you cross the build time limit), and I pay them $9/mo for analytics.

How much is 1MM? I'm unfamiliar with that suffix.
Post reply on HN