I don't like the characterization of "if performance is important, Blazor server is the best bet" because "performance" here can have many meanings. Depending on your meaning, Blazor WebAssembly may actually be the better choice. I think what you meant by "performance" here is initial page load time, in which case, yeah, Blazor Server will load up faster, initially. But that's only a (small) part of the overall experience. For most other application functionality, Blazor WebAssembly will have much better performance, since most of the processing is happening directly on the browser itself, without the latency of sending an operation to the server and waiting for the server's response to return over the internet for *every single operation* in the UI. The typical Blazor Server experience on the UI only approaches that of Blazor WebAssembly when you have near perfect network conditions. Under any other conditions, WebAssembly performance is noticeably snappier.
Nice! Yeah you nailed it. I was referring more to load times. So I could probably have framed that better. When you're staying within that self-contained context of a WASM app, performance will be much better. Thanks for picking that up 👍
I would also argue that the perceived “performance” downside of WASM app is exaggerated . People will happily download apps in the hundreds of MB from app stores without batting eyelid. A Blazor WASM app will seem snappy by comparison.
We are using Blazor server in production, and found that actually using it with a "distant server" or a choppy internet connection is not good at all; like almost unusable. Blazor Server does not manage simultaneous SignalR connections very well (it will just randomly boot people off, giving them that disconnected screen showed in this video) and the difference between in-development performance and in-production performance is very noticeable. Edit: the resolution to the blazor server trouble is mostly just larger server resources and multi-region hosting, but I definitely think WASM is more performant and much lower cost
You can do it via visual studio. If you have an app service in Azure, you can create a publish profile in VS and do it from there. www.syncfusion.com/blogs/post/deploy-blazor-application-in-azure-app-service.aspx
I did not understand how can you compare hosting blazor server on your local machine and call it quick. In real life most pages would be loaded and connecting to a machine hosted in another continent or country, the latency will catch on. You also made it seem like WASM is not meant to make complex API calls, you should be more specific with such things.
I don't like the characterization of "if performance is important, Blazor server is the best bet" because "performance" here can have many meanings. Depending on your meaning, Blazor WebAssembly may actually be the better choice. I think what you meant by "performance" here is initial page load time, in which case, yeah, Blazor Server will load up faster, initially. But that's only a (small) part of the overall experience. For most other application functionality, Blazor WebAssembly will have much better performance, since most of the processing is happening directly on the browser itself, without the latency of sending an operation to the server and waiting for the server's response to return over the internet for *every single operation* in the UI. The typical Blazor Server experience on the UI only approaches that of Blazor WebAssembly when you have near perfect network conditions. Under any other conditions, WebAssembly performance is noticeably snappier.
Nice! Yeah you nailed it. I was referring more to load times. So I could probably have framed that better. When you're staying within that self-contained context of a WASM app, performance will be much better. Thanks for picking that up 👍
I would also argue that the perceived “performance” downside of WASM app is exaggerated . People will happily download apps in the hundreds of MB from app stores without batting eyelid. A Blazor WASM app will seem snappy by comparison.
We are using Blazor server in production, and found that actually using it with a "distant server" or a choppy internet connection is not good at all; like almost unusable. Blazor Server does not manage simultaneous SignalR connections very well (it will just randomly boot people off, giving them that disconnected screen showed in this video) and the difference between in-development performance and in-production performance is very noticeable.
Edit: the resolution to the blazor server trouble is mostly just larger server resources and multi-region hosting, but I definitely think WASM is more performant and much lower cost
Kindly guide me to select the better tool for server-side rendering blazor or react?
blazor
how do you deploy a Blazor Server App?
You can do it via visual studio. If you have an app service in Azure, you can create a publish profile in VS and do it from there. www.syncfusion.com/blogs/post/deploy-blazor-application-in-azure-app-service.aspx
I did not understand how can you compare hosting blazor server on your local machine and call it quick.
In real life most pages would be loaded and connecting to a machine hosted in another continent or country, the latency will catch on.
You also made it seem like WASM is not meant to make complex API calls, you should be more specific with such things.
Helpful, Thanks @Nick
Thanks!
Great video, helped me decide for a new implementation
Great to hear!
What i heard was basically a biased uninformed comparison towards blazor server.
Sorry you feel that way. Thanks for watching nonetheless :)
This video doesn't help
Blazor United in .NET 8
Great suggestion!