当前位置: 首页 > news >正文

怎么用linux做网站服务器吗大兴安岭地网站seo

怎么用linux做网站服务器吗,大兴安岭地网站seo,阿里云免费企业邮箱申请,成都seo技术经理(转#xff09;用Java获得当前性能信息 http://www.blogjava.net/amigoxie/archive/2008/04/30/197564.html在Java中#xff0c;可以获得总的物理内存、剩余的物理内存、已使用的物理内存等信息#xff0c;本例讲解如何取得这些信息#xff0c;并且获得在Windows下的内存使… (转用Java获得当前性能信息 http://www.blogjava.net/amigoxie/archive/2008/04/30/197564.html 在Java中可以获得总的物理内存、剩余的物理内存、已使用的物理内存等信息本例讲解如何取得这些信息并且获得在Windows下的内存使用率。      首先编写一个MonitorInfoBean类用来装载监控的一些信息包括物理内存、剩余的物理内存、已使用的物理内存、内存使用率等字段该类的代码如下package com.amigo.performance;/** *//** * 监视信息的JavaBean类. * author a hrefmailto:xiexingxing1121126.comAmigoXie/a * version 1.0  * Creation date: 2008-4-25 - 上午10:37:00 */public class MonitorInfoBean {    /** *//** 可使用内存. */    private long totalMemory;        /** *//** 剩余内存. */    private long freeMemory;        /** *//** 最大可使用内存. */    private long maxMemory;        /** *//** 操作系统. */    private String osName;        /** *//** 总的物理内存. */    private long totalMemorySize;        /** *//** 剩余的物理内存. */    private long freePhysicalMemorySize;        /** *//** 已使用的物理内存. */    private long usedMemory;        /** *//** 线程总数. */    private int totalThread;        /** *//** cpu使用率. */    private double cpuRatio;    public long getFreeMemory() {        return freeMemory;    }    public void setFreeMemory(long freeMemory) {        this.freeMemory  freeMemory;    }    public long getFreePhysicalMemorySize() {        return freePhysicalMemorySize;    }    public void setFreePhysicalMemorySize(long freePhysicalMemorySize) {        this.freePhysicalMemorySize  freePhysicalMemorySize;    }    public long getMaxMemory() {        return maxMemory;    }    public void setMaxMemory(long maxMemory) {        this.maxMemory  maxMemory;    }    public String getOsName() {        return osName;    }    public void setOsName(String osName) {        this.osName  osName;    }    public long getTotalMemory() {        return totalMemory;    }    public void setTotalMemory(long totalMemory) {        this.totalMemory  totalMemory;    }    public long getTotalMemorySize() {        return totalMemorySize;    }    public void setTotalMemorySize(long totalMemorySize) {        this.totalMemorySize  totalMemorySize;    }    public int getTotalThread() {        return totalThread;    }    public void setTotalThread(int totalThread) {        this.totalThread  totalThread;    }    public long getUsedMemory() {        return usedMemory;    }    public void setUsedMemory(long usedMemory) {        this.usedMemory  usedMemory;    }    public double getCpuRatio() {        return cpuRatio;    }    public void setCpuRatio(double cpuRatio) {        this.cpuRatio  cpuRatio;    }}      接着编写一个获得当前的监控信息的接口该类的代码如下所示package com.amigo.performance;/** *//** * 获取系统信息的业务逻辑类接口. * author a hrefmailto:xiexingxing1121126.comAmigoXie/a * version 1.0  * Creation date: 2008-3-11 - 上午10:06:06 */public interface IMonitorService {    /** *//**     * 获得当前的监控对象.     * return 返回构造好的监控对象     * throws Exception     * author a hrefmailto:xiexingxing1121126.comAmigoXie/a     * Creation date: 2008-4-25 - 上午10:45:08     */    public MonitorInfoBean getMonitorInfoBean() throws Exception;}      该类的实现类MonitorServiceImpl如下所示package com.amigo.performance;import java.io.InputStreamReader;import java.io.LineNumberReader;import sun.management.ManagementFactory;import com.sun.management.OperatingSystemMXBean;/** *//** * 获取系统信息的业务逻辑实现类. * author a hrefmailto:xiexingxing1121126.comAmigoXie/a * version 1.0 Creation date: 2008-3-11 - 上午10:06:06 */public class MonitorServiceImpl implements IMonitorService {        private static final int CPUTIME  30;    private static final int PERCENT  100;    private static final int FAULTLENGTH  10;    /** *//**     * 获得当前的监控对象.     * return 返回构造好的监控对象     * throws Exception     * author a hrefmailto:xiexingxing1121126.comAmigoXie/a     * Creation date: 2008-4-25 - 上午10:45:08     */    public MonitorInfoBean getMonitorInfoBean() throws Exception {        int kb  1024;                // 可使用内存        long totalMemory  Runtime.getRuntime().totalMemory() / kb;        // 剩余内存        long freeMemory  Runtime.getRuntime().freeMemory() / kb;        // 最大可使用内存        long maxMemory  Runtime.getRuntime().maxMemory() / kb;        OperatingSystemMXBean osmxb  (OperatingSystemMXBean) ManagementFactory                .getOperatingSystemMXBean();        // 操作系统        String osName  System.getProperty(os.name);        // 总的物理内存        long totalMemorySize  osmxb.getTotalPhysicalMemorySize() / kb;        // 剩余的物理内存        long freePhysicalMemorySize  osmxb.getFreePhysicalMemorySize() / kb;        // 已使用的物理内存        long usedMemory  (osmxb.getTotalPhysicalMemorySize() - osmxb                .getFreePhysicalMemorySize())                / kb;        // 获得线程总数        ThreadGroup parentThread;        for (parentThread  Thread.currentThread().getThreadGroup(); parentThread                .getParent() ! null; parentThread  parentThread.getParent())            ;        int totalThread  parentThread.activeCount();        double cpuRatio  0;        if (osName.toLowerCase().startsWith(windows)) {            cpuRatio  this.getCpuRatioForWindows();        }                // 构造返回对象        MonitorInfoBean infoBean  new MonitorInfoBean();        infoBean.setFreeMemory(freeMemory);        infoBean.setFreePhysicalMemorySize(freePhysicalMemorySize);        infoBean.setMaxMemory(maxMemory);        infoBean.setOsName(osName);        infoBean.setTotalMemory(totalMemory);        infoBean.setTotalMemorySize(totalMemorySize);        infoBean.setTotalThread(totalThread);        infoBean.setUsedMemory(usedMemory);        infoBean.setCpuRatio(cpuRatio);        return infoBean;    }    /** *//**     * 获得CPU使用率.     * return 返回cpu使用率     * author a hrefmailto:xiexingxing1121126.comAmigoXie/a     * Creation date: 2008-4-25 - 下午06:05:11     */    private double getCpuRatioForWindows() {        try {            String procCmd  System.getenv(windir)                     \\system32\\wbem\\wmic.exe process get Caption,CommandLine,                     KernelModeTime,ReadOperationCount,ThreadCount,UserModeTime,WriteOperationCount;            // 取进程信息            long[] c0  readCpu(Runtime.getRuntime().exec(procCmd));            Thread.sleep(CPUTIME);            long[] c1  readCpu(Runtime.getRuntime().exec(procCmd));            if (c0 ! null  c1 ! null) {                long idletime  c1[0] - c0[0];                long busytime  c1[1] - c0[1];                return Double.valueOf(                        PERCENT * (busytime) / (busytime  idletime))                        .doubleValue();            } else {                return 0.0;            }        } catch (Exception ex) {            ex.printStackTrace();            return 0.0;        }    }    /** *//**     * 读取CPU信息.     * param proc     * return     * author a hrefmailto:xiexingxing1121126.comAmigoXie/a     * Creation date: 2008-4-25 - 下午06:10:14     */    private long[] readCpu(final Process proc) {        long[] retn  new long[2];        try {            proc.getOutputStream().close();            InputStreamReader ir  new InputStreamReader(proc.getInputStream());            LineNumberReader input  new LineNumberReader(ir);            String line  input.readLine();            if (line  null || line.length()  FAULTLENGTH) {                return null;            }            int capidx  line.indexOf(Caption);            int cmdidx  line.indexOf(CommandLine);            int rocidx  line.indexOf(ReadOperationCount);            int umtidx  line.indexOf(UserModeTime);            int kmtidx  line.indexOf(KernelModeTime);            int wocidx  line.indexOf(WriteOperationCount);            long idletime  0;            long kneltime  0;            long usertime  0;            while ((line  input.readLine()) ! null) {                if (line.length()  wocidx) {                    continue;                }                // 字段出现顺序Caption,CommandLine,KernelModeTime,ReadOperationCount,                // ThreadCount,UserModeTime,WriteOperation                String caption  Bytes.substring(line, capidx, cmdidx - 1)                        .trim();                String cmd  Bytes.substring(line, cmdidx, kmtidx - 1).trim();                if (cmd.indexOf(wmic.exe)  0) {                    continue;                }                // log.info(lineline);                if (caption.equals(System Idle Process)                        || caption.equals(System)) {                    idletime  Long.valueOf(                            Bytes.substring(line, kmtidx, rocidx - 1).trim())                            .longValue();                    idletime  Long.valueOf(                            Bytes.substring(line, umtidx, wocidx - 1).trim())                            .longValue();                    continue;                }                kneltime  Long.valueOf(                        Bytes.substring(line, kmtidx, rocidx - 1).trim())                        .longValue();                usertime  Long.valueOf(                        Bytes.substring(line, umtidx, wocidx - 1).trim())                        .longValue();            }            retn[0]  idletime;            retn[1]  kneltime  usertime;            return retn;        } catch (Exception ex) {            ex.printStackTrace();        } finally {            try {                proc.getInputStream().close();            } catch (Exception e) {                e.printStackTrace();            }        }        return null;    }        /** *//**     * 测试方法.     * param args     * throws Exception     * author a hrefmailto:xiexingxing1121126.comAmigoXie/a     * Creation date: 2008-4-30 - 下午04:47:29     */    public static void main(String[] args) throws Exception {        IMonitorService service  new MonitorServiceImpl();        MonitorInfoBean monitorInfo  service.getMonitorInfoBean();        System.out.println(cpu占有率  monitorInfo.getCpuRatio());                System.out.println(可使用内存  monitorInfo.getTotalMemory());        System.out.println(剩余内存  monitorInfo.getFreeMemory());        System.out.println(最大可使用内存  monitorInfo.getMaxMemory());                System.out.println(操作系统  monitorInfo.getOsName());        System.out.println(总的物理内存  monitorInfo.getTotalMemorySize()  kb);        System.out.println(剩余的物理内存  monitorInfo.getFreeMemory()  kb);        System.out.println(已使用的物理内存  monitorInfo.getUsedMemory()  kb);        System.out.println(线程总数  monitorInfo.getTotalThread()  kb);    }}         该实现类中需要用到一个自己编写byte的工具类该类的代码如下所示package com.amigo.performance;/** *//** * byte操作类. * author a hrefmailto:xiexingxing1121126.comAmigoXie/a * version 1.0  * Creation date: 2008-4-30 - 下午04:57:23 */public class Bytes {    /** *//**     * 由于String.subString对汉字处理存在问题把一个汉字视为一个字节)因此在     * 包含汉字的字符串时存在隐患现调整如下     * param src 要截取的字符串     * param start_idx 开始坐标包括该坐标)     * param end_idx   截止坐标包括该坐标     * return     */    public static String substring(String src, int start_idx, int end_idx){        byte[] b  src.getBytes();        String tgt  ;        for(int istart_idx; iend_idx; i){            tgt (char)b[i];        }        return tgt;    }}         运行下MonitorBeanImpl类读者将会看到当前的内存、cpu利用率等信息。 posted on 2008-05-02 07:03 jackyrong的世界 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/jackyrong/archive/2008/05/02/1179180.html
http://www.yutouwan.com/news/280520/

相关文章:

  • 深圳企业网站建设标准网页设计与网站开发的实践目的
  • 整站seo优化一般多少钱ideas wordpress theme 2.0
  • 个人网站如何备企业网页加速器怎么用
  • 怎样建网站平台凡科建设网站怎么保存
  • 建设银行住房公积网站任城网络推广教程
  • joomla做的网站做网站新手流程
  • 网站建设方维中国建筑装饰网王凤波
  • 网站设计侵权网站右下角flash
  • 北京网站优化推广公司苏州网站建设问问q778925409强涵
  • 做网站建设需要网站优化怎么做分录
  • 网站审批公司建设电商型网站的作用
  • 一个域名一个ip做多个网站南京企业网站开发
  • 那个网站做h5不要钱无锡企业网站建设
  • 网站建设需求怎么写郑州便民网
  • 一流的网站建设公司软件开发是什么行业
  • 如何挑选网站主机Wordpress500页面
  • 眼科医院网站做竞价带来的询盘量苏州建设工程材料信息价
  • 终身免费建站注册网址
  • 还能用的wap网站深圳做网站的网络公司
  • 傻瓜式免费自助建站系统深圳布吉做网站
  • 用vps建网站备案centos yum wordpress
  • 买完域名怎么创建网站建设银行官网电话
  • php建站软件哪个好计算机专业毕业设计做什么好
  • 网站建设设计费用网站开发者工具下载
  • aspnet网站开发实例教程pdf济宁网站排名
  • 简洁的个人网站做一个交易网站要花多少钱
  • 网页网站自做全搞定wordpress产品页插件
  • 登录广东省建设监理协会网站首页永安市住房与城乡建设局网站
  • 菠菜网站的代理怎么做建筑工程公司有什么职位
  • 洛阳霞光高端定制网站建设天河网站建设哪家好