首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏ADAS性能优化

    Using Android Studio’s Performance Monitors

    In desperation, I turned to Android Studio’s performance monitors, which easily allow you to visualize More information about Android Studio’s performance monitors can be found here, but there are basically 4 monitors you need to know about: the Memory, CPU, GPU, and Network monitors. I opened up the performance monitors, and reproduced the bug. The CPU, GPU, and Network monitors, were relatively stable and uninteresting.

    44720编辑于 2022-05-13
  • 来自专栏hank

    【分享】更新的 AXI performance monitors (APM)测试工具

    在博客文章 使用 AXI performance monitors (APM)测试MPSoC DDR访问带宽 中介绍了DDR带宽测试工具"apm_main.elf"。使用过程中,发现还有些不足。

    2.2K31发布于 2021-09-10
  • 来自专栏hank

    【分享】使用 AXI performance monitors (APM)测试MPSoC DDR访问带宽

    MPSoC的DDR控制器的数据通道上集成了 AXI performance monitors (APM)。 APM驱动程序 对于AXI performance monitors (APM),xilinx提供的驱动程序是drivers\uio\uio_xilinx_apm.c,相关匹配字符串和主要数据结构如下: APM用户态程序 对于AXI performance monitors (APM),xilinx也提供了用户态程序,是apm_main.elf。

    2.8K30发布于 2021-04-22
  • 来自专栏码匠的流水账

    聊聊PowerJob的DatabaseMonitorAspect

    Componentpublic class PowerJobMonitorService implements MonitorService { private final List<Monitor> monitors = Lists.newLinkedList(); public PowerJobMonitorService(List<Monitor> monitors) { monitors.forEach (m); }); } @Override public void monitor(Event event) { monitors.forEach(m -> m.record(event)); }}PowerJobMonitorService是实现了MonitorService接口,其monitor方法遍历monitors,挨个执行record方法Monitortech event 事件 */ void record(Event event);}Monitor接口定义了record方法LogMonitortech/powerjob/server/monitor/monitors

    23800编辑于 2024-01-08
  • 来自专栏码匠的流水账

    聊聊PowerJob的DatabaseMonitorAspect

    Component public class PowerJobMonitorService implements MonitorService { private final List<Monitor> monitors = Lists.newLinkedList(); public PowerJobMonitorService(List<Monitor> monitors) { monitors.forEach (m); }); } @Override public void monitor(Event event) { monitors.forEach (m -> m.record(event)); } } PowerJobMonitorService是实现了MonitorService接口,其monitor方法遍历monitors,挨个执行 */ void record(Event event); } Monitor接口定义了record方法 LogMonitor tech/powerjob/server/monitor/monitors

    21510编辑于 2024-01-19
  • 来自专栏DevOps时代的专栏

    如何写好 DevOps 的文档

    DevOps 代码库的结构大概长这个样子: $ tree ├── __init__.py ├── fabfile.py ├── fab_scripts │ ├── __init__.py │ ├── monitors.py 例如, $ fab -lAvailable commands: monitors.get Get YAML definition of monitors monitors.list List names of all monitors monitors.mute Mute specific groups of monitors monitors.mute_all Mute all monitors globally monitors.unmute Unmute specific groups of monitors monitors.unmute_all Unmute all monitors globally mysql.connection_list

    79930发布于 2018-08-01
  • 来自专栏林德熙的博客

    X11 设置多屏下窗口在哪个屏幕上全屏

    甚至可以指定窗口横跨几个屏幕显示 在 X11 里面,根据 Window Manager Protocols - Extended Window Manager Hints 文档说明,可使用 _NET_WM_FULLSCREEN_MONITORS 其使用方法如下: 在窗口 XMapWindow 之后调用 配合 _NET_WM_STATE_FULLSCREEN 使用 通过 ClientMessage 发送 _NET_WM_FULLSCREEN_MONITORS https://specifications.freedesktop.org/wm-spec/1.5/ar01s06.html ) // 6.3 _NET_WM_FULLSCREEN_MONITORS var wmState = XInternAtom(Display, "_NET_WM_FULLSCREEN_MONITORS", true); Console.WriteLine($" 使用 xrandr 命令可查看到的双屏信息如下 $ xrandr --listmonitors Monitors: 2 0: +*DisplayPort-1 1920/708x1080/398+1920

    51010编辑于 2025-08-08
  • 来自专栏网络安全攻防

    一种后渗透阶段权限维持方法

    Step 4:之后进入system32目录,并执行以下命令(Monitors.exe为之前编译好的文件,也需要放置到system32目录下): Monitors.exe ? 持久化实现 为了实现持久性,我们需要在"Monitors"注册表位置下设置一个key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print \Monitors 之后在命令行下执行以下命令创建一个注册表项,该注册表项将包含值test.dll,从编辑器中查看注册表验证密钥是否已创建: reg add "hklm\system\currentcontrolset \control\print\monitors\Pentestlab" /v "Driver" /d "test.dll" /t REG_SZ ? 下次重新启动时,spoolsv.exe进程将加载Monitors注册表项中存在并存储在Windows文件夹System32中的所有驱动程序DLL文件,下图演示了Meterpreter会话已建立与Print

    43210发布于 2021-07-21
  • 来自专栏猿天地

    JetCache埋点的骚操作,不服不行啊

    还有一种比较投机取巧的方案,可以不用改变配置类的关系,在 config 中有 monitors 这个信息,里面存放的是缓存的监控信息,主要是记录缓存对应的操作类型,GET, PUT 这种,然后就是每个操作的执行时间 所以我们可以通过获取 monitors 中的 cacheName 来临时解决这个问题。 ? private String getCacheName() { List<CacheMonitor> monitors = config.getMonitors(); if (CollectionUtils.isEmpty (monitors)) { return ""; } DefaultCacheMonitor cacheMonitor = (DefaultCacheMonitor) monitors.get

    1.7K10发布于 2020-08-24
  • 来自专栏我的小碗汤

    kubernetes垃圾回收器GarbageCollector Controller源码分析(一)

    由于内容偏长,分为多节来讲: ①、 monitors作为生产者将变化的资源放入 graphChanges队列;同时 restMapper定期检测集群内资源类型,刷新 monitors ②、 runProcessGraphChanges GarbageCollector通过restMapper定期重置可删除的资源类型,更新GraphBuilder中的monitorsmonitors将创建所有资源类型的变更通知回调函数,将变化的资源对象加入到 running bool dynamicClient dynamic.Interface // monitors are the producer of the graphChanges = nil { utilruntime.HandleError(fmt.Errorf("failed to sync all monitors: %v", err)) } 继续收集垃圾 klog.Infof("Garbage collector: all resource monitors have synced.

    1.4K20发布于 2019-09-04
  • 来自专栏测试开发囤货

    专项测试-桌面端性能监控工具

    教程都给你准备好了,乖,张开嘴,吃~ Linux下安装配置Grafana压测监控服务-安装InfluxDB Linux下安装配置Grafana压测监控服务-安装Grafana 安装服务 pip install -U monitors 启动服务 # -*- coding: utf-8 -*- """ @Project :monitors @File :monitor.py @Author :lijiawei @Date :2021/9/6 4:13 下午 """ from monitors.monitor_set import Settings as ST import argparse parser ST.database = 'test_database' # Grafana apikey ST.apikey = '********' # influxdb 表 ST.table = name from monitors.monitor_util

    1.3K30发布于 2021-09-29
  • 来自专栏服务端技术杂谈

    dubbo源码学习笔记----monitor

    // monitor centers Map<RegistryAddress, Registry> private static final Map<String, Monitor> MONITORS public static Collection<Monitor> getMonitors() { return Collections.unmodifiableCollection(MONITORS.values listenableFuture = AbstractMonitorFactory.FUTURES.get(key); AbstractMonitorFactory.MONITORS.put LOCK.lock(); try { monitor = MONITORS.get(key); future = FUTURES.get(key

    82980发布于 2018-04-17
  • 来自专栏一个会写诗的程序员的博客

    GenerateOopMap.java

    = bad_monitors) { // If there are no monitors in the program, or there has been // a monitor = bad_monitors, "monitorPush called on error monitor stack"); } if (_monitor_top >= _max_monitors = bad_monitors) { tty.print(" monitors = "); printStates(tty, monitors(), _monitor_top = bad_monitors) { tty.print(" monitors = '" + stateVecToString(monitors(), _monitor_top) + " = bad_monitors && _monitor_top !

    81110发布于 2020-09-07
  • 来自专栏容器计算

    【Ceph】Rook 中使用 External Cluster 的方式管理外部集群

    populate the "mon initial members" // and "mon hosts" global config field func PopulateMonHostMembers(monitors map[string]*MonInfo) ([]string, []string) { monMembers := make([]string, len(monitors)) monHosts : = make([]string, len(monitors)) i := 0 for _, monitor := range monitors { monMembers[i] = monitor.Name detect the current port if the mon already exists // This basically handles the transition between monitors

    1.3K20发布于 2020-09-14
  • 来自专栏Ceph对象存储方案

    ceph v12版本直升v14

    systemctl stop ceph-osd@* systemctl stop ceph-radosgw@* 修复异常 升级后出现“Legacy BlueStore stats reporting”和“ 3 monitors 出现“3 monitors have not enabled msgr2” 是因为新版本需要默认开启msgr2的通信模块。 health: HEALTH_WARN Legacy BlueStore stats reporting detected on 6 OSD(s) 3 monitors 227 supdev]# ceph health detail HEALTH_WARN Legacy BlueStore stats reporting detected on 6 OSD(s); 3 monitors health: HEALTH_WARN Legacy BlueStore stats reporting detected on 5 OSD(s) 3 monitors

    2K10发布于 2019-12-05
  • 来自专栏分布式存储

    ceph分布式存储-常见MON故障处理

    你可以认为如果已经形成法定人数,monitors 就只会响应 status 请求。 这意味着该 monitor 还在搜寻其他 monitors 。每次你启动一个 monitor,它会去搜寻 monmap 中的其他 monitors ,所以会有一段时间处于该状态。此段时间的长短不一。 也就是说,集群中还有其他运行正常的 monitors,以便新 monitor 可以和其他 monitors 达到同步。请谨记,销毁一个 monitor 时,如果没有其上数据的备份,可能会丢失数据。 通过 OSDs 恢复 但是万一所有的 monitors 都同时失败了该怎么办?由于建议用户在部署集群时至少安装 3 个 monitors,同时失效的可能性较小。 但是数据中心意外的断电,再加上磁盘/文件系统配置不当,可能会引起底层文件系统失败,从而杀掉所有的 monitors

    3K20发布于 2020-07-20
  • 来自专栏Rust实战教程

    Rust实战(四):数据持久化、告警配置与Web API —— 构建监控系统的功能闭环

    基于此前已实现的监控逻辑,系统主要涉及以下四张核心数据表:monitors_config:监控配置表,用于存储从monitor_list.json中读取并标准化后的监控对象配置;monitor_results ::get_all_monitors)).route("/monitors",web::post().to(crate::api::handlers::monitor_handlers::insert_monitors )).route("/monitors/{id}",web::get().to(crate::api::handlers::monitor_handlers::get_monitors_by_id)). route("/monitors/{id}",web::put().to(crate::api::handlers::monitor_handlers::update_monitors_by_id)). route("/monitors/{id}",web::delete().to(crate::api::handlers::monitor_handlers::delete_monitors_by_id

    23710编辑于 2025-12-02
  • 来自专栏技术成长

    将Ceph集群与云平台(如OpenStack)集成

    集群与云计算的结合集成Ceph集群与云平台要将Ceph集群与云平台(如OpenStack)集成,以提供存储服务,可以按照以下步骤进行操作:安装和配置Ceph集群:首先,在所有节点上安装和配置Ceph集群,包括监视器(Monitors 配置存储后端:在OpenStack的配置文件中,配置Ceph作为后端存储驱动,确保与Ceph集群的连接信息(如Monitors的IP地址和端口)正确设置。 可以通过增加OSD和Monitors的数量,以及优化网络连接来提高性能。扩展性:Ceph集群的扩展性非常重要,以适应动态变化的云计算环境。 实现Ceph集群的弹性伸缩为了实现Ceph集群的弹性伸缩,以适应云计算环境的动态变化,可以采取以下策略:添加新的Ceph节点:根据存储需求的增长,可以添加新的Ceph节点,包括OSD节点和Monitors

    1.4K21编辑于 2023-12-29
  • 来自专栏田飞雨的专栏

    garbage collector controller 源码分析

    = nil { utilruntime.HandleError(fmt.Errorf("failed to sync all monitors: %v", err)) } gb.monitorLock.Lock() defer gb.monitorLock.Unlock() monitors := gb.monitors stopped := 0 for _, monitor := range monitors { if monitor.stopCh ! = nil { stopped++ close(monitor.stopCh) } } gb.monitors = nil := gb.monitors started := 0 for _, monitor := range monitors { if monitor.stopCh ==

    1.4K10发布于 2019-12-31
  • 来自专栏进击的Coder

    最佳实践【二】从 0 开始,用 flask+mongodb 打造分布式服务器监控平台

    对于这一次的项目,我们新建一个文件夹 Monitors,然后再在里面新建一个 python package 名字叫 monitors,接着在项目内新建一个名为 core.py 的文件,结构如下图所示: 所以我们还需要新建一个测试文件 testing.py,并在里面编写: from monitors.core import PresentMomentSystemResource if __name_ object at 0x7fb0862a7128> <monitors.core.PresentMomentSystemResource object at 0x7fb0862a7128> Process 首先,我们在 monitors 的 init.py 文件中设置好 flask from flask import Flask from flask.ext.restful import Resource 下一步则是将系统资源信息获取类与视图类相关联,将 start .py 的代码改为: # start.py from monitors import app, api, resource from monitors.core

    1.2K40发布于 2018-12-24
领券