鉴于SOA环境中相对典型的.NET 4系统(即Windows Server 2008 R2,IIS 7上的RESTful Web服务,NServiceBus消息传递的Windows服务,SQL Server 2008 R2等),最佳实践或事实上的解决方案是什么(没有企业价格标签)用于在生产中执行24x7性能监控?
它不一定消耗多少CPU /内存/磁盘IO,而是例如每分钟创建多少createAccount()调用,generateResponse()方法获取和检测异常增量峰值的平均时间是多少,例如generateResponseStarted和generateResponseComplete(方法)被调用(反过来可以调用第三方)并且响应准备好分别返回).
经过一些谷歌搜索后,似乎选择适用于低级分析器(如dotTrace)和实现性能计数器,并使用PerfMon或其他一些OpManager类型的产品.
你会推荐什么?为实时应用程序实现性能计数器会显着降低生产系统的性能吗?如果没有,是否有任何好的库可以简化.NET中的实现?如果是,除了memory-disk-cpu之外,人们如何监控应用程序的性能?
@Ryan Hayes
谢谢,我正在寻找一种方法来查看生产系统上的异常减速或峰值.例如,在压力测试期间一切都很好,但出于某些原因,我们依赖的第三方存在一些问题,或者由于线程锁定或者SAN正在让位或任何其他意外情况导致数据库速度变慢.低级别的分析是一个过多的开销,而只有在出现问题时才开启计数器,此时为时已晚.另外,我们将丢失历史数据以与之进行比较(当delta超出可接受的阈值时,我需要某种警报系统).我想知道人们如何监控他们的生产系统的性能以及他们的经验,这是非内存/ CPU /服务器相关监控的最佳方法.
我正在尝试"/gallery/(username)/"在成功登录后将用户重定向到自定义网址.它目前重定向到默认"/account/profile/"网址虽然我知道我可以覆盖我的重定向网址settings.py,但我的网址是动态的,因此无法使用.
文档声明我需要使用"next"参数,context processors. 我{{next}}在模板中有,但我对如何实际传递它感到困惑"/gallery/(username)".任何帮助将不胜感激.
ps:我正试图避免编写我自己的登录视图.
假设我有以下Spring配置(Spring的版本是3.0.3):
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="theFactoryBean" class="wax.MyFactoryBean"/>
<bean id="factoryBeanUser" class="wax.FactoryBeanUser">
<!-- what should be placed here?-->
</bean>
</beans>
Run Code Online (Sandbox Code Playgroud)
我有FactoryBean实现的实例和一些其他实例.我需要Spring注入其他实例FactoryBean,而不是它生成的对象.
有两种可能的方法来解决它.
第一个,显而易见且有故障:
<bean id="factoryBeanUser" class="wax.FactoryBeanUser">
<property name="myFactoryBean" ref="&theFactoryBean"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
使用此配置,Spring会在启动时抛出异常:
[skipped irrelevant part]
Caused by: org.xml.sax.SAXParseException: The reference to entity "theFactoryBean" must end with the ';' delimiter.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1414)
Run Code Online (Sandbox Code Playgroud)
我找到了这个解决方案Spring:获取FactoryBean对象而不是FactoryBean.getObject(),这个问题得到了回答,有四个人投了赞成票.所以我假设这个解决方案可能有效,但目前我的代码中有问题.
第二个,工作但很尴尬:
public class FactoryBeanUser implements ApplicationContextAware{
private MyFactoryBean myFactoryBean;
public void setApplicationContext(ApplicationContext applicationContext) throws …Run Code Online (Sandbox Code Playgroud) 我正在使用调试器来逐步执行我的代码.我所在的代码文件在顶部使用,例如包括
using System.Linq;
Run Code Online (Sandbox Code Playgroud)
在Visual Studio 2008中,这用于在调试时应用于Watch窗口,因此我可以在监视窗口中使用扩展方法,例如.First()和.ToArray().
出于某种原因,这已停止在Visual Studio 2010中工作.并且它不仅仅是扩展方法; 我现在必须使用完整的命名空间限定每个类型,这真的很烦人.
甚至更奇怪的是Watch窗口内的IntelliSense就像使用时一样.换句话说,它确实列出.ToArray()了例如.但是Watch窗口会显示错误消息
'<type>'不包含'ToArray'的定义,并且没有扩展方法'ToArray'可以找到接受类型'<type>'的第一个参数(你是否缺少using指令或汇编引用?)
所以现在我总是要输入真的很长而烦人的
System.Linq.Enumerable.ToArray(blah)
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
我正在尝试编写一个使用doxygen生成html文档的MSBuild项目.除了一个看似不完整的例子之外,我在网上找不到任何关于它的内容.它不解析doxygen警告.
我发现MSBuild的Exec任务有像IgnoreStandardErrorWarningFormat和CustomWarningRegularExpression这样的参数.什么是"标准错误/警告格式"以及这些属性中允许哪种RE?
编辑:啊,"Microsoft Build Engine内部"错误地将其描述为.NET 3.5中的属性,它实际上来自4.对我来说没用...
我正在寻找这个模板的一些背景(需要引用报告).谁是带有众所周知模板的人?
"作为[用户],我想要[功能],所以[值]"
我一直在寻找答案,但没有人给出适当的引用.
如果你使用AbsoluteLayout(我知道它已被弃用,但这是解决我问题的唯一方法)你可以给childViews标签android:layout_x并android:layout_y设置它们的绝对位置AbsoluteLayout.
但是我不想在xml中设置这些信息,因为我只在运行时知道它们.那么如何在运行时以编程方式设置这些参数呢?我没有在View上看到任何方法view.setLayoutX(int x)或类似的东西.
这是我的XML,当我设置layout_x和layout_y值时,它工作正常:
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:src="@drawable/myImageView"
android:layout_width="1298px"
android:layout_height="945px"
android:layout_x="0px"
android:layout_y="0px" />
<Button
android:id="@+id/myButton1"
android:text="23"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="50px"
android:layout_y="300px"
android:tag="23"/>
<Button
android:id="@+id/myButton2"
android:text="48"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="50px"
android:layout_y="300px"
android:tag="48"/>
</AbsoluteLayout>
Run Code Online (Sandbox Code Playgroud)
实际上,我不想再在xml中设置任何按钮,而是通过远程检索一些信息并根据该信息添加按钮.
这是我正在使用的代码部分,所以在我onCreateMethod添加这些按钮:
for (MyRemoteObject remoteObject: list) {
Button button = new Button(this);
button.setOnClickListener (listener);
button.setTag(remoteObject.id);
button.setText(remoteObject.id);
// button.setLayoutX(remoteObject.x) ????
// button.setLayoutY(remoteObject.y) ????
myLayout.addView(button);
}
Run Code Online (Sandbox Code Playgroud) 有2个文件名为:
在AnnuityDueGUI.java下,有如下方法:
=============
public double calculateFADGUI(){
//FVA = A{[(1+i)^n – 1] / i} (1+i)
String amountStr = amount.getText() ; //convert string to double
dAmount = Double.parseDouble(amountStr) ;
String iStr = iText.getText() ;
dInterest = Double.parseDouble(iStr) ;
String periodStr = period.getText() ;
dPeriod = Double.parseDouble(periodStr) ;
iPeriod = (int)dPeriod ;
due = new Annuity(dAmount, dInterest, iPeriod) ;
System.out.println(due.calculateFAD()) ;
return due.calculateFAD() ; //calculateFAD() is under Annuity.java
}
Run Code Online (Sandbox Code Playgroud)
===============
在AnnuityDueResultGUI.java下,如何从我上面提到的方法中获取结果?两个类都在同一个包"GUI"下.我也做到了import AnnuityDueGUI.* ;
但是仍然不知道如何从AnnuityDueGUI.java中获取结果并将其显示在AnnuityDueResultGUI.java下.
请提前协助并表示感谢.
我正在将时序数据的csv文件读入C++程序.然而,我的数据包含一些NaN.例如:
1-Jul-2010, 1.0
2-Jul-2010, 2.0
3-Jul-2010, NaN
4-Jul-2010, 3.0
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我在Matlab中编写了一个简短的脚本,将所有NaN替换为0.0 - 然后在没有NaN的情况下读入新文件.有简单的方法还是避免这种预处理?
谢谢!
我真的想用这些东西变得更好.我对这样的国际化概念非常有用,但我需要更好地了解它背后的理论.
我读过Spolsky的文章,但我仍然不清楚,因为这三个术语可以互换使用 - 即使在那篇文章中也是如此.我想其中至少有两个人在谈论同样的事情.
我怀疑很高比例的开发人员每天都会通过这些东西.我不想再成为那些开发者之一了.
java ×2
.net ×1
agile ×1
android ×1
c# ×1
c++ ×1
class ×1
codepages ×1
continuous ×1
csv ×1
debugging ×1
django ×1
django-forms ×1
encoding ×1
file-io ×1
import ×1
methods ×1
monitoring ×1
msbuild ×1
nan ×1
package ×1
performance ×1
position ×1
production ×1
python ×1
runtime ×1
scrum ×1
spring ×1
user-stories ×1
watch-window ×1