Web Architecture 101
31–40 of 49 posts
Re: Web Architecture 101
#32I'd love to see more tutorials / examples of implementing some of these concepts. Maybe I'm looking in the wrong place, but most tutorials I see are just super simple apps and don't deal with load balancing, services, data pipelines etc. For people who are working in non-tech jobs but teaching themselves programming so they can build useful tools for themselves, colleagues and customers, I think there's a big gap in…
I too am in great need of things like that. I'm a mobile dev developing an app that I think I'm going to quit my job for to work on full time. I'm 33 and in over a decade of doing mobile (and front-end web) programming I've never worked on a personal project that showed as much promise as this one has for me, both financially and from a fulfillment standpoint. However the prospect of wrangling the back-end and all th…
For learning web app APIs all I did was search Google Scholar for 'API design' and read whatever was available. Joshua Bloch has a good paper on API design. As for scaling, containers, concurrency ect look at Elixir w/Phoenix framework instead, or Erlang w/Yaws and just run it on a cheap FreeBSD comanaged box or deploy Phoenix to Heroku. BEAM will take care of the scaling. There's books around https://pragprog.com/book/lhelph/functional-web-development-...
Re: Web Architecture 101
#33Re: Web Architecture 101
#34Earlier quoted context omitted.
I'm a big fan of DDIA (I have a copy in front of me right now), but the topics covered in DDIA are much more around distributed systems and databases, in short "data architecture", i.e. batch, streaming, derived data, transactions, consistency, etc. The article above is more about "web architecture". There is some overlap but DDIA largely doesn't really cover the same topics.
Any other books you'd recommend that come closer to fully covering the topic this post discusses?
Re: Web Architecture 101
#35I'd love to see the initial diagram grown step by step. You don't start out this way and it can be extremely informative to see which bits get added when.
Re: Web Architecture 101
#36Re: Web Architecture 101
#37Earlier quoted context omitted.
I too am in great need of things like that. I'm a mobile dev developing an app that I think I'm going to quit my job for to work on full time. I'm 33 and in over a decade of doing mobile (and front-end web) programming I've never worked on a personal project that showed as much promise as this one has for me, both financially and from a fulfillment standpoint. However the prospect of wrangling the back-end and all th…
Nah, don't let that discourage you. You can probably start with a Postgres backend that will serve as your db, full text search, data warehouse, and even job queue. Load balancers in front of your stack are available from aws, etc. and are easy to set up. The rest, like a caching redis server, actual job queue, etc. you can add as you go if it becomes needed. Some language stacks let you run async operations and queu…
Re: Web Architecture 101
#38Re: Web Architecture 101
#39Earlier quoted context omitted.
I'm guessing, but IMO when you're dealing with load balancing, services and data pipelines you're at a scale where you should be able to hire qualified people to do the job so the docs are geared towards that audience.
You're probably right re load balancing, data pipelines and some services, but i think security is important regardless of scale, esp if it's an enterprise app. Even simpler concepts like structuring and deployment of larger apps, database migration, creating dev, staging and production environments, test development etc would be really useful. These things are important even at low scale, and generally absent from t…
Re: Web Architecture 101
#40Earlier quoted context omitted.
Nah, don't let that discourage you. You can probably start with a Postgres backend that will serve as your db, full text search, data warehouse, and even job queue. Load balancers in front of your stack are available from aws, etc. and are easy to set up. The rest, like a caching redis server, actual job queue, etc. you can add as you go if it becomes needed. Some language stacks let you run async operations and queu…
Was about to write this exact reply. A single database and web server goes surprisingly far.