rtyug

rtyug
Рейтинг
263
Регистрация
13.05.2009
Должность
perl,php,sql,javascript(jquery),freebsd/linux
Интересы
perl,php,sql,javascript(jquery),freebsd/linux
https://minfin.com.ua/blogs/94589307/115366/
netwind:
rtyug, у такой схемы низкий порог масштабируемости. Он думает, что один аккаунт начнет потреблять столько ресурсов, что единичного сервера не хватит. Ну и надежности повышенной хочется.
Но я думаю, что такой клиент просто сбежит, чем будет платить за специальный супертариф кластерного виртуального хостинга. Такому клиенту выгодней арендовать выделенный сервер и заняться оптимизацией. На своем сервере это гораздо удобнее.

понятно, тут скоре всего если серверов будет 10-20-30 штук, то может будет выгода, а если 2-3-4, то разница минимальная...

если нельзя через опции встроенные, то думаю что можно через API...

перед тем как отдается файлы можно сделать какие действия, наприер, на паузу поставить и т.д.

package download;                                                                                                                                            

use strict;
use nginx;
use Crypt::HCE_MD5;

my $dl_key = "re2lgr5";
my $upload_dir="/home/file/cgi-bin/uploads";

sub handler {
my $r = shift;

my $hce = Crypt::HCE_MD5->new($dl_key,"XFile");
($_) = $r->filename=~/\/(\w+)\/[^\/]+$/;
my $l;
tr|a-z2-7|\0-\37|;
$_=unpack('B*',$_);
s/000(.....)/$1/g;
$l=length;
$_=substr($_,0,$l & ~7) if $l & 7;
$_=pack('B*',$_);

my ($srv_id,$file_id,$usr_id,$dx,$id,$dmode,$i1,$i2,$i3,$i4,$expire) = unpack("SLLSA12AC4L", $hce->hce_block_decrypt($_) );
$dx=sprintf("%05d",$dx);

if($r->remote_addr !~ /^$i1\.$i2\./)
{
$r->internal_redirect("/error_wrong_ip.html");
}
elsif($expire<time)
{
$r->internal_redirect("/error_expired.html");
}
elsif(!-f "$upload_dir/$dx/$id")
{
$r->internal_redirect("/error_nofile.html");
}
else
{
$r->header_out("Content-Disposition","attachment");
$r->internal_redirect("/download_$dmode/$dx/$id?id=$file_id&usr=$usr_id".$r->args);
}

return OK;
}

1;

      location /d/ {                                                          

perl download::handler;
}

gdb

дамп отлаки можно посмотереть, если оно включено...

всмысле "последовательное выполнение запросов" ? нужно чтобы в очередь ставило или чтобы выдвало ошибку 503?

nginx имеет хороший API, где можно выполнить различные фокусы перед отдачей файла...

1) список спамеров по форумам и сайтам

http://www.stopforumspam.com/downloads/bannedips.zip

http://sblam.com/blacklist.txt

и того: спама будет мало, порядка 2-4 сообщений в сутки примерно

2) reCaptcha от google

3) формы(у) отправки поставить чтобы данные в json отправлялись в скрипт, боты не поймут :)

westfild:

Мои мысли: систему хранения писем думаем сделать на основе DBMail - все таки управляться с Mysql привычнее и надежнее (imho).

скорее всего лучше PostgreSQL, будет PL/Perl, PLpgSQL

westfild:
Какой поставить MTA - тут вообще без каких-либо мыслей.

в DBMail есть собственный MTA встроенный, но можно Exim/Postfix, Exim мощнее, смотря какие функции будут в вашем MTA... многое можно сделать в триггерах и процедурах в DBMail :)

если будет много коннектов, то сервер может не выдержать, кластер с MTA какой-то надо будет ставить

pupseg, вопрос... скорее к телепатам

от куда тут знают то, что там сделал тот программист?

"дырка" - может быть разная...

например, можно скрыть часть исходников или все (разными способами), и там поставить API которое будет принимать что угодно...

почему программист имет доступ на Ваш оригинальный сервер? надо было поставить тестовый сервер?!

почему бы не откатить бэкап (бэкап исходников) до того как ваш программист имел доступ на сервер? и проблемы не будет!!

ЗЫ: кстати, mod_security может скрыть множество дыр

ЗЫЫ: вообще, можно посмотреть внимательно код, и проанализировать возможность SQL-инъекции... если там ORM стоит, SQL-инъекции не будет...

6666:
В смысле - посмотреть не сам движок, а если у кого есть подобный сайт

всмысле? ты хочешь просто дизайн какой-то заценить?

или интересует именно такой посещаемый сайт который раскрутили?

я не знаю что за сайта у Вас, может переделывать ничего не надо, а просто скрипт добавить...

ну mod_rewrite есть...

в некоторых случаях можно отредиректить

еще, попробуйте VDS или хостинг

интересно, почему бы не поставить центральный биллинг и кучу серверов, биллинг будет управлять этими серверами, на сервераз ISP manager или что-то другое, зачем тут нужен именно кластер?

Всего: 2055