It's often not actually more complex, it's simpler. With Cloudflare Workers, for example, you don't think about regions, availability zones, provisioning resources, or cold starts. You just write code, and it can scale from one request per second to thousands without any thought or work on your part, partially because of how its designed and partially because it's scaled across so many locations and machines.
Except you need to do it in a totally new paradigm (serverless) where you can't require any `npm` packages and you can't query your database unless it's over the `fetch()` API.
Serverless are not all the same.
Cloudflare uses V8 and you can't require npm packages, right.
Vercel and many other implementations use NodeJS and you Can require npm packages.
if it's a real issue and you have to issue lots of subrequests, then you don't really get advantage from all Cloudflare micro-optimisations.
In such situation I would suggest to look for other Serverless providers, or maybe traditional approach works better in such case