![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как быстрее переслать данные клиенту
Alek_1 © (2007-01-15 16:10:00)У меня есть программка которая делает выборку с базы файрберд. к ней подключается программка клиент которая затем эти, выбраные, данные получает.
так вот записей при пересылке может быть 20000.
я строю строку из записей и по тсп ип их пересыаю на клиентика...
но это долго :( (построение стрроки очень долго тянется :( )
можно ли както по другому отослать? сохранить там записи в stream например и потом уже отправить...??
Использую для выборки TIBDataSet
строку строю примерно так
for i:=0 to i2 do begin
ln:=Length(SQL.FieldByName('ID_ZI').AsString);
str:=SQL.FieldByName('ID_ZI').AsString;
result:=result+Chr(ln)+str;
ln:=Length(SQL.FieldByName('DT').AsString);
str:=SQL.FieldByName('DT').AsString;
result:=result+Chr(ln)+str;
BorisMor (2007-01-16 18:47:00) [1]
> подожди...а причем тут вебсервис и обычное приложение...
> ? или там есть похожая ситуация? :)
Вам намекают, что данные через Интернет можно передавать...
И вообще нормальные поцаны XML используют для межпрограммной передачи данных :)
Если насчет вашего вопроса, то могу предположить что скорость маленькая потому что со string-строкамми работаете.
Наверное лучше
- Pchar использовать
- или заранее указывать длину строки через SetLength, а затем вставлять данные в эту строку
- попробовать TStringList
Это те направления, куда бы я копал...
Alek_1 (2007-01-16 17:14:00) [2]подожди...а причем тут вебсервис и обычное приложение...? или там есть похожая ситуация? :)
Плохиш (2007-01-15 16:49:00) [3]Эта тема в руководстве разработчика, идущем с Делфи, называется, в вольном переводе, создание WebServices-приложений.
Alek_1 (2007-01-15 16:41:00) [4]потому что сервер БД стоит в датацентре, а клиенты разбросаны по разным компаниям... в которых свои настройки сетевой безопасности...и иногда очень сложно выбить чтобы их админ открыл порт для программки, а если их еще и два будет...уууу плохо будеть...
Sergey13 (2007-01-15 16:38:00) [5]> [6] Alek_1 (15.01.07 16:34)
А надо ли так сложно то? Почему клиент не может напрямую подключиться в БД и взять что надо?
Alek_1 (2007-01-15 16:34:00) [6]тоесть мне нужен максимально тонкий клиент который подключается по через 1 порт подлючается к моему серверному приложению....и получает оттудава новости, записи в бд, чат, и другие дополнительные штучки....
и нужно с сервера в клиентик как можно быстрее отправлять выбраные данные...
Sergey13 (2007-01-15 16:30:00) [7]> [4] Alek_1 (15.01.07 16:27)
Т.е. нормальные герои всегда идут в обход?
Alek_1 (2007-01-15 16:27:00) [8]такс...а что еще мона придумать? :)
у кого еще какие мысли по этому поводу?
Sergey13 (2007-01-15 16:22:00) [9]> [2] Alek_1 (15.01.07 16:21)
Пусть "клиентик" сам ее и запросит.
Alek_1 (2007-01-15 16:21:00) [10]в книжке про мидас читал...но мне не хочется его использовать...
вообщем нужно сделать выборку на сервере, и передать ее как можно быстрее на клиентик... как же это лучше сделать?
Sergey13 (2007-01-15 16:16:00) [11]> [0] Alek_1 (15.01.07 16:10)
Может стоит книжку прочитать и не изобретать велик с квадратными колесами?