I am answering based on what was asked. It's talking about having servers in different hosting. The other answers say things that make sense in a hosting with different servers. They are correct for the scenarios that resolved to respond, not to the scenario of the question.
For me the question makes it clear that the separation is only occurring because they did not find a place that would provide everything together.
Depends on what you consider normal. Most sites are very simple and need a very simple structure. For example, the site that actually needs Redis is rare.
It is very rare to find any hosting that offers SQL Server and not ASP.Net. Many offer both and Redis (which I doubt is necessary).
This structure even works, but will generate traffic between the hosting, generating costs, which is not ideal and will greatly increase the response latency of the site. The more access you have, the more you will have difficulty dealing with a totally decentralized structure.
There is no way to perform better by having services that are dependent on each other in different physical locations. This will only generate more latency, with no gain.
Undoubtedly having the distributed load can give better performance than having everything on one server. But only if the server is overloaded, otherwise it will only add latency with no gain. Just measuring to be sure when to separate servers.
If the option is to have separate servers on the same network, then the gain may be more interesting, but only in cases of high access volume. If the load is small, adding servers with dependent services to each other, even on the same network, will certainly add latency, but small and acceptable because the volume requires this.
There is still a possibility to use different datacenters to increase the availability time, after all a datacenter can leave the air. But if you do this, you should have full copy of all the components in the two datacenters . That is, you will have one or more servers in each of them containing the 3 services reported: SQL Server, Redis, ASP.Net (probably an IIS).
Even if you are thinking about load distribution, this has to be an engineering job, not a road accident.
Possible is, but I would not recommend doing this. It's more complex and more costly.
Look for a location that meets all your needs. Azure, for example, answers. Not that I'm recommending.
You can pick up an instance where you can put the 3 services together or you can hire the separate services (it usually gets a lot more expensive).
This site, for example, which is an example of a very high volume site has its own servers and organizes its structure according to its need, they only use a second datacenter as a mirror of the regular structure , do not separate each service into a different hosting. They separate services on different servers because this is one of the most accessed sites in the world.
Does your need look like StackOverflow? If not, go for the simple. Go for what you're used to. Only create complexity in the system when the need arises.