Solutions for systemic problems
Often performance bottlenecks are caused by your system architecture instead of something specific to a single function or storage structure.
Often performance concerns are related to communications. Communications arguably could cover everything in your application as there is always some level of communication in every process. However, this section will deal with general communication concepts and other architectural concerns.