1 Кэш базы данных
Обычно базы данных поддерживают кэширование результатов запросов и имеют сложные механизмы, обеспечивающие эффективность кэширования. Для таких баз данных, как MySQL и Oracle, повышение производительности системы за счет разумной конфигурации кэша весьма существенно.
2 Кэш, управляемый подключением к данным.
Такие как ADODB PHP, драйвер подключения J2EE и даже ORM, такие как Hibernate, также считаются соединителями. Эффективный механизм кэширования здесь не так уж силен. Одним из лучших преимуществ использования этого шага для реализации кэширования является то, что способ получения данных может остаться неизменным. Например, я звоню
Оператор $db->CacheGetAll("select * from table"); не нужно изменять, и кэширование может быть реализовано прозрачно. В основном это применяется к некоторым данным, которые не сильно изменяются. Например, некоторые словари данных изменяются нечасто.
3 Кэш системного уровня
Вы можете кэшировать необходимые данные самостоятельно через библиотеку Cache в системе. Например, создание меню пня потребляет много ресурсов, поэтому вы можете кэшировать созданное дерево. Недостаток этого в том, что при обновлении некоторых частей дерева необходимо вручную обновлять содержимое кэша.
Используемые библиотеки кэширования могут иметь разные методы кэширования. Некоторые помещают контент на жесткий диск, а некоторые помещают его в память. Если вы имитируете контент как жесткий диск для кэширования, скорость, конечно, можно значительно улучшить.
4 Кэширование на уровне страницы
Чаще всего это используется в системах управления контентом. То есть генерировать статические страницы. Механизм управления кэшем здесь самый сложный, и панацеи вообще нет, только конкретный анализ конкретных ситуаций.
Обычно при создании статических листьев вам необходимо иметь механизм удаления устаревших или редко используемых листьев, чтобы обеспечить скорость получения статических листьев.
5 методов использования предварительно скомпилированных листьев и загрузки в виде FastCGI
Для PHP можно использовать механизмы компиляции, такие как Zend, а для самого JSP он компилируется заранее. Принцип FastCGI заключается в предварительной загрузке сценария без необходимости его чтения каждый раз при его выполнении. Это то же самое, что JSP предварительно программируется в сервлете и затем загружается.
6 передний кэш
Вы можете использовать Squid в качестве внешнего кэша для вашего веб-сервера.
7. Создайте кластер
Кластеризируйте базу данных, кластеризируйте веб-сервер и кластеризируйте клиентскую машину Squild.
Для новичков, если ваша программа случайно умерла, сначала нужно проверить, нет ли ошибок в коде и нет ли утечек памяти. Если их нет, то проблема обычно кроется в подключении к базе данных.
Комплексно применяя вышеперечисленные методы кэширования, можно легко разрабатывать высоконагруженные веб-приложения.
http://blog.csdn.net/danny_xcz/archive/2006/10/13/1332555.aspx