Monday, February 11, 2008

Thin Server Architecture

This is from a talk I gave at Stockholm's first Web Monday, last week.

In it, I try to describe the benefits of putting the client on the client and reducing complexity on the server.
The highlights are, as always, to try to make things as simple as possible, but no simpler :)



Cheers,
PS

8 comments:

Givan said...

I agree, but there is a small problem, all your "presentation code" javascript is exposed (I know you can minify, pack etc but still exposed).
And also data fed to the client can be exploited, somebody can request the XML or JSON or whatever and use that information directly.
Of course there are advantes and disadvantages with each way of doing things.

Peter Svensson said...

@givan: As I stated - the security must stay on the server. That's not an issue.

Also, if you're referring to the JSON cross-domain exploit it is only usable if you're using unshielded JSON, which now even Google has solved :)

There is no disadvantage doing it my way :)

Sam M said...

There is one thing I don't get. If your client is making all these AJAX calls to the server to get "raw data", do not the URLs still need to mapped in some way to the business logic? Isn't there still a need for some controller pattern (and therefore, possibly a framework) on the server side? Or did I misunderstand how you set up RESTish server-side code? Do you really just mean "no templating" on the server side? Or really "no more web frameworks"?

Peter Svensson said...

@sam m: You are correct, of course. What I meant was, as you say "no more web frameworks". Frameworks are a must and I really like Spring (without the MVC), Tapestry done right and Sling, for example.

The whole TSA/SOFEA idea (expropriating my colleague Ganesh's much more beautiful idea with excuses) can be reduced to putting the client in the browser and not generate the view on the server.

Anything beside that (in my opinion, and again, one might be very much stricter here) is up for grabs.

Cheers,
PS

mike 2.0 said...

As I stated in my most recent project, still in development:
"Furthermore, reflecting on the way most of sites still work and the AJAX advances, I wonder why we still use this absolutely non-sense model of having a pretty stupid browser doing almost nothing in a powerful idle PC or laptop, while a huge burden is imposed on web servers, which in many (most of) cases aren't that powerful as Amazon's, Google's or Microsoft's web farms, and always are a bottleneck."
You can see a complete example of yr approach at yes4best.com ( still early beta ). Fast, $100/mth hosting at Mosso ...

Peter Svensson said...

@Mike 2.0 - Nice site! I lost you address in the anon chat. Please mail me again with it so we can strike up a real conversation. Thx.

Timo Paschke said...

It seems that the presentation is not available any more. Could you please give it a check and maybe upload it again? Thanks in advance, Timo

Peter Svensson said...

Wow, this was quite some time ago, but for what it's worth, here's the old presentation again;

https://docs.google.com/presentation/pub?id=1A6Lm1I4nGE37DNrLeTxjh60Klc0dViFQPEDkVE3NSmE&start=false&loop=false&delayms=3000