mod_plsql

From
Vladimir Goncharov ()
To
Andrey Prokopenko ()
Date
2002-07-12T12:27:14Z
Area
RU.DBMS.ORACLE
Hello Andrey,

On 11/Jul/30 at 13:34 you wrote:

 VG>> В mod_owa это страшный сон. В mod_plsql это одна(!) строчка.
 AP>> И какая же это магическая "одна строчка", особенно для
 VG> динамических страниц ? Подробнее для публики можно ?

 VG> owa_cache.set_expires(минуты,'SYSTEM');
 AP> Лукавишь, однако.

Во нахал.
Ты сам как кеширование динамических страниц делал в mod_owa?
Почему же ты его делал неделю с разбором исходников, перепиской с автором (и не сделал, кстати -- пришлось админу доделывать, бо волновался за сервер).

 AP> Этот пакет функционален и под modowa.

Cам-то это проверял?
Впрочем, это не делает это менее функциональным в modplsql.

 AP> Кроме того просто тупо задавать время жизни странички неактуально.

Все зависит от приложения. Для информационного ресурса, это более чем актуально -- когда приходят тысячи запросов в минуту и из них всего несколько десятков уникальных, то это дешевое решение для того, чтобы быстро, без переписывания приложения поднять производительность в разы.

 AP> BTW: это можно и штатными средствами Апача сделать.
 AP> Корректное (!!!) определение актуальности и времени жизни 

Нельзя. Ты слышал звон (от меня, кстати) и со мной же споришь :-)
Бесплатный урок: Апачем мы в лучшем случае можем изменить (добавить) http заголовок expires, но это нам не даст никакого эффекта, если мы дополнительно не сгородим отдельный сервер с reverse proxy, так как запросы идут от разных клиентов и тебе для каждого из них придется генерить ответ. 1000  одинаковых запросов в минуту пришло на страницу -- 1000 раз работает процедура на oracle: добавляешь ты expires или нет. Поставив же кеширование в кеше modplsql на 1 секунду, ты, получив 1000 одинаковых запросов в минуту, отделываешся только 60 вызовами процедуры.

В крайнем случае можно прикрутить mod_proxy в качестве (reverse proxy). Чего я и делал, когда использовали mod_owa. Заодно обнаружил в mod_proxy баги под Win, а когда залез в исходники, то отказался от его использования, бо криво :-)

 AP> динамической странички - далеко не тривиальная задача. Думаю, ты 
 AP> сам как соавтор методики кеширования, это понимаешь лучше других.

Автор, а не соавтор. Нахал :-). И не мотодики (она в rfc2616 сто лет как описана), а реализации для oracle. modowa или modplsql не важно, но с modplsql значительно эффективнее.

 AP> Это не бага а позиция автора, и я этот вариант как девелопер, 
 AP> полностью поддерживаю.

"Я прав, потому что я девелопер" сильный аргумент. С ним даже не поспоришь.

 AP> Якобы "неудобства" обходятся 3-мя строчками кода: написанием 
 AP> перегружаемой процедуры,
 AP> вызывающей исходную. Зато манипуляции с blob-контентом упрощаются 
 AP> до предела.

А в modplsql вообще писать ничего не надо. Помоему это проще :-)

 AP> Снимается жесткое ограничение mod_plsql на работу с 
 AP> потоком

Огласите весь список ограничений работы с потоком, пожалуйста. Мне исключительно для лющего развития. Начав с определдения потока, бо, не уверен, что ваши слова не расходятся с вашими мыслями.

 AP> , т.е. если в случае mod_plsql
 AP> закачка ограничена одной системной процедурой, задаваемой в конфиге 
 AP> DAD,

Гы-гы. Ля-ля. Девелопер. Хи-хи. Для закачки блобов процедура в DAD'е не указывается. Девелопер. Хи-хи. Ха-ха.

 AP>  то в случае modowa это может быть лювая процедура с соотв. 
 AP> параметрами. Подробнее см. доку по modowa.

Ну я читал доку на оба продукта в отличии от :-)
На mod_owa, кстати, в разы внимательнее, бо все там с трудом работает (ты сам сколько раз с автором связывался из-за непоняток? вот я об этом).

 VG> Для публики: вам придется переписать свое приложение, если html 
 VG> формы передают формы методом POST и с ENCTYPE="multipart/form-
 VG> data", так как
 VG> разработчик modowa решил, что в этом случае это будет не простая
 VG> форма, а upload файла, которую надо принимать не так, как все 
 VG> формы, а специально придуманным способом, описанным в документации.
 VG> Если использовать его метод по получению файлов и простых форм, то 
 VG> в будушем отказаться от modowa будет уже невозможно, так как вряд 
 VG> ли еще
 VG> кому придет в голову такая странная идея -- считать признаком 
 VG> upload'а установленный ENCTYPE="multipart/form-data".
 AP> Отказаться в пользу чего ? mod_plsql не менее специфичен чем 
 AP> modowa. Рассуждения админа, но не девелопера.

У меня вчера мухобойку отобрали, которую я с удивлением под столом у себя обнаружил. Знаешь зачем? Тебя за твое девелоперство бить :-)

Отобрали быстро. Клевая мухобойка такая.

Cheers,
\Vladimir

--- MadMED v0.43i/W32 (Mar 10 2000 08:11:02)
 * Origin: http://www.i4j.net/forum/ (2:5020/115.511)
SEEN-BY: 50/523 993 51/7 450/102 452/25 461/33 640 463/220 464/34 36 465/204
SEEN-BY: 466/20 467/70 95 469/125 550/5068 4615/21 4623/55 4625/9 4626/6
SEEN-BY: 4631/13 4641/444 4643/19 4653/10 4657/50 5000/5000 5001/27 77
SEEN-BY: 5002/5002 5003/9 34 5004/16 5005/44 5006/1 5009/9 5010/70 77 222
SEEN-BY: 5011/13 5012/1 5015/4 28 5019/22 28 5020/20 37 52 52 69 79 104 114
SEEN-BY: 5020/115 115 128 150 175 194 238 238 348 362 392 400 496 642 647
SEEN-BY: 5020/732 753 758 760 768 870 902 921 982 1057 1100 1169 1200 1212
SEEN-BY: 5020/1234 1301 1423 1535 1626 1642 1694 1873 1930 1951 2020 2200
SEEN-BY: 5020/3637 4400 4441 5021/3 29 5022/5 5023/11 5025/3 5026/45 78
SEEN-BY: 5028/51 5029/1 50 5030/115 175 195 251 382 448 613 757 920 953 1016
SEEN-BY: 5030/1023 1400 1900 5031/26 5032/6 16 5033/1 5034/1 5035/10 5036/1
SEEN-BY: 5036/13 5037/21 5038/7 5040/33 47 5041/4 5042/8 5045/7 42 5049/64
SEEN-BY: 5049/125 5050/9 5051/35 5052/4 5053/16 18 777 5054/1 9 10 30 37 50
SEEN-BY: 5054/79 5056/16 5058/24 1000 5059/10 5060/90 5061/6 15 5063/27 60
SEEN-BY: 5064/5 7 35 36 5066/18 5069/128 5070/26 66 5071/1 5075/10 5077/3
SEEN-BY: 5078/20 5079/36 45 49 5080/80 111 301 5081/3 5082/6 5083/13 21
SEEN-BY: 5085/13 75 5090/2 91 1029 5091/100 5093/27 5095/1 5100/8 113 6009/8
SEEN-BY: 6023/1 6028/1 6035/1 6037/1 6083/1
PATH: 5020/115 238 52 5054/1 79