Вы получите максимальную производительность, если вы будете хранить данные и прочие параметры вашей базы данных на оптимальной платформе. Наилучшая платформа вашего конкретного элемента зависит от того, как к этому элементу обращаются и как его обновляют. Например, вы можете пожелать хранить локальную копию серверной таблицы, такую как каталог почтовых кодов, которая используется в качестве поисковой таблицы и обновлять ее только в том случае, если она обновлена на сервере.
В приведенной ниже таблице перечислены наиболее общие элементы приложения и примеры их размещения с целью обеспечения максимальной производительности.
Элемент | Размещение | Тип | Замечания |
---|---|---|---|
Таблицы |
Локальное |
Локальные копии серверных таблиц, используемых только для поиска; небольшие, нечасто изменяемые таблицы |
Используйте метку времени, если это поддерживается удаленным сервером, для сравнения и необязательного обновления локальной таблицы для соответствия любым измнениям в исходной серверной таблице. |
|
Удаленное |
Большие или часто изменяемые таблицы |
|
Правила |
Локальное |
Правила на удаленных представлениях |
Вы можете использовать DBSETPROP( ) для хранения правил уровня поля и записи на удаленном представлении. Ваше приложение может использовать такие локальные правила для проверки действительности данных до посылки их в качестве обновлений для удаленных таблиц. |
|
Удаленное |
Правила уровна строки и колонки на удаленных исходных таблицах |
|
Хранимые процедуры |
Локальное |
Хранимые процедуры Visual FoxPro |
|
|
Удаленное |
Хранимые процедуры на удаленном сервере |
Используйте функцию SQL pass-through SQLEXEC() для вызова удаленной процедуры на сервере. |
Транзакции |
Локальное |
Транзакции Visual FoxPro |
|
|
Удаленное |
Серверные транзакции |
|
Триггеры |
Локальные представления |
Не имеется триггеров на представлениях |
|
|
Удаленное |
Серверные триггеры |
|
Для снижения сетевого траффика во время поиска, вы можете выбрать хранение не только нечасто происходящих изменение но и часто изменяемых поисковых таблиц локально. Например, вы можете сгрузить список потребителей компании и обновлять его только тогда, когда изменяется информация о потребителях.
Для осуществления этого, вы можете запрограммировать ваше приложение для сравнения метки времени локальной копии таблицы с меткой времени на удаленных данных (если ваш удаленный сервер поддерживает метки времени) и обновлять локальную копию при изменении серверной таблицы. Вы можете, кроме того, добавить в вашу форму командную кнопку, которая обеспечить назамедлительную загрузку таблицы, что позволит вашему пользователю обновлять его локальную копию таблицы по необходимости.
Смотрите также
Концепции
Улучшение производительности через доступ к данным на основе установокВыбор правильных методов
Быстрая разработка приложений
Конструирование клиент/серверного приложения для обеспечения наивысшей производительности
Прочие ресурсы
Планирование клиент/серверного приложенийОптимизация производительности клиент/серверного приложения
Расширение приложений с помощью технологии SQL Pass-Through