zoukankan      html  css  js  c++  java
  • 质量属性—性能

    性能是指系统的响应能力,即对外部刺激(事件)做出反应时所需要的时间或在某段时间内所处理的事件个数。一般我们会用等待时间、处理期限、系统吞吐量、响应抖动、未处理事件、丢失数据等指标了解系统性能。

      等待时间:刺激达到和系统对其做出响应之间的时间。

      处理期限:最长等待时间。

      系统吞吐量:系统单位时间处理事务的次数。

      响应抖动:等待时间的变化。

      缺失率(未处理事件):由于系统太忙因而无法做出响应所导致的未处理事件的数量。

      数据丢失:因为系统太忙所丢失的数据。

     性能战术分类图:

    资源需求:

    需求具有两个特性:资源流中事件之间的时间间隔;每个请求所消耗的资源

    1.减少一个事件流所用的资源

    (1)提高计算效率,如改进关键算法

    比如在数据查找时采用二分查找法可以大大减少查找时间

    (2)减少计算开销

    比如保留上次计算结果

    2.减少处理事件的数量,减小频率。

    (1)管理事件率

    (2)控制采样频率

    3.控制资源的使用

    (1)限制执行时间

    (2)限制队列大小

     例子:以数据库、数据表为例,连接数据库代码:

    public static void close(Connection conn, PreparedStatement pstmt, ResultSet rs) {
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
      
            if (pstmt != null) {
                try {
                    pstmt.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
      
                if (rs != null) {
                    try {
                        rs.close();
                    } catch (SQLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
      
            }

    建立表

      public void createtable(String key) throws SQLException {
            String sql = "create table "+key+" (select * from words where baike like '%"+key+"%')";
            Connection conn = DBUtil.getConnection();
            Statement stmt = null;
          //执行创建表
            System.out.println("//创建表");
            stmt = conn.createStatement();
            if(0 == stmt.executeLargeUpdate(sql)) {
                System.out.println("成功创建表!");
            }
            else {
                System.out.println("创建表失败!");
            }
            DBUtil.close(conn);
            DBUtil.close(stmt);
        }

  • 相关阅读:
    POJ 1141 括号匹配 DP
    881. Boats to Save People
    870. Advantage Shuffle
    874. Walking Robot Simulation
    文件操作
    861. Score After Flipping Matrix
    860. Lemonade Change
    842. Split Array into Fibonacci Sequence
    765. Couples Holding Hands
    763. Partition Labels
  • 原文地址:https://www.cnblogs.com/lishengming00/p/12418296.html
Copyright © 2011-2022 走看看