The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз сервера для файлообменных сетей Advanced Direct Connect - uHub 0.4.1

08.11.2012 13:18

Состоялся релиз uHub 0.4.1, кроссплатформенного высокопроизводительного p2p-хаба для сетей Advanced Direct Connect.

Основные отличия от версии 0.4.0:

  • Для сборки программы теперь используется cmake (вместо вручную написанных Makefile-ов).
  • Исправлена проблема с чрезмерной загрузкой процессора при использовании SSL.
  • Исправлена проблема с определением TLS/SSL handshake.
  • Исправлено падение в режиме mod_chat_only.
  • Улучшена статистика использования сети (команда !stats).
  • Для плагинов теперь используется директория /usr/lib/uhub/ вместо /var/lib/uhub/, что соответствует FHS (Filesystem Hierarchy Standard).
  • Улучшен пример скрипта для системы инициализации initscripts и добавлен пример скрипта для upstart.
  • Решение проблем с безопасностью клиента путем запрета UCMD сообщений от трансляторов.
  • Добавлен асинхронный DNS resolver.
  • Исправлена сборка в Debian GNU/kFreeBSD.

Напомним, что основным преимуществом данной программы является низкое потребление ресурсов, что позволяет ему обеспечивать связь нескольких тысяч пользователей на полноценном сервере, или же работать в качестве небольшого приватного хаба на встраиваемых устройствах. Программа написана на C. Среди других характеристик uHub можно отметить поддержку IPv6 и простоту настройки.

За активностью разработки проекта можно наблюдать на данной странице. Сообщения об ошибках и запросы на реализацию улучшений принимаются в системе трекинга ошибок. Свежие пакеты для Debian, Ubuntu и производных дистрибутивов со стабильной версией программы и ежедневные сборки программы доступны в специальном PPA на Launchpad.

  1. Главная ссылка к новости (https://www.uhub.org/news.php...)
Автор новости: Необъективный_
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/35269-uhub
Ключевые слова: uhub, adc, p2p
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (18) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, zhenya_k (?), 15:44, 08/11/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > вместо вручную написанных Makefile-ов

    А cmake-файлы уже не нужно вручную писать?

     
     
  • 2.2, Жорж (?), 15:47, 08/11/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это же опенсорц, вы ничего не понимаете.
    У нас фраза "мы бросили трахаться с $чем-то" означает "мы начали трахаться с $чем-то другим"
     
     
  • 3.11, Ytch (?), 00:55, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Это же опенсорц, вы ничего не понимаете.
    > У нас фраза "мы бросили трахаться с $чем-то" означает "мы начали трахаться с $чем-то другим"

    Можно подумать так происходит только в опенсорц.

     
  • 2.3, Аноним (-), 16:13, 08/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    CMake используется для генерации Makefile'ов. Ещё того же могут использоваться autotools (./configure).
     
  • 2.4, Аноним (-), 16:51, 08/11/2012 [^] [^^] [^^^] [ответить]  
  • +8 +/
    CMake файлы на порядок выше уровнем чем Makefile. Как C++ и ассемблер.
    - На ручном Makefile сборка более-менее сложного приложения - несколько страниц правил сборки отдельных файлов, вызовов gcc -M для определения зависимостей между исходниками, линковки приложения, установки, адового объёма обвязки для всего этого.
    - Многое на make вообще нельзя сделать - например, работающий кросс-платформенный поиск зависимостей, проверки окружения и т.д.

    итого они требуют постоянного изменения - при изменении структуры проекта, добавлению новых исходных файлов, добавлению поддержки новых платформ, да ещё и с большой вероятностью не заработают изкоробки у пользователя, потому что у него библиотеки в /usr/local/lib, а не /usr/lib.

    На cmake же это делается парой строк:

    FIND_PACKAGE(SDL REQUIRED) # хотим библиотеку SDL
    ADD_EXECUTABLE(myapp file1.c file2.c file3.c) # собираем приложение
    INSTALL(myapp bin) # устанавливаем в PREFIX/bin

    и не требует поддержки. Более того, даже список файлов можно сделать генерящимся автоматически. Это автоматически умеет генерацию Makefile (причем и GNU- и BSD-make совместимых), проектов для Visual Studio и (кажись) CodeBlocks и чего угодно, работает без модификаций на всех платформах, позволяет сразу разделить release/debug сборки и т.д. и т.п.

    CMake не данный момент - самая совершенная система сборки, и ничего удивительного что они перешли именно на неё.

     
     
  • 3.10, Аноним (-), 21:43, 08/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    А как с помощью CMake собрать Qt проект в debug режиме?
     
     
  • 4.12, Аноним (-), 09:06, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Также как и в make
     
     
  • 5.13, Аноним (-), 11:00, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    И чем тогда CMake лучше?
     
     
  • 6.14, Аноним (-), 15:14, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >И чем тогда CMake лучше?

    Кроссплатформенностью, один раз написал на cmake и собирай на любой ОС, кроме того, cmake содержит встроенную систему автоматического поиска зависимостей - заголовочных файлов и библиотек.

    И прочитай уже матчасть, наконец.
    CMake (от англ. cross platform make) — это кроссплатформенная система автоматизации сборки программного обеспечения из исходного кода. CMake не занимается непосредственно сборкой, a лишь генерирует файлы управления сборкой из файлов CMakeLists.txt:

        Makefile в системах Unix для сборки с помощью make;
        файлы projects/workspaces (.dsp/.dsw) в Windows для сборки с помощью Visual C++;
        проекты XCode в Mac OS X

     
  • 6.15, 1 (??), 16:29, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    у него цветные букаффки
     
  • 6.17, Аноним (-), 19:20, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > И чем тогда CMake лучше?

    Прочитай пост выше.

     
  • 4.16, Аноним (-), 19:20, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    cmake -DCMAKE_BUILD_TYPE=Debug . && make
     

  • 1.5, redixin (ok), 17:03, 08/11/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    этим еще пользуются?
     
     
  • 2.6, nur (?), 21:14, 08/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    вы удвитесь
     

  • 1.7, Аноним (-), 21:15, 08/11/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    жаль только что эти сервера так и не научились до сих пор линковаться друг к другу
     
     
  • 2.9, YetAnotherOnanym (?), 21:22, 08/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Verlihub вроде может (впрочем, не знаю, это его родная функциональность или это какой-то скрипт на Lua).
     
     
  • 3.18, Аноним (-), 20:25, 09/11/2012 [^] [^^] [^^^] [ответить]  
  • +/
    скрипт на lua, причем нерабочий, а в настоящее время и неподдерживаемый (verlilink)
     

  • 1.8, YetAnotherOnanym (?), 21:18, 08/11/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Оно имеет какие-то преимущества по сравнению с кашалотом?
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру