All streams
Search
Write a publication
Pull to refresh
71
0
Антон Кортунов @ToSHiC

Программист

Send message
Очень грубо — IOCP это нечто среднее между Linux AIO и epoll. Вы запускаете функцию и сразу получаете управление обратно в свой код. Когда функция будет выполнена — ядро системы пошлёт событие, которое разблокирует GetQueuedCompletionStatus(), в этом событии будет структурка, по которой можно сразу определить, какая именно функция выполнилась. В отличие от Linux epoll IOCP именно дожидается окончания работы функции чтения, как это делает AIO. В отличие от AIO IOCP умеет хорошо работать с сетью.

Да, в линусе любая дисковая операция, даже после epoll, вернувшего, что дескриптор готов на чтение, даже неблокирующая, может увести поток в D state. Поэтому асинхронные операции с использованием только обычных сисколов + epoll невозможны, надо обязательно использовать AIO.
Ой, простите, пункт 2 конечно же интересовал, в контексте разных ДЦ. Последний мой вопрос — туда же, т.е. на сколько деградирует синхронная запись при увеличении задержки канала между нодами. Есть ощущение, что именно это может стать узким местом.
git, или банальные пакеты. Раскатывать тем же, чем рулите кластером (puppet, chef). Быстро, удобно, не зависит от количества серверов, легко делать prod-like среду для тестирования.
А можете прокомментировать пункт 3 отсюда? Можно ли расположить ноды в разных сетях (потенциально — в разных дц)? Тестировали производительность при наличии некоторой небольшой задержки (единицы миллисекунд) в линках между нодами?
Поставщик интернета кому? Про MSK-IX слышали? А там уже TeliaSonera, RETN, Orange Business Services, ну и Ростелеком тоже присутствует, у них у всех собственные каналы в Европу. А вот если за Уралом, то действительно зачастую есть всего два варианта: ТрансТелеКом и Ростелеком.
Причина совсем в другом, США — одноэтажная страна. Классический ethernet просто не будет нормально работать, т.к. надо покрывать гигантские площади.
Они обычно обновляются либо с какой-то версией софта, либо вообще после обновления дистрибутива. А так да, в своих пакетах с конфигами надо будет это отслеживать и раскатывать новые версии каким нибудь средством автоматической выкладки пакетов (puppet, chef). Пакетный менеджер — это ого-го какая сила, наливка кучи софта на свежий сервер превращается в установку 1-2 пакетов.
Конфиги можно и нужно пакетировать, вписать к ним зависимости. Тогда установка какого нибудь PHP или веб-сервера выливается в 1 команду типа yum install my-php-configs
>> Бред, такого быть не может, т.к. не может быть никогда. Память либо доступна в рамках всего процесса, либо нет, точка.
А если выделить пытались из другой арены? Тогда всё сходится, система процессу памяти больше не даёт, свободных мест в нужной арене нету, а из других арен по какой-то причине не получается взять свободный кусок.
А я не кодер, а программист. Мне побоку, сколько я там лишних раз клавишу нажму.
Как серьёзно вы восприняли мой ироничный комментарий. Не нужен там телефон, и софт никто не будет допиливать, и энтузиастов не будет. Потому что либо сделают промышленный автономный вариант, который будут ставить в веломастерских, либо так и будет франкенштейн из редкого шимановского преключателя, блютус адаптера к нему и телефона, которого ни один велосипедист-любитель не будет себе ставить. А уж как сильно будет жрать батарейку постоянно включенный GPS…
Нафига GPS то? Думаете, у кого то будет карта леса с тропинками и возвышением? :) Лучше тогда уж поставить тензодатчики на педали, возросло усилие — понижаем передачу.
Имхо это как раз одна из тех идей, которые вроде бы и технически не сложные, без каких-то глобальных проблем решаемы, но никто не догадывался раньше их реализовать. А если вспомнить, как в штатах относятся к подобным разработкам — парней ждёт успех, если медкорпорации не затроллят.
Мне одно только непонятно — нафига айфон то нужен? :)
Мы так делаем, у нас работает хорошо. Почти 20млрд картинок, если считать вместе с ресайзнутыми, всего на 6 машинках, в трёх копиях. Размеров штук по 6 на каждую картинку + при заливке пытаемся детектить лица и вырезать тот кусок, где лицо. Не получилось — ну тогда просто ресайз с, возможно, кропом, чтобы в квадратик вписать (не для всех размеров).
Номер настенной розетки, например. В общем случае, некий код, по которому сразу понятно, где второй конец кабеля. Такие наклейки, как на картинке, печатают на специальным маленьких переносных принтерах. Стоят дорого :)
image
Можно попроще, длинненькие самоклеящиеся полоски с цифрами, тогда на каждый кабель надо несколько полосок наклеить и из них составить номер. Стоят совсем копейки, продаются в магазинах с сетевым железом.
image
Вроде ж современные браузеры не делают больше 6-8 коннектов на домен. Если keep-alive включить, то очень неплохо и так будет отдаваться, по 6 штук параллельно. К тому же у меня есть подозрение, что браузеры не в случайном порядке картинки подгружают, а сначала те, что помещаются на экран, а потом уже те, что есть на странице, но в данный момент пользователю не видны.
Угу, с неё. Её же не почистишь, но качается она достаточно сильно, чтобы самостоятельно сбрасывать сосульки всякие и пласты снега, навалившиеся сверху.
Так там же даже по полю этому ходить можно только под крышей, т.к. «снег башка попадёт». Как решили эту проблему?
Раз пилот быстрее робота проехал, значит, недостаточно хорошо :)

Information

Rating
Does not participate
Location
Россия
Registered
Activity