Hi there, lots to discuss here
- Power Pages are meant for external users, typically users would sign in using b2c identities (Entra External ID for example) or other Open ID based protocols
- licensing on Power Pages is usually license packs (100 pack authenticated users / etc)
- you can also use Power Pages for internal users using Entra ID as authentication + your regular Power Apps licenses (no issues on this)
- Code Apps are internal users only, and users need to sign in using Entra ID as it's SSO
- Code Apps are not a backend services engine - it is basically an app that users will interact with, think of it as the new Canvas Apps
Power Automate x Azure Functions x Dataverse Plug-ins
- if your flows are triggered by a Dataverse event, I would consider moving the more complex ones to Dataverse plug-ins, you write them in c# and have access to the state of the record pre/post the changes, you can make them sync or async, there are lots you can do with plug-ins.. they are also solution aware so you are able to deploy them easily enough
- if they are triggered via Power Pages js, I would consider moving them to the new server-logic, they happen server side, you code using JS, they also respect Table Permissions
- Azure Functions are great, but as you know yourself, they are outside the power platform, so you would have to deploy them separately, they are still great additional components, but if what you needs is within Dataverse, I would consider the options above
Please let me know if you need any more info