16/02/2011
Александр Фролов:
нам вообще не нужно обращаться к СУБД за данными, а мы берем их непосредственно из оперативной памяти. Это дает максимальную скорость выборки.
нам вообще не нужно обращаться к СУБД за данными, а мы берем их непосредственно из оперативной памяти. Это дает максимальную скорость выборки.
По идее, для того, чтобы просто "взять данные из оперативной памяти", либо с жесткого диска, либо откуда-то еще, нужно их предварительное упорядочивание, изменение, и тд. А этим как раз и занимается СУБД.
16/02/2011
Цитата:
По идее, для того, чтобы просто "взять данные из оперативной памяти", либо с жесткого диска, либо откуда-то еще, нужно их предварительное упорядочивание, изменение, и тд. А этим как раз и занимается СУБД
По идее, для того, чтобы просто "взять данные из оперативной памяти", либо с жесткого диска, либо откуда-то еще, нужно их предварительное упорядочивание, изменение, и тд. А этим как раз и занимается СУБД
СУБД позволяет нам выбрать из базы результаты запросов по тем или иным критериям, например, при подборе товаров по параметрам.
Кеширование позволяет сохранить в оперативной памяти результаты уже сделанных запросов. Это позволяет не выполнять повторные запросы с теми же самыми параметрами, а получить из оперативной памяти выбранные ранее данные.
Т.е. кеширование не исключает, а дополняет использование СУБД. Оно позволяет существенно сократить количество запросов за счет исключения повторных запросов, результаты которых были получены ранее и сохранены.
17/02/2011
Александр Фролов:
Т.е. кеширование не исключает, а дополняет использование СУБД.
Т.е. кеширование не исключает, а дополняет использование СУБД.
Кеш, как я понимаю, это всего лишь данные размещенные на носителе с быстрым доступом (например ОЗУ). Нормальная СУБД должна работать с разными данными.
Кэширование, может серьёзно тормозить лишней операцией проверки - есть ли данные в кеше, и если есть, то брать из кеша, а не из основной базы. Кроме того, если данных очень много, то требуется их специальное упорядочивание уже в кеше, а это, опять таки, как ни крути, требует использование какой либо СУБД.
Вывод - при большом обьеме данных не обойтись без СУБД. В итоге, вопрос только стоит - сделали ли вы СУБД лучше имеющихся. Например, лучше MySQL.
17/02/2011
Цитата:
Кеш, как я понимаю, это всего лишь данные размещенные на носителе с быстрым доступом (например ОЗУ). Нормальная СУБД должна работать с разными данными.
Кеш, как я понимаю, это всего лишь данные размещенные на носителе с быстрым доступом (например ОЗУ). Нормальная СУБД должна работать с разными данными.
Как я уже говорил, кеш не заменяет СУБД, а только ускоряет выборку данных из нее, устраняя дублирующиеся запросы.
Цитата:
Кэширование, может серьёзно тормозить лишней операцией проверки - есть ли данные в кеше, и если есть, то брать из кеша, а не из основной базы. Кроме того, если данных очень много, то требуется их специальное упорядочивание уже в кеше, а это, опять таки, как ни крути, требует использование какой либо СУБД.
Кэширование, может серьёзно тормозить лишней операцией проверки - есть ли данные в кеше, и если есть, то брать из кеша, а не из основной базы. Кроме того, если данных очень много, то требуется их специальное упорядочивание уже в кеше, а это, опять таки, как ни крути, требует использование какой либо СУБД.
Да нет, как раз наоборот. Попробуйте memcached - получите ускорение в сотни раз, если, конечно, все сделаете правильно.
СУБД разумеется нужна всегда, но представьте себе, что на высокопосещаемых сайтах тысячи пользователей в секунду обращаются к какой-нибудь странице, содержимое которой не меняется, а для ее формирования выполняются десятки и сотни обращений к СУБД. При отсутствии кеширования СУБД будет просто завалена одинаковыми запросами и ресурсы сервера будут быстро исчерпаны.
Да, грамотно настроенная СУБД не будет каждый раз считывать данные с диска, но, как я уже говорил, даже с учетом этого СУБД потратит на обработку таких запросов гораздо больше времени, чем получится при прямой выборке из оперативной памяти. Даже с учетом проверки существования данных в кеше, которая, кстати говоря, выполняется практически мгновенно по сравнению с запросом к СУБД.
Цитата:
Вывод - при большом обьеме данных не обойтись без СУБД. В итоге, вопрос только стоит - сделали ли вы СУБД лучше имеющихся. Например, лучше MySQL.
Вывод - при большом обьеме данных не обойтись без СУБД. В итоге, вопрос только стоит - сделали ли вы СУБД лучше имеющихся. Например, лучше MySQL.
Мы не делали СУБД, в этом нет необходимости. Мы подключили к MySQL систему кеширования, встроив ее вызовы непосредственно в наше программное обеспечение. И это в итоге дало нам огромный прирост в производительности на повторяющихся запросах.
17/02/2011
Александр Фролов:
Мы не делали СУБД, в этом нет необходимости. Мы подключили к MySQL систему кеширования, встроив ее вызовы непосредственно в наше программное обеспечение. И это в итоге дало нам огромный прирост в производительности на повторяющихся запросах.
Мы не делали СУБД, в этом нет необходимости. Мы подключили к MySQL систему кеширования, встроив ее вызовы непосредственно в наше программное обеспечение. И это в итоге дало нам огромный прирост в производительности на повторяющихся запросах.
Система кеширования это код на ПХП проверяющий наличие страницы на диске и если нет то создающий ее из базы? Это называется система кешированием?
Перестаньте хвалиться нет аудитории...
18/02/2011
эх, тема то вроде о престе, вот у меня конкретно вопрос по престе. Может ктонибудь сталкивался с модулем рассчёта наложенного платежа почты России? если сталкивались то подскажите плиз
18/02/2011
easywind:
Система кеширования это код на ПХП проверяющий наличие страницы на диске и если нет то создающий ее из базы? Это называется система кешированием?
Система кеширования это код на ПХП проверяющий наличие страницы на диске и если нет то создающий ее из базы? Это называется система кешированием?
Во многих общедоступных движках кеширование организовано именно так, но это не наш метод.
Мы кешируем данные не в файлы на диск, а в оперативную память, что намного эффективнее.
Мы вообще не используем PHP из-за того что он очень медленно работает и там постоянно находят дыры в безопасности.
Система кеширования, как я уже неоднократно писал, взята готовая, это memcached. Вызовы memcached встроены в код наших приложений, и мы можем кешировать любые данные, кстати, а не только выборки из СУБД. Почитайте на сайте memcached, как она устроена, и поймете, что это очень серьезное и быстро работающее приложение.
21/02/2011
Антон Копысов:
эх, тема то вроде о престе, вот у меня конкретно вопрос по престе. Может ктонибудь сталкивался с модулем рассчёта наложенного платежа почты России? если сталкивались то подскажите плиз
эх, тема то вроде о престе, вот у меня конкретно вопрос по престе. Может ктонибудь сталкивался с модулем рассчёта наложенного платежа почты России? если сталкивались то подскажите плиз
Можно самому настроить стоимость доставки. Не 100% точно, но максимально приближено к тарифам почты.
22/02/2011
antonros:
Можно самому настроить стоимость доставки. Не 100% точно, но максимально приближено к тарифам почты.
Можно самому настроить стоимость доставки. Не 100% точно, но максимально приближено к тарифам почты.
если не трудно то подскажите как, буду благодарен
23/02/2011
Антон Копысов:
если не трудно то подскажите как, буду благодарен
если не трудно то подскажите как, буду благодарен
Если только вкратце:
Во вкладке "Континенты" прописываем 5 поясов
Во вкладке "Регионы" каждому региону присваиваем свой пояс.
Во вкладке "Шкала цен" прописываем диапазоны весов. Например от 1 до 2кг, от 3 до 4кг. и т.д.
В основной вкладке "Пересылка" Присваиваем каждой паре пояс-диапазон веса свою стоимость.
Например 1 пояс от 1до2кг = 150руб, 2 пояс от1 до2кг = 200руб и т.д.
Ответить