• Telegram Open Network: теория и практика от валидатора сети
    +1
    Ждем статью от TON Labs которая обязательно исправит недосмотр!
  • Python 3.8: Что нового и как этим пользоваться?
    0
    Жаль что авторы блогов и составители документации не следуют этому замечательному совету. Но видимо есть причина этому.

    Есть ли гарантия какую версию выдаст команда python --version на произвольной системе? Вот у меня сейчас пишет Python 2.7.15+, а если я удалю Python 3.x у будет ли выпадать сообщение об ошибке или запустится 3.x? Есть сомнения.

    go modules решают в первую очередь проблему breaking changes в библиотеках, то что они фиксируют версию языка — побочный результат, ибо проблема постоянного изменения синтаксиса языка в go не актуальна.
  • Python 3.8: Что нового и как этим пользоваться?
    0
    Я проверил, вы правы в этом примере. Но, честно говоря, в языке со строгой типизацией я бы просто не рассчитывал на работу бинарных операций над вещественным типом.

    Может быть есть еще примеры, более ощутимые, так сказать?
  • Python 3.8: Что нового и как этим пользоваться?
    0
    Ну в питоне нет ни совместимости вверх ни совместимости вниз, иначе бы не пришлось бы придумывать pip vs pip3 и все эти virtualenv Просто стало интересно неужели в каждой минорная цифре Python 3.x вводятся breakable changes. Как вы там живете вообще? Судя по реакции на безобидный вопрос, не очень.
  • Python 3.8: Что нового и как этим пользоваться?
    –1
    Пишу на Go, он декларирует (и выполняет) совместимость в версии 1 уже много лет.
  • Python 3.8: Что нового и как этим пользоваться?
    –3
    Опять код написанный на Python 3.8 не будет запускаться на младших версиях?

    Я не хейтер, просто искренне интересуюсь.
  • Новый проект братьев Дуровых: Telegram Open Network
    +2
    >TON, где твой аккаунт могут заблокировать

    Не могут. Заблокировать могут аккаунт в Телеграме в котором будет удобный (мы надеемся) кошелек для работы в ТОН.

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

    В случае блокировки в Телеграме, кошелек можно будет поднять в независимом приложении, которые скоро появятся.
  • Проверка кода Telegram Open Network анализатором PVS-Studio
    0
    Кошелек с грамами готовятся звести: telegram.org/tos/wallet
  • Проверка кода Telegram Open Network анализатором PVS-Studio
    +17
    PVS Studio делает самую полезную рекламу на хабре. Думаю что можно смело подавать заявку на конкурс Телеграма и получать свой приз! Разработчики как настоящие джентльмены теперь обязаны жениться приобрести подписку или дать один из призов.

    Если кто интересуется, вот информация.

    Here’s how to submit your code for the blockchain contest (https://t.me/contest/102) depending on the goal at hand:

    1. Submit an archive containing your source code, a howto manual and a build script (if necessary) to @jobs_bot (choose Blockchain Contest).

    Or:

    2. Submit a pull request with the TON VM/compiler improvement on GitHub. Describe the issue in the comment to your pull request. In addition, submit the link to the pull request and an archive as described in 1. demonstrating the new features suggested in the pull requests to @jobs_bot.

    Or:

    3. Submit a pull request on GitHub. Describe the issue in the comment to the pull request. Submit the link to the pull request to @jobs_bot.
  • Собираем NetFlow дёшево и сердито
    0
    Попал сюда в надежде увидеть рабочий код Netflow — ClickHouse, но увы, нет. Жаль.
  • Тестовый клиент TON (Telegram Open Network) и новый язык Fift для смарт-контрактов
    +3
    Языки для написанаия смартконтрактов решают двк принципиально важные задачи.

    1. Хранение данных в блокчейне стоит дорого, невероятно дорого! Каждый байт комманд и данных кем то оплачивается.

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

    Использование более эффективных языков одновременно снижает стоимость использования смарт-контрактов для коннечных пользователей и увеличивает производительность сети.

    Очень многие критикую блокчейн технологию имеено за высокую стоимость и низкую производительность, поэтому очередная попытка написать еще одну лучшую систему имеет хорошие шансы на успех.
  • pudge встраиваемая база данных в 500 строк на golang
    0
    Gob при упаковке кодирует тип данных структуры Go это и позволяет легко и эффективно упаковывать/распаковывать. Но это вносит оверхед по сравнению с исходными данными, который ощутимый если размер полей мал.
  • Яндекс запустил облако
    0
    В силу каких причин в России эти услуги должны стоить дешевле международных аналогов? На ограниченном, закрытом протекционизмом рынке цены всегда выше. Но с текущей политикой правительства любая цена в рублях быстро догонит более низкие ценны в долларах.
  • Bitcoin и Ethereum: что происходит на узлах, которые не занимаются добычей, и что с ними будет дальше?
    0
    Вся современная криптовалюта решает задачу «сговора негодяев». Собственно Сатоши Накомото и предложил ее решение. Сейчас идут исследования как сделать это решении эффективнее, экономичнее, устойчивее и.д.
  • Bitcoin и Ethereum: что происходит на узлах, которые не занимаются добычей, и что с ними будет дальше?
    0
    Вот это соревнование обычных валют в порче монеты наперегонки и стало предпосылкой появления криптовалют. Для общества потребления не выгодны потребители, которые сберегают.
  • Bitcoin и Ethereum: что происходит на узлах, которые не занимаются добычей, и что с ними будет дальше?
    +2
    В блокчейне биткойна можно назвать мусором, например, кошельки по которым не было никакого движения с момент их создания в прошлом. Вы предлагаете, по сути, их удалить?

    Представьте себе — некто положил доллары сша и рубли СССР в стеклянную банку 50 лет назад. Одну валюту посчитали мусором один раз отменили и два раза поменяли при деноминации. Другую и сейчас можно использовать для покупок. Вы бы какую криптовалюту хотели бы получить в будущем?
  • Bitcoin и Ethereum: что происходит на узлах, которые не занимаются добычей, и что с ними будет дальше?
    0
    К тезисам статьи комментарии.

    Список нод сети биткойна можно посмотреть в режиме реального времени на сайте: bitnodes.earn.com

    Нет никакого сюрприза в том, что 10% мировых нод размещены в одном провайдере — Hetzner! Вобще получается такой народный рейтинг провайдеров. В некоторых странах количество нод биткойна исчесстляется единицами! Однако, хорошая новость состоит в том, что нода биткойна после синхронизации пока еще нормально работает на старом 7200 rpm SATA диске.

    К сожалению, на Ethereum с его клиентом Geth использовать SATA диск перестало быть возможным еще осенью 2017 года. Объем дисковых операций перестал успевать за транзакциями сети. Поэтому нода Ethereum может быть запущена на SSD диске или SSD виртуальном сервере.

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

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

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

    Оба подхода иявляются принципиально разными, но хотелось бы видеть больше статей об этом и читать разные комментарии.
  • Новый «сервиз» от Ubiquiti – пополнение в модельном ряде UniFi AC
    0
    Это не роуминг а хендовер.
  • Блокчейн + распределённое хранилище = Sia
    0
    Если внимательно посмотреть статистику проекта, то примерно месяц назад стоимость аренды места резко обвалилась. Были предложения за сотни sc, а потом они резко упали до уровня 150 sc за терабайт в месяц.

    Почему? На самом деле в середине мая на рынке криптовалют начался памп и все валюты подорожали в несколько раз. Но вот незадача, уже недели две как все цены падают вниз. Та же сиа подешевела с 20 долларов за 1000 до примерно 6. Но при этом стоимость контрактов на хранения не изменилась и просто уменьшилась в 4 раза. Никакой рыночной коррекции согласно курсу криптовалюты не наблюдается, а это значит что рыночные пооцессы ценообразования отсутствуют.

    Кто все эти люди, которые шарят место для Сиа? Я не могу точно сказать, возможно они были введены в заблуждение статьями подобным этой. Тут написано, что хост заполненный на полтерабайта приносит 50 рублей в день. На самом деле по состоянию на конец июня 2017 такой доход будет за месяц. И то при условии, что найдется клиент, который заполнит именно ваш диск имея на выбор 99% свободных ресурсов сети на других хостах.

    Я никоим образом не хочу сказать что Сиа неправильный или не нужный проект, просто обращаю внимание что коммерческий интерес там декларируется, но на данный момент отсутствует. Я просто выступаю за объективность, а не против идеи.
  • Блокчейн + распределённое хранилище = Sia
    +1
    В настоящий момент по ссылкам автора статьи средняя стоимость хранения террабайта данных составляет 150 sc или примерно 86 центов в месяц. Емкость сети достигла 3 петабайт при том что заполнена она лишь на 1%. Это и есть показатели доходности. Даже если найдется покупатель готовый платить 1$ За терабайт, вряд ли он купит у вас место. У лучших хостеров заполнение достигает 10 %. Грубо говоря, доходность этой затеи примерно равна нулю.

    Это конечно крайне позитивно для развития проекта, ведь что может быть лучше для потребителя, чем бесплатное предложение услуги? Вот только какой толк хостерам от участия в проекте, который не окупает даже электричества, не говоря уже о вложениях в оборудование и каналы связи?

    Кстати, сами авторы проекта, вероятно зарабатывают на майнинге и спекуляциях криптовалютой — токенам проекта. Я и сам заинтересовался SIA лишь потому что майню эти токены. Пусть рентеры и хостеры заказывают друг у друга бесплатную услугу, но для транзакций им нужны монеты, которые добывают майнеры. Вот они то и зарабатывают пока реальные деньги в этом проекте.
  • Строим полноценный IPTV/OTT сервис: Stalker Middleware
    0
    У вас в контейнере собрана полная связка apache + nginx. Для демонстрации может быть и удобно, но для нормального использования, я бы nginx убрал из контейнера и запускал бы на хост машине.

    Кстати, проблема http://127.0.0.1 была вызвана тривиальной причиной, не были указаны необходимые настройки nginx proxy_pass директивы, в частности $host. Все работает при правильной настройке nginx. В моем случае это вот так:

     root /opt/stalker;
    
        location / {
            proxy_pass http://127.0.0.1:88/;
            proxy_set_header Host $host:$server_port;
            proxy_set_header X-Real-IP $remote_addr;
            expires -1;
        }
    
        location ~* \.(htm|html|jpeg|jpg|gif|png|css|js)$ {
            expires 1d;
        }
    
  • Строим полноценный IPTV/OTT сервис: Stalker Middleware
    0
    Ставил по инструкции контейнеры на Ubuntu 16.04 LTS со свежим Докером и Композом. На последнем шаге выпала ошибка:

    [exec] Executing command: cd /var/www/stalker_portal/server/tools/; php ./init_apps.php; chown -R www-da ta:www-data /var/www/stalker_portal/../stalker_launcher_apps/ 2>&1
    PHP Fatal error: Uncaught exception 'SmartLauncherAppsManagerException' with message 'Unable to install appl ication' in /var/www/stalker_portal/server/lib/smartlauncherappsmanager.class.php:329
    Stack trace:
    #0 /var/www/stalker_portal/server/lib/smartlauncherappsmanager.class.php(496): SmartLauncherAppsManager->inst allApp(1, '5.1.0', false)
    #1 /var/www/stalker_portal/server/lib/smartlauncherappsmanager.class.php(860): SmartLauncherAppsManager->addA pplication('stalker-apps-ba...', true, false, '5.1.0')
    #2 /var/www/stalker_portal/server/lib/smartlauncherappsmanager.class.php(790): SmartLauncherAppsManager->rese tApps()
    #3 /var/www/stalker_portal/server/tools/init_apps.php(10): SmartLauncherAppsManager->initApps()
    #4 {main}
    thrown in /var/www/stalker_portal/server/lib/smartlauncherappsmanager.class.php on line 329
    [exec] Executing command: cd /var/www/stalker_portal/server/tasks/; php ./reset_paused.php nodelay 2>&1
    [echo] Now you will be asked to specify MySQL root password.
    [echo] ${zoneinfo.error.msg}
    [exec] Executing command: /etc/init.d/apache2 restart 2>&1
    [exec] Executing command: mkdir /var/log/stalkerd 2>&1
    [chmod] Changed file mode on '/var/log/stalkerd' to 777



    Потом, после авторизации выдал редирект на адрес: http://127.0.0.1/stalker_portal/server/adm
    У меня 80 порт занят, поэтому я в compose файле для портала сделал редирект с 88 на 80, а на фронте настроил nginx по настройкам в официальной доке.

    В чем может быть дело?
  • История одного толстого бинарника
    0
    Я бы хотел узнать больше про этого IoT агента на Go.

    На Гихабе, код — пустышка, увы!
  • ClickHouse: очень быстро и очень удобно
    +1
    Очень водушевляющая статья. Была ли мысль написать модуль сразу в nginx для логов? Как я понял это один из базовых кейсов.

    И еще вопрос. Есть, к примеру, логи netflow. Там фигурирует src ip, dst ip, src port, dst port, bytes, packets и все в таком духе.

    Типичный паттерн когда клиент с одного и того же IP адреса устанавливает кучу соединений к другим адресам, а они ему отвечают (torrent).

    Насколько эфективно база CH может сжать вот эти последовательности в логах?
  • Tarantool: нагрузочное тестирование
    0
    Тарантул это молоток и есть. Для SQL есть свои отвертки с хитрой резьбой.

    Только приглядитесь к логотипу!

    image
  • Tarantool: нагрузочное тестирование
    +1
    Интересный график, но было бы намного интереснее делать их с отключенной директивой limit_conn 64 в настройках nginx. Мои тесты выполнялись с отключенными ограничениями, естественно.

    Я думаю, что от 20 до 70 потоков работал лимит соединений, а после 70 видимо достаточно сильно выросла нагрузка на nginx и он подавил остальные процессы.

    Про рост времени ожидания вы просто еще раз подтвердили выводы из статьи Константина Осипова, ссылка на которую есть наверху.
  • Tarantool: нагрузочное тестирование
    0
    Рейтинги или сессии пользователей достаточно распространенная задача для K/V хранилища.

    Сложные связи конечно нужны, но допустим, одна из задач микросервисной архитектуры состоит в упрощении или переносе этой сложности из базы данных на уровень связи компонентов.
  • Tarantool: нагрузочное тестирование
    0
    42 запроса в секунду. Понятно. Значит модуль ограничения коннектов nginx работает как надо :)
  • Tarantool: нагрузочное тестирование
    0
    Можно уточнить, где у вас в отчете rps?
  • Tarantool: нагрузочное тестирование
    +2
    У вас есть замечательная возможность научить всех правильно делать тесты производительности. Напишите как надо, например, в комментариях тут.
  • Tarantool: нагрузочное тестирование
    0
    Замена базы нужна, что бы показать разницу производительности между Тарантулом и MySQL, например. Но мы понимаем же, что ожидается заведомый регресс.

    Я бы поступил наоборот — переписал бы какое то приложение с MySQL на Тарантул.

    Про ошибки nginx относилось к первой части статьи о методике тестирования.
  • Tarantool: нагрузочное тестирование
    0
    Прошу прощения! Исправлял один секретный баг и добавил новый. Можно снова пробовать.

    За любознательность — плюс!
  • Tarantool: Хороший, Плохой, Злой
    0
    На Java, например, нужно писать строго в парадигме ООП, на php можно по-всякому. На самом цель статьи в том, что бы показать возможность работы с Тарантулом даже в простых скриптах. Отсюда и выбор инструмента.
  • Tarantool: Хороший, Плохой, Злой
    +3
    В былые времена, хабраюзеры рвали нагрузкой любой сайт. Сейчас и сайты крепче и юзеры спокойнее.

    Какие будут идеи кроме банального wrk на страницы top?
  • Релиз YouTrack 7.0: новая концепция Agile доски, диаграмма Ганта и многое другое
    0
    Давно хотел спросить, а тут вы с релизом.

    Поддерживает ли YouTrack в качестве Helpdesk обращения от незарегистрированнных пользователей? В документации где то видел — да.

    Тогда следующий вопрос — можно ли создавать или импортировать список этих пользователей способом отличным от email? Как быть если клиент позвонил по телефону?

    Вот было бы здорово, если бы такие удобные системы для разработчиков типа Jira или YouTrack имели бы сущность Customer.
  • «Ни единого разрыва»: чего стоит сделать онлайн-трансляцию, которая не будет падать, тормозить и вызывать боль в глазах?
    0
    Не реклама, но ссылка на производителя софта со статьями и картинками. Кстати, русский разработчик: https://ru.wmspanel.com/nimble
  • Telegram Site Helper 2.0 — чат помощник для сайта на основе Telegram
    0
    Кто нибудь может внятно объяснить преимущество Web Hook против Long Poll?

    Я использую демон на Go, так что со стабильностью демона и его перезапуском никаких проблем нет.
  • Висит груша… c Poe-Out, 16 GigabitEthernet. Или новые всепогодные роутеры и коммутаторы Ubiquiti
    0
    Получили EdgePoint Router 8-Port.

    Как и следовало ожидать, у него нет поддержки свичинга, потому что это роутер.

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

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

    Есть ли у кого данные о производительности данной модели?
  • Пополнение в лёгком весе. Или новые малопортовые коммутаторы Ubiquiti
    0
    Вариант EdgePoint не устраивает по причине большой цены, избыточного количества портов, да и маршрутизатор тоже не нужен.

    Нужен 8 портовый аналог Edge Router-X c 48 вольтовым питанием и портом SFP, ну в точности как UniFi Switch 8
  • Пополнение в лёгком весе. Или новые малопортовые коммутаторы Ubiquiti
    0
    Спасибо за картинку. Судя по всему красный, желтый, голубой — три напряжения питания 12/48/5 Вольт (или 3,3В) Для таких мощных устройств раздельные цепи питания единственная возможность, без вариантов!

    Надо вскрывать пациента, потому что, например, у модели ToughSwitch PoE Pro 8 портов питание от одного напряжения 48 Вольт.

    Возможно у остальных малых устройств схема такая же.