Good web applications that we all use are about scale and there are very limited platforms (some say there are non) that exist out of the box that can give you that.
If a web application wants to get reasonable response times its a combination of the hardware they want to invest in and the optimization of their code in relation to the traffic the application is getting.
Its not that the technology is far behind at all. It's a different set of tools compared to enterprise applications that even at the largest enterprise will serve in a day less than a heavy traffic site serves in an hour.
Regarding what developers are (or aren't doing), its all up to the developers and the company they work in. I know that I know enough about how databases work (and how specific databases work) to be able to do quite a bit of the things a DBA can do, and if I don't, I simply read about it.
I think that a great developer has to touch every aspect of a web application starting from understand what is the needed hardware and how it works (knowing, for example, the performance vs. reliably issue of storage systems), how the operating system works and what tweaks can be done to boost its performance, how the protocols that are used works and what are the ways to optimize them (understanding, for example, how HTTP works and how HTTP caching works can make a dramatic effect), understand the runtime they are working in - if you are in PHP dig in and figure out how it works and what are the best practices for using it, the same goes for Java, .NET, Python, Ruby, etc.
You also need to measure everything, have base lines and comparison points so that you'll know where are your bottlenecks, what are the applications limits so that you'll know when to change development strategy in some components or to scale out to additional servers.
You also need to know about databases and how they scale to understand why you should avoid writing SQL statements with JOIN if at some point you want to scale to a point when you need to partition your database to multiple servers because you have reached your write block.
You should know how to optimize on the client side because your server can return results in under 100ms but the client may take time to render it because of the HTML quality you serve or the abundance of external resources you use and generate additional browser connections to load them.
So, to sum things up, keep and open mind and try to touch every aspect to get the bigger picture. It will make you a better developer writing better code due to a broader view of things.