I was (again) reading thru Roy Fielding’s Ph.D dissertation. In his discussion about internet scalability, he describes “anarchic scalability” very well, that is more relevant today than then !
Quoting Roy (I do not think I can do any better)
“Most software systems are created with the implicit assumption that the entire system is under the control of one entity …
… such an assumption cannot be safely made when the system runs openly on the Internet. Anarchic scalability refers to the need for architectural elements to continue operating when they are subjected to an unanticipated load, or when given malformed or maliciously constructed data, since they may be communicating with elements outside their organizational control. The architecture must be amenable to mechanisms that enhance visibility and scalability. ..
… clients cannot be expected to maintain knowledge of all servers. Servers cannot be expected to retain knowledge of state across requests. …
… particularly newsworthy information can also lead to “flash crowds”: sudden spikes in access attempts as news of its availability spreads across the world.
… multiple organizational boundaries implies that multiple trust boundaries could be present in any communication “
You may also like Maier & Rechtin’s work on “collaborative systems” or “system of systems” which also deals with assumptions of anarchic scalability.
http://www.infoed.com/Open/PAPERS/systems.htm
Comment by Stu — September 24, 2008 @ 5:47 am |