Tuesday, March 13, 2012

SOA Tips

I learned some tips about implementing service oriented architecture by experiencing the difficulties that emerged because we didn't care about them.


A. SOA does not mean that you're not going to do object oriented design.

  • In order to avoid complexity, you should design the objects in your business domains.

  • If you do not, SOA eventually becomes procedural programming. You call methods from the client one by one.


  • B. Each client should call only one service method to do one job. Otherwise:

  • Round trip increases: cost of opening a connection from client and sending data through network is much much more than you think. Doing it multiple times for a single job makes your software incredibly slow.

  • Because services run stateless (at least our implementation does so) every time you get a call at the service, you instantiate all the data to do your job again and again. Take all the data you need to do a job, then do it at once.

  •