вы можете сделать это
items = [];
companyIDs = [1234, 5678];
FillItems(){
for(let i=0; i<this.companyIDs.length;i++){
this.getcompanyname(this.companyIDs[i]);
}
}
getcompanyname(companyid:number){
this.companyService.getCompanyName(companyid).subscribe((companyName) => {
this.items.push({
compId: companyid,
compName:companyName
})
}
http://www.newrelic.com/features.html
И короткий скринкаст для об/мин:
http://railslab.newrelic.com/2009/01/22/new-relic-rpm
P.S. Я не работаю на Новый Пережиток:)
Да, это походит на хорошую идею. Я никогда не видел его прежде, но я предполагаю, что Вы могли просто зарегистрировать время, которое каждый запрос занимает к DB; затем простой запрос покажет Вам самые медленные запросы.
То, как Вы оптимизируете свое приложение, зависит полностью от Вашего кода; я предполагаю, что нет никакой серебряной пули для этого.
Вот один пример, и другой и все же другой. Посмотрите Google для еще больше.
Первая вещь, которая приходит на ум: можно было отследить время выполнения запросов и если оно передает некоторый порог, который считают нормальным (среднее число, возможно), оно зарегистрировано наряду с некоторой профильной информацией (который отбрасывается иначе).
Это, могло бы также быть выполнимо представить отдельные части запроса (как сбор данных от дб, логика и так далее), с другой стороны сравнить времена с некоторыми средними числами.
Одна ловушка - то, что некоторые страницы/запросы обязаны быть обработанными значительно дольше затем другие из-за различия в объеме "работы", которую они делают. Нужно было бы сохранить большое средние числа для различных частей сайта / различные типы запросов для избавлений от постоянного потока нормальных запросов, которые выполняются дольше дизайном.
Это - очень простой подход, хотя, я уверен, что существуют лучшие способы сделать это.