zoukankan      html  css  js  c++  java
  • Application Architecture Determines Application Performance

    Application Architecture Determines Application Performance

    Randy Stafford

    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.

  • 相关阅读:
    用socket方式传输Image和Sound文件
    maven常用构建命令
    文件大小转换成可显示的Mb,Gb和kb方法
    关于<img>标签与文字垂直居中
    socket编程---一个简单例子
    Java实现RC4加解密
    build path功能详解
    struts2中改变struts.xml默认路径
    OpenSessionInViewFilter 的配置及作用
    web.xml元素介绍
  • 原文地址:https://www.cnblogs.com/jhcelue/p/7290648.html
Copyright © 2011-2022 走看看