社区
Java SE
帖子详情
如何监控对象状态?
neonicholasi
2008-01-08 01:43:34
小弟我现在手头上在做一个项目,其中有几个类的状态需要监控(主要是成员变量),发生变化的时候要触发一系列活动
用observer模式的话需要在这些类的对象的更新过程中通知observer来触发动作,就算再加上符合MVC框架的事件,也还是需要在代码里显式地生成事件才能触发动作
请问有没有办法设计一个类专门负责主动监听observable的状态,在observable的对象的状态发生变化时去调用对应的过程呢?
如果有,又该怎么实现呢(最好不要用定时轮巡的方法)?
谢谢!
...全文
181
9
打赏
收藏
如何监控对象状态?
小弟我现在手头上在做一个项目,其中有几个类的状态需要监控(主要是成员变量),发生变化的时候要触发一系列活动 用observer模式的话需要在这些类的对象的更新过程中通知observer来触发动作,就算再加上符合MVC框架的事件,也还是需要在代码里显式地生成事件才能触发动作 请问有没有办法设计一个类专门负责主动监听observable的状态,在observable的对象的状态发生变化时去调用对应的过程呢? 如果有,又该怎么实现呢(最好不要用定时轮巡的方法)? 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
neonicholasi
2008-01-14
打赏
举报
回复
问题已经解决:
http://blog.csdn.net/neonicholasi/archive/2008/01/14/2043133.aspx
想法和老紫竹的差不多
neonicholasi
2008-01-09
打赏
举报
回复
to: 老紫竹
现在用守护线程来实现,确实有了点aop的味道,hehe
neonicholasi
2008-01-09
打赏
举报
回复
多谢各位热心解答!
因为模式实现的是一个行为模型,或者叫机制,所以用和框架绑定的方式来实现肯定是不合适的
在observer里面,由被监控的对象去通知行为的实现者自己的状态发生了变化是一种解决的办法,但是如果面对的是一些持久化的类,比如dataobject,就不得不一个类一个类地在更新里添加对应的函数了,这个在迭代开发里还是很常见的(当然也可以归咎于之前的需求和设计没做好)。这样做本身没什么问题,只是觉得效率低了点。如果能实现让一个类的对象负责监听工作且不依赖于被观察者的通知,发现了感兴趣的变化时再来调用相应的过程,是不是更好用一些呢?
现在考虑用守护线程来做,虽然能实现,但总资源占用大了。
healer_kx
2008-01-08
打赏
举报
回复
楼主,baidu 心寄笔端 事件模型 这两个关键字.
所谓Observer的侦听是从理解的角度说的,通常用实现接口的方式,或者做个delegate的方式来做的,表示侦听这个概念.
你提到了轮询两个字,我猜你是误解了主动性的问题了.
因为你没有提到你是用struts还是什么,我就不知道web.xml是不是有效了.如果是自己从头写,看那几个blog.
老紫竹
2008-01-08
打赏
举报
回复
用 AOP (Spring, AspectJ之类的) 技术,动态监视类的方法。
zuguanqun
2008-01-08
打赏
举报
回复
可以在web.xml配置监听类,可以具体监听某一个类被访问后,可以触发一个事件
neonicholasi
2008-01-08
打赏
举报
回复
这个是针对observer模式的一些功能特性,和网络配置没有关系的
YeLang2007
2008-01-08
打赏
举报
回复
同意楼上...
帮你顶一下...
zuguanqun
2008-01-08
打赏
举报
回复
可以在web.xml里做个监听
如何24小时实时
监控
网站访问
状态
?
网站最重要的就是稳定性,如果网站因为宕机而无法访问,那么对于网站本身来说是一场灾难,网站管理员最重要的职责就是在服务器宕机后第一时间进行恢复,防止网站长时间宕机造成更多损失,因此,网站管理员需要一个对其网站进行24小时不间断的监视的服务,一旦出现无法访问的情况,就立刻通过邮件和短消息通知管理员。这里我介绍一些常用的免费网站宕机
监控
服务。 SiteUpTime - 免费用户可以
监控
一个网站,每半小时监测一次,可监测4个端口,提供4台监测服务器供用户选择,网站不能访问的时候会发送Email通知你。Site
自动驾驶 Apollo 源码分析系列,系统
监控
篇(四):Monitor模块如何
监控
进程 Process 的存活
状态
?
本篇文章分析 Apollo 中
监控
模块中
监控
进程
状态
的相关代码。 1. ProcessMonitor ProcessMonitor 是一个普通的定时器组件,内部函数也只是常规的 RunOnce 和 UpdateStatus,所以,可以推断出它的逻辑非常简单。 但要注意的是它引入的头文件有 hmi_mode 和 system_status 两个,这说明它要从中获取一些数据结构定义。 上面的代码说明,ProcessMonitor 中的 RunOnce 每隔 1.5s 被触发一次。 工作流程分为 4 个步骤
软件运维
监控
有哪些?
主要是
监控
物理机、虚拟机、操作系统的运行情况,主要指标包括CPU、内存、磁盘、网络等,其他的一些相关的数据包括物理机运行时间、操作系统版本、操作系统内核,这些也是排查问题的一些基本依据。这里还需要重点说一下网络,微服务都是通过网络调用或被调用,一旦网络出现问题,整个微服务集群都是不可用的,所以网络
监控
需要细化到流量、数据包、丢包、错报、连接数等指标。主要是
监控
应用的运行情况,包括应用运行时间、http服务端口、服务url、http服务响应码、http服务响应时间、SQL、缓存命中、TPS、QPS等。...
我们要
监控
的
对象
是什么-IT
监控
系统系列
首先从大的分类来讲: 1. 设备物理
监控
系统 监视硬件设备的物理健康特征,如温度、电压、风扇工作
状态
、电源
状态
等; 2. 网络安全设备 各大品牌的路由器、交换机、防火墙、IPS、IDS等; 3. 存储设备 磁盘阵列、光纤交换机; 4. 操作系统 AIX、BSD、HPUX、Linux、Solaris、Windows、虚拟化; 5. 系统软件 各类数据库、中间件、Web服务、DNS
Java面试-如何
监控
JVM 运行
状态
?jstat、jstack、jmap 使用
《Java面试200问》系列文章《如何
监控
JVM运行
状态
》系统介绍了jstat、jstack、jmap三大工具的使用方法。文章从基础概念出发,详细讲解各工具的功能和常用命令,包括jstat
监控
GC情况、jstack分析线程死锁、jmap生成堆转储文件等实战案例。通过综合应用这三个工具,开发者可以全面诊断JVM性能问题,快速定位内存泄漏、死锁等常见故障。文章还总结了面试常见问题及解答,帮助读者掌握JVM性能调优的核心技能。
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章