Я нахожусь в начале проекта asp.net c # среднего размера, и у меня есть требования к производительности приложения, чтобы иметь возможность поддерживать около 400+ одновременных пользователей.
Какие вещи мне нужно иметь в виду при разработке приложения, чтобы оно соответствовало таким стандартам производительности и доступности? Страницу нужно обслужить менее чем за 5 секунд. Я планирую разместить приложение и базу данных на отдельных физических машинах.С точки зрения кодирования и многоуровневого приложения: -
- Если уровень базы данных будет открыт для уровня приложения через службу
WCF, будет ли это снижать производительность? Должен ли я использовать вместо этого прямое TCP-соединение
?
- Будет ли иметь значение, использую ли я Entity framework или какой-либо другой ORM, или блок данных корпоративной библиотеки?
- Должен ли я регистрировать исключения в базе данных или текстовом файле ?
- Как во время разработки проверить, будет ли создаваемый код в конечном итоге соответствовать этим стандартам производительности? Или это вообще то, о чем мне нужно беспокоиться на этапе разработки?
- Нужно ли мне помещать код подключения к базе данных и другие классы, содержащие данные поиска, которые редко меняют в течение всего срока службы приложения, в статических классах, чтобы он был доступен в течение всего срока службы приложения?
- Какую политику кэширования мне следует применять?
- Какие бесплатные инструменты я могу использовать для измерения и тестирования производительности? Я знаю редкие инструменты измерения производительности, но у них высокая стоимость лицензии, поэтому я бы предпочел бесплатные инструменты.
Прошу прощения, если этот вопрос слишком открытый. Есть какие-нибудь советы или мысли о том, как мне поступить?
Спасибо за ваше время.
задан user20358 14 October 2011 в 08:21
поделиться