应用JSF、Ajax和Seam开发Portlets(1/3)
本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。
作者 Steven Haines译者 王丽娟 发布于 2008年9月3日 上午11时6分
ADP的高级技术架构师Nicholas Whitehead在IBM developerWorks上发表了由三部分组成的文章系列,题为Java运行时监控。在该系列文章中,他给读者介绍了应用性能管理(APM):
Whitehead一开始先讨论了APM反模式,这些反模式确定了公司在拼凑监控方案时可能会面对的关键问题。他讲了如下几个反模式:

讨论了反模式之后,Whitehead介绍了理想的APM系统所具备的下列属性(直接摘录于作者的文章):
接下来Whitehead详细说明了满足这些需求的技术解决方案。他定义了一组“追踪器”,负责从监控组件获取数据,并将其发送给“性能数据源”。他解释了这些追踪器的特性,它们包括上述那些方面,因为不论指标是基于间隔采样、变量增量、粘性(表示它们不频繁改变)、基于事件、还是灵敏的,这些追踪器能以所收集数据的特性为基础自动发现它们的类型。然后他讨论了常用的收集器模式,比如轮询、监听、拦截。
Whitehead重新研究了核心JVM MBeans,以此深入研究了监控的细节,还为收集那些MBeans和应用特定的JMX数据构造了一个监控框架。随后他将注意力转到了监控类和监控方法,并回顾了四类常用的技术:
展示了如何实施源码工具(第一部分)之后,他确定了评估传入数据的规则和阈值。
在第二部分,他将注意力转到了后编译技术工具。他回顾了如何利用EJB3拦截器、Servlet过滤器拦截器、EJB客户端拦截器和内容传递,以及 Spring拦截器来捕获应用的性能指标。他介绍了如何使用JDBC驱动、连接、语句、结果集对象的类包装来工具化JDBC,并由此工具化数据库调用。最后,他介绍了字节码工具(BCI)是怎样工作的,还有JVM怎样提供一个标准的机制来通过javaagent这一JVM启动参数集成BCI。为了说明 APM厂商为什么跳过类包装选择BCI,他给出了如下的性能图:
Whitehead回顾了对Java应用归属的生态系统(也就是操作系统和宿主环境,其中包括数据库和消息基础设施)的监控策略,以此对该系列进行了总结。他讨论了代理监控和无代理监控的挑战和好处,接着深入研究了对Linux/UNIX系统和Windows系统的监控。他迎接的下一个挑战是数据库监控和上下文跟踪。他描述了JMS和消息系统,并说明如何通过合成消息和JMX的结合来监控它们。在第三部分结尾处,他讨论了可视化和报告功能,并给出了可视化技术的屏幕快照示例,包括仪表盘。
总之,该文章系列对性能监控进行了介绍和深度纵览,并包括细节层次,让读者理解在现成监控解决方案中的许多技术。
要获取更多关于性能和可伸缩性的信息,请阅读InfoQ上的“性能和可伸缩性”页面。
查看英文原文:An in-depth overview of modern Application Performance Management
本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。
在这篇文章里,Bryon Jacob和Chris Berry将和我们继续探讨AtomServer,它是基于Apache Abdera的完整Atom存储实现。作者还创建了几个Atompub规范扩展,其中包括自动标记、批处理和Feeds聚合。
InfoQ中文站的电子杂志《架构师》试刊第二期出版了!相比于上期,我们在内容的选择安排和版式上都根据读者的意见重新做了修正。“细节决定成败”,我们希望基于InfoQ中文站的专业内容,《架构师》能逐渐成为大家喜欢的电子刊物!
在本文中,Steven Haines探讨了Web应用性能调优问题。该领域过去更像是一门艺术而不是一门科学。他提出了一种称为基于等待调优的方法,使整个调优过程更加可度量,也因此更具科学性。
通常来说,改变技术路线时最艰难的部分是辨别语言语法之间的不同。这篇文章就为Java开发者提供了一份如何转向Flex基础语言ActionScript的指南。
本视频主要以财帮子为例,介绍了如何创建一个PV为百万级的Rails应用。其中包括:Rails应用的服务器架构、Rails Cache的优化、负载均衡的处理、Web服务器的调试、分布式解决方案、Open API的设计等等。
InfoQ首席架构师Alexandru Popescu在采访中谈论了InfoQ架构、Webwork与DWR、Hibernate与JCR、Hibernate可扩展性、最新的InfoQ视频流系统和InfoQ的未来规划。
相对于Java,.NET在持续重构方面所给与的重视仍然少为人知,大多数人对于重构是否真正属于开发过程,以及如何将其应用到开发过程中持观望态度。Danijel Arsenovski试图为你揭示这些谜题。
没有回复
回复