Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на PHP

Выпуск № 090
от 27.01.2004, 07:00

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 144
Отправлено ответов: 200
Активность: 138.8 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Dimonuch
Статус: Доверительный
Общий рейтинг: 110.15
[Подробней >>]
samum2000
Статус: Опытный
Общий рейтинг: 118.91
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 139. Доброго времени суток, многоуважаемые коллеги. Передо мной встала такая задача - написать скрипт, ко... (ответов: 1)
Вопрос № 140. Здравствуйте! У меня вопрос по оптимизации PHP+MySQL. В БД хранятся строки, которые могут повторятьс... (ответов: 2)

Вопросов: 2, ответов: 3


 Вопрос № 139

Доброго времени суток, многоуважаемые коллеги.
Передо мной встала такая задача - написать скрипт, который динамически формирует некоторый файл и отдает его клиенту. В принципе, с самим написанием такого скрипта проблем нету, но файл может получиться большой и у клиентов с нестабильной связью можгут возникнуть проблемы с его загрузкой.
Отсюда вопрос, как мне реализовать в данном скрипте поддержку докачки???
Заранее спасибо.



Вопрос отправлен: 23.01.2004, 16:00
Отправитель: Gibbel

[Следующий вопрос >>] [Список вопросов]

Отвечает Dimonuch

Добрый день, Gibbel!
мой тебе совет:
формируй этот файл и выкладывай его на диск, в каталог ФТП-сервера. И пусть юзеры его оттуда тянут. Тут уже и специальные программы закачки можно использовать и тд.

Ответ отправлен: 23.01.2004, 16:29
Отправитель: Dimonuch


 Вопрос № 140

Здравствуйте!
У меня вопрос по оптимизации PHP+MySQL.
В БД хранятся строки, которые могут повторяться.
Их можно удалять. Для этого в таблице каждой строке соответствует уникальный номер.
Изначально номера идут подряд: 1 2 3 4 5 6 7
После удалений пространство номеров сожержит "дырки":
1 3 6 7.
Поэтому при добавлении новой строки я ищу свободный идентификатор, начиная с 1, делая это из PHP-сценария.
Вопрос1: Не будет ли такая схема "тормозить" при значительном количестве строк (~100000)?
Вопрос2: Как оптимально идентифицировать записи в БД MySQL
для быстрого их добавления?
Вопрос3: Можно ли эту работу (поиск подходящего идентификатора) "поручить" СУБД, а не сценарию?


Приложение:


Вопрос отправлен: 24.01.2004, 02:42
Отправитель: Александр

[Следующий вопрос >>] [Список вопросов]

Отвечает Dimonuch

Доброе время суток, Александр!
все неправильно. Ни в коем случае не делай так. Представь сколько запросов будешь делать по больших значениях.
Такой вопрос решается по-другому. Мускул сам может вести идентификаторы записей.
Для этого достаточно, создавая таблицу мускула, указать что-то типа:
create table admins
(
id int not null auto_increment primary key,
login char(12) binary not null
}
Поле id будет уникальным идентификатором. Мускул сам будет назначать его при добавлении записи. Тебе даже думать об этом не нужно.

Ответ отправлен: 25.01.2004, 23:02
Отправитель: Dimonuch


Отвечает samum2000

Здравствуйте, Александр!
1. Мне думается, что при значительном объеме строк такая операция действительно будет тормозить, особенно если эти дырки окажутся где-то в конце. Я вижу несколько выходов. Во-первых, можно иметь дополнительную таблицу, в которой будут перечислены дыры, и в дальнейшем не производить поиск, а брать значения оттуда. Во-вторых, можно просто оставлять дыры, и добавлять записи в конец таблицы, а затем периодически проводить "переиндексацию" таблицы.
2. Не совсем понятно про оптимальную идентификацию записей - у тебя же есть уникальное поле, значит с идентификацией проблем быть не должно, а скорость здесь вообще не причем.
3. ИМХО, нет.

Ответ отправлен: 25.01.2004, 12:38
Отправитель: samum2000



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (23)
C / C++ (17)
Perl (3)
Builder / Delphi (17)
Pascal (17)
Basic / VBA (6)
Java / JavaScript (4)
PHP (14)
Криптография (5)
WinAPI (10)
Радиоэлектроника (4)
Пользователю
Windows 95/98/Me (41)
Windows NT/2000/XP (57)
"Железо" (31)
Поиск информации (18)
Администратору
Windows NT/2000/XP (31)
Linux / Unix (10)
Юристу
Гражданское право (17)
Семейное право (11)
Трудовое право (13)
КоАП (12)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2004 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное