Да, много времени прошло с того момента как я первый раз упомянул в блоге о программе “Пинговалка” написанной в Lazarus под Ubuntu. И теперь, спустя практически 10 месяцев с того момента, написана новая версия программы для работы с ping-сервисами. Правда, из-за неприятной неожиданности пришлось расстаться с идеей переноса всего проекта под Delphi. Но это не проблема, тем более, что последняя версия Lazarus стала вроде бы даже и по-шустрее.
Основным недостатком предыдущей версии было отсутствие многопоточности из-за чего проход по списку даже в 30 сервисов занимал достаточно продолжительное время. В новой версии этот недостаток ликвидирован. Но обо всем по порядку.
Во-первых, программа “полегчала” и весит теперь почти в три раза меньше. Изменился и её внешний вид. Вот, что было:
А вот, что стало:
Соответственно, добавились новые функции, а именно:
1. Теперь можно хранить список RSS-лент всех ваших блогов и не загружать их по отдельности при каждом запуске программы. Для сохранения ленты, достаточно записать ей URL в поле “Лента” и нажать [Enter] или кнопку “Обновить содержимое ленты” .
Если задан неправильный URL ленты, то Вы получите сообщение следующего содержания:
2. Ускорена загрузка содержимого ленты. Ускорение достигается не только тем, что Вы можете отрегулировать количество загружаемых элементов RSS-ленты, но и тем, что все данные принимаются в формате JSON, что значительно снижает “вес” принимаемых данных из Сети.
3. Добавлен фильтр выбора сервисов в списке. Теперь Вы можете выбирать из списка:
- Все сервисы без исключения (было в предыдущей версии)
- Только сервисы, которые один или более раз возвращали ошибку. Удобно использовать для ручного удаления нерабочих сервисов
- Только сервисы, которые ни разу не возвращали ошибки.
4. Добавлены фильтры для авто-удаления нерабочих сервисов. Для удаления используются два фильтра:
- по общему количеству ошибок. Если Вы установите его значение равным нулю, то сервис будет удален из списка при первой же ошибке.
- по коду последней ошибки. При этом количество ошибок роли не играет – проверяется последняя.
Если включены оба фильтра, то сервис удаляется при срабатывании хотя бы одного из них.
5. Добавлена многопоточность. Можно сказать в связи с этой возможностью и затевалась вся “переделка” программы.
Теперь пинги могут отправляться в 1-15 потоках, что в значительной степени ускоряет работу программы. У меня пинг по 100 сервисам при количестве потоков — 10 проходит примерно за 8 секунд.
Ну и, конечно же, сохранились функции сохранения/загрузки списков сервисов из TXT/XML-файлов, а также авто-сохранение последнего рабочего списка.
Книжная полка
Описание: Рассмотрены практические вопросы по разработке клиент-серверных приложений в среде Delphi 7 и Delphi 2005 с использованием СУБД MS SQL Server 2000, InterBase и Firebird. Приведена информация о теории построения реляционных баз данных и языке SQL. Освещены вопросы эксплуатации и администрирования СУБД.
|
||
Название: О чем не пишут в книгах по Delphi
Описание: Рассмотрены малоосвещенные вопросы программирования в Delphi. Описаны методы интеграции VCL и API. Показаны внутренние механизмы VCL и приведены примеры вмешательства в эти механизмы. Рассмотрено использование сокетов в Delphi: различные режимы их работы, особенности для протоколов TCP и UDP и др.
|
Хмм… Неплохая программа.
Но я бы добавил еще функцию пинга нескольких новых страниц.
А так, программа действительно рабочая. Автор — молодец))
cybern, была такая идея, но тогда некоторые сервисы не будут принимать сообщение, на вскидку не вспомню, но по-моему Яндекс не принимает повторный пинг в течение 5 минут.
программа супер, радует многопоточность.
если не трудно, добавьте пожалуйста, чтобы можно было работать со списком страниц.
загрузил из файла например список страниц с сайта и отправил пинговаться, вообще здорово бы было.
насчет ограничений — не знаю, но яндекс и гугл железно могут принимать пингов сколько угодно.
думаю это очень многим бы пригодилось, ведь можно не только новую страницу а целый новый сайт прогнать
Deidara, спасибо за отзыв. Именно над такой возможностью я и работаю в новой версии пинговалки :)
Vlad, жду с нетерпением новой версии:)
в программе указано «рсс-лента сайта». а если у сайта нет рсс-ленты, программа работать будет?
Будет, если занести все данные по пингу вручную
Можно как-то решить вот такую проблему?
{«responseData»: null, «responseDetails»: «This API is no longer available.», «responseStatus»: 403}
нет, т.к. API не более доступен