愿君学长松,慎勿作桃李。这篇文章主要讲述Application Architecture Determines ApplicationPerformance相关的知识,希望能为你提供帮助。
?
Application Architecture Determines ApplicationPerformanceRandy Stafford
【Application Architecture Determines ApplicationPerformance】AppliCATion ARCHiTECTuRE dETERMinES application performance. That might seem rather obvious, but real-world experience shows that it’s not. For example, software architects frequently believe that simply switching from one brand of software infrastructure to another will be sufficient to solve an application’s performance challenges. Such beliefs may be based on a vendor’s benchmark trumpeting, say, 25% better performance than the closest com- petition’s. But if the vendor’s product performs an operation in three milli- seconds while the competition’s product takes four milliseconds, the 25% or one-millisecond advantage matters little in the context of a highly inefficient architecture at the root of an application’s performance characteristics.
In addition to IT managers and vendor benchmarking teams, other groups of people—vendor support departments and authors of application performance management literature—recommend simply “tuning” the software infrastruc- ture, by fiddling with memory allocations, connection pool sizes, thread pool sizes, and the like. But if the deployment of an application is insufficiently architected for the expected load, or if the application’s functional architecture is too inefficient in its utilization of computing resources, then no amount of “tuning” will bring about the desired performance and scalability characteris- tics. Instead, a re-architecting of internal logic or deployment strategy, or both, will be required.
???10 97 Things Every Software Architect Should Know
?
??In the end, all vendor products and application architectures are constrained by the same fundamental principles of distributed computing and underlying physics: applications, and the products they use, run as processes on comput- ers of limited capacity, communicating with one another via protocol stacks and links of nonzero latency. Therefore people need to appreciate that appli- cation architecture is the primary determinant of application performance and scalability. Those quality attributes cannot be miraculously improved with some silver-bullet switch of software brands, or infrastructure “tuning.” Instead, improvements in those areas require the hard work of carefully con- sidered (re-)architecting.
Randy Stafford is a practicing software professional with 20 years’ experience as a developer, analyst, architect, manager, consultant, and author/presenter.
Currently for Oracle’s middleware development A-Team, he engages globally for proof-of-concept projects, architecture reviews, and production crises with diverse customer organizations, specializing in grid, SOA, performance, HA, and JEE/ORM work.
推荐阅读
- Android 带清除功能的输入框控件EditTextWithDel
- Android自动化测试探索
- jQuery中的append()和prepend(),after()和before()的差别
- Android从零单排之免费短信验证
- 阅读源代码的重要性(如厨师选食材,耍厨具——在Eclipse中怎样查看JavaAndroid源代码)
- Android Kill Process
- idea启动tomcat 找不到 类,或者报Error configuring application listener of class org.springframework.web.contex
- Android Training - Volley(Lesson 0 - 序言)
- 一起学android之设置ListView数据显示的动画效果(24)