Что касается Web Api, то статические классы загружаются в память по каждому запросу? Если нет, что следует использовать для использования одного и того же статического класса для каждого запроса и загрузки его в память один раз? Я думаю о загрузке класса, содержащего словарь.Веб-Api и статические классы
ответ
Статический класс загружается один раз, а статические члены распределяются между всеми экземплярами - если вы хотите поделиться словарем, тогда объявите его как статический член класса (самому классу не обязательно быть статическим).
Важно отметить, что если ваше приложение работает под управлением IIS, и вы настроите его, чтобы разрешить несколько экземпляров процессов, тогда эти экземпляры НЕ будут совместно использовать экземпляры статического класса, поскольку они находятся в разных процессах. Это не значение по умолчанию - если вы используете параметры IIS по умолчанию, то только один процесс будет обслуживать запросы, и вы будете в порядке - в противном случае вам понадобится другой подход, например вторичный общий кэш или служба или база данных в памяти, затем становится общим хранилищем для словаря.
Статический тип инициализируется только один раз для домена приложения и только при наличии ссылки. Web API 4.x и предыдущая (не основная версия) размещаются в IIS, который размещает сайт в своем домене домена 1 домена на сайт.
Если вы хотите использовать общий словарь для чтения, вы можете использовать статический тип, он будет загружен один раз, и все ваши загруженные экземпляры могут ссылаться на тот же словарь независимо от того, на какой запрос они были. Я не выступаю за эту идею, поскольку это будет входить в сферу мнений, я просто заявляю, что это возможно.
- 1. Статические классы и безопасность
- 2. Активатор и статические классы
- 3. C++ классы и статические
- 4. Статические классы и эффективность
- 5. Статические классы и заключительные классы в java
- 6. C# наследование и статические классы
- 7. Статические классы и класс дизайна
- 8. Статические классы и глобальные переменные
- 9. Ninject и статические классы - как?
- 10. Статические классы за и против
- 11. Общие классы и статические поля
- 12. Статические классы, методы и основные()
- 13. Java-программирование и статические классы
- 14. статические и постоянные члены, статические классы и узкие места
- 15. Внешние и внутренние классы и статические методы
- 16. Как абстрагировать статические классы
- 17. Почему статические классы закрыты?
- 18. Почему используются статические классы?
- 19. Статические классы с C++
- 20. Когда начинать статические классы?
- 21. Статические классы ... это нормально?
- 22. Статические классы с iPhone
- 23. Статические вложенные классы
- 24. Фрагменты как статические классы
- 25. Абстрактные статические классы Java
- 26. инстанцировании статические вложенные классы
- 27. Статические классы UnitTesting
- 28. Статические классы в сервлете
- 29. Статические методы Java + классы
- 30. Статические/финальные классы java?