сидел раньше на зенно 3.6.. был тяжёлый шаблон работал с процентом успеха ~40%, среднее время успешного выполнения шаблона было ~1.5 часа. перешёл на зенно 5 с надеждой уменьшить время выполнения шаблона плюс за счет того что зенно 5 ест меньше ресурсов надеялся добавить больше потоков и в общем увеличить производительность.
После двух недель ковыряния, правки шаблона под зенно 5 получил следующее :процент успеха упал до <10%, время успешного выполнения с 1.5 часа поменялось на 3-4 часа !!!!
процент успеха упал думаю по причине встроенных тайм аутов в зенно 5. (20 сек мах на загрузку страницы) т.е. там где зенно 3.6 терпеливо ждал загрузки страницы по минуте и более и продолжал не спеша своё дело, зенно 5 ждёт 20 секунд - не дожидается результата и забивает . отсюда и падение процента успешных выполнений.
помимо этого поиск элементов в дереве элементов в зенно 5 реализован хуже чем в зенно 3.6 (я так думаю), эксперимент привиденный ниже этот факт подтверждает (я так думаю).
Эксперимент: простой шаблон заходит на форум, ищет ссылки и записывает время затраченное на поиск элементов с тагом "а" в дереве элементов:
в файл c:/result.txt пишется кол-во успешных выполнений и время в формате кол-во_успешных_выполнений:время
на сервере 1 где стоит зенно 5 , 30 потоков дали результат следующий: 1238:89546 (среднее время 89546/1238=72.33)
на сервере 2 который слабее сервера 1 и стоит зенно 3.6 этот же шаблон в 30 потоков дал результат: 504:7697 (среднее время 7697/504=15.27)!!!!
отсюда и увеличение времени выполнения шаблона с 1.5 часа до 3-4 часов.
Либо я чего то не понимаю , либо в зенно 5 надо поковырять настройки (делал уже это десятки раз), но по моему зенно 5 не смотря на кучу добавленного функционала и устранённых багов в конечном счёте все же хуже чем зенно 3.6.. по крайней мере есть огромное желание поставить на сервер 1 зенно 3.6.
После двух недель ковыряния, правки шаблона под зенно 5 получил следующее :процент успеха упал до <10%, время успешного выполнения с 1.5 часа поменялось на 3-4 часа !!!!
процент успеха упал думаю по причине встроенных тайм аутов в зенно 5. (20 сек мах на загрузку страницы) т.е. там где зенно 3.6 терпеливо ждал загрузки страницы по минуте и более и продолжал не спеша своё дело, зенно 5 ждёт 20 секунд - не дожидается результата и забивает . отсюда и падение процента успешных выполнений.
помимо этого поиск элементов в дереве элементов в зенно 5 реализован хуже чем в зенно 3.6 (я так думаю), эксперимент привиденный ниже этот факт подтверждает (я так думаю).
Эксперимент: простой шаблон заходит на форум, ищет ссылки и записывает время затраченное на поиск элементов с тагом "а" в дереве элементов:
в файл c:/result.txt пишется кол-во успешных выполнений и время в формате кол-во_успешных_выполнений:время
PHP:
public readonly object locker= new object();
public int ExecuteCode(Instance instance, IZennoPosterProjectModel project)
{
int executionResult = 0;
instance.MainTab.Navigate("http://zennolab.com/discussion/showthread.php?11044-ZennoPoster-5-%28%D0%B1%D0%B8%D0%BB%D0%B4-5-0-4-1-%D0%BE%D1%82-10-08-2013%29-hotfix-%D0%B4%D0%BB%D1%8F-5-0-4-1");
instance.MainTab.WaitDownloading();
//calculating instance.MainTab.FindElementsByTags("a") executing time
DateTime t = DateTime.Now;
HtmlElementCollection hec = instance.MainTab.FindElementsByTags("a");
int time = (int)(DateTime.Now-t).TotalMilliseconds;
//if ok- save time
int i = hec.Count;
if(i==340)
Save(time);
Thread.Sleep(23*1000);
return executionResult;
}
public void Save(int time)
{
lock(locker)
{
TextReader tr = new StreamReader("c://result.txt");
string s =tr.ReadLine();
int i= Convert.ToInt32(s.Split(':')[0])+1;
int totaltime=Convert.ToInt32(s.Split(':')[1]);
tr.Close();
TextWriter tw= new StreamWriter("c://result.txt",false);
s=i+":"+(totaltime+time);
tw.WriteLine(s);
tw.Close();
}
}
на сервере 1 где стоит зенно 5 , 30 потоков дали результат следующий: 1238:89546 (среднее время 89546/1238=72.33)
на сервере 2 который слабее сервера 1 и стоит зенно 3.6 этот же шаблон в 30 потоков дал результат: 504:7697 (среднее время 7697/504=15.27)!!!!
отсюда и увеличение времени выполнения шаблона с 1.5 часа до 3-4 часов.
Либо я чего то не понимаю , либо в зенно 5 надо поковырять настройки (делал уже это десятки раз), но по моему зенно 5 не смотря на кучу добавленного функционала и устранённых багов в конечном счёте все же хуже чем зенно 3.6.. по крайней мере есть огромное желание поставить на сервер 1 зенно 3.6.