|
|
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
Подскажите в каких случаях использовать синхронный ввод/вывод, а в каких асинхронный? В основном интересуют серверные сокеты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2013, 14:21 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
если ты ждешь времени от сервера и твой софт "ждет" то это синхронный вывод а если у тебя приложение - чат - и в любой момент может прийти сообщение но неизвестно когда - то асинхронный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2013, 22:24 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
DimmyMasterесли ты ждешь времени от сервера и твой софт "ждет" то это синхронный вывод а если у тебя приложение - чат - и в любой момент может прийти сообщение но неизвестно когда - то асинхронный Я разве просил объяснить мне в чем отличия синхронного и асинхронного ввода/вывода? Я хочу узнать по сути плюсы и минусы обеих технологий, чтобы понять при каких условиях какую технологию выбрать. Вот например, Apache работает на синхронных сокетах, а nginx на асинхронных. Задачи у них разные и соответственно технологии выбраны разные. Так вот какими критериями пользовались разработчики при выборе технологий? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2013, 23:39 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
13235071 - тут вокруг да около обсуждалось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2013, 23:53 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
PeterXaЯ разве просил объяснить мне в чем отличия синхронного и асинхронного ввода/вывода? а вы изложили реально стоящую задачу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2013, 01:01 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
PeterXaDimmyMasterесли ты ждешь времени от сервера и твой софт "ждет" то это синхронный вывод а если у тебя приложение - чат - и в любой момент может прийти сообщение но неизвестно когда - то асинхронный Я разве просил объяснить мне в чем отличия синхронного и асинхронного ввода/вывода? Я хочу узнать по сути плюсы и минусы обеих технологий, чтобы понять при каких условиях какую технологию выбрать. Вот например, Apache работает на синхронных сокетах, а nginx на асинхронных. Задачи у них разные и соответственно технологии выбраны разные. Так вот какими критериями пользовались разработчики при выборе технологий? Когда разрабатывали первые версии апача - асинхронного I/O практически нигде не было, а где и был - был мало работоспособен. Плюсы и минусы? Под синхро программировать легко, просто и привычно, асинхра - абсолютно неестественная хрень для обычного программиста, мыслить callbackами мало у кого получается, и ни один PHP и руби стек так делать не умеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2013, 01:26 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
Проясним ситуацмыслить callbackами мало у кого получается Зачем, если есть каналы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2013, 12:08 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
k0rvinПроясним ситуацмыслить callbackами мало у кого получается Зачем, если есть каналы? Каналы это что, по английски как термин звучит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2013, 23:47 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
PeterXaЯ разве просил объяснить мне в чем отличия синхронного и асинхронного ввода/вывода? Я хочу узнать по сути плюсы и минусы обеих технологий, чтобы понять при каких условиях какую технологию выбрать. Вот например, Apache работает на синхронных сокетах, а nginx на асинхронных. Задачи у них разные и соответственно технологии выбраны разные. Так вот какими критериями пользовались разработчики при выборе технологий? Ты хочешь чтобы специалисты щас дико напряглись чтобы удивить тебя эзотерическим знанием? Это очень даже вряд-ли. Тем более что такой "тон" обескураживает. Если спрашиваешь - то спрашивай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 01:45 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
КаналыКаналы это что, по английски как термин звучит? http://en.wikipedia.org/wiki/Channel_(programming) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 07:53 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
k0rvinКаналыКаналы это что, по английски как термин звучит? http://en.wikipedia.org/wiki/Channel_(programming) By receiving from a channel, a tasklet that is waiting to send on that channel is resumed. If there is no waiting sender, the receiver is suspended into the channel's queue. Это синхронный блокировочник. Ты бы, Корвин, лучше бы буквари сначала почитал, а не только на Кейт Бекинсейл ото что ты там делал заместо изучения основ async i/o... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 12:34 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
Проясним ситуацЭто синхронный блокировочник. Ты бы, Корвин, лучше бы буквари сначала почитал, а не только на Кейт Бекинсейл ото что ты там делал заместо изучения основ async i/o... Ты бы лучше мозг включил, а не капитанством занимался. Проясним ситуаца не только на Кейт Бекинсейл ото что ты там делал заместо изучения основ async i/o... При чем тут Кейт Бекинсейл? o_O' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 14:01 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
Для Linux I/O IBM различает четыре модели ввода вывода. http://www.ibm.com/developerworks/library/l-async/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2013, 14:12 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
по возможности нужно всегда использовать асинхронный он быстрее . Он проще с точки зрения меж-нитево-процессных синхронизаций. С колбеками проще работать чем синхронихировать овер 100500 нитей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 02:20 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
ДохтаРС колбеками проще работать чем синхронихировать овер 100500 нитей. Callbacks are the modern goto ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 09:00 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
k0rvinДохтаРС колбеками проще работать чем синхронихировать овер 100500 нитей. Callbacks are the modern goto Та шо вы говорите мат часть A signal is a limited form of inter-process communication used in Unix, Unix-like, and other POSIX-compliant operating systems. It is an asynchronous notification sent to a process or to a specific thread within the same process in order to notify it of an event that occurred. When a signal is sent, the operating system interrupts the target process's normal flow of execution. Execution can be interrupted during any non-atomic instruction. If the process has previously registered a signal handler, that routine is executed. Otherwise the default signal handler is executed. Signals have been around since the 1970s Bell Labs Unix and are more recently specified in the POSIX standard. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 14:41 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
ДохтаР Та шо вы говорите Ну во-первых, сигналы и коллбэки вещи ортогональные, а во-вторых, для тебя что, Unix -- образец для подражания? Зря. http://plan9.bell-labs.com/sys/doc/plumb.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 16:53 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
k0rvinДохтаР Та шо вы говорите Ну во-первых, сигналы и коллбэки вещи ортогональные, Мы вроде как про сокеты синхронные, ассинхронные, AIO говорим. Покажите асинхроный обмен без соответсвующей обратки ( в виде колбека, пробуждения итд ) от ОС ? k0rvinа во-вторых, для тебя что, Unix -- образец для подражания? ДА ДА ДА !!!!! k0rvinЗря. http://plan9.bell-labs.com/sys/doc/plumb.html Ненашел там ничего про сабж Есть какие то мессджи летающие непонятно по какому принципу Там что, своя аппаратная архитектура без ДМА , перрываний итд ? авторThe plumber is no exception; plumbing messages pass routinely across the network to remote applications without any special provision, in contrast to some commercial IPC mechanisms that become significantly more complex when they involve multiple machines. Давайте без офтопика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 17:29 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
ДохтаРМы вроде как про сокеты синхронные, асинхронные, AIO говорим. И что? Еще раз повторяю: сигналы и колбеки — ортогональные вещи. Я говорил, что колбеки — плохой способ организации кода. Про сигналы вообще ничего не говорил. ДохтаРПокажите асинхроный обмен без соответсвующей обратки в виде колбека от ОС? Обмен между чем и чем? Ну допустим Erlang? ДохтаРНенашел там ничего про сабж В смысле? Сигналы используются для IPC в Unix, в Plan 9 для IPC используется plumbing. ДохтаРЕсть какие то мессджи летающие непонятно по какому принципу Вполне определенные месседжи фиксированного формата, по вполне простому и определенному принципу. Даже картинка нарисована. ДохтаРТам что, своя аппаратная архитектура Нет. Plan 9 runs on four major machine architectures: Intel 386/486/Pentium, MIPS, Alpha, and PowerPC. ДохтаРДавайте без офтопика. Давайте, но ты же начал про сигналы зачем-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 18:40 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
k0rvinДохтаРМы вроде как про сокеты синхронные, асинхронные, AIO говорим. И что? Еще раз повторяю: сигналы и колбеки — ортогональные вещи. Я говорил, что колбеки — плохой способ организации кода. Про сигналы вообще ничего не говорил. ДохтаРПокажите асинхроный обмен без соответсвующей обратки в виде колбека от ОС? Обмен между чем и чем? Ну допустим Erlang? Асинхронный обмен между процессам и ядром ОС. Как по твоему ядро должно сказть процессу . Эй чувак, я тут получила в твой сокет по сети какой то хлам , разбирайся с ним. Я незнаю формата исполнимого файла Erlang. Если эрланг собирает стандартный экзешник , то взаимодействие с сокетом в нем либо синхронное , Операционка усыпляет процесс до момента поступленя данных в сокет . Или асихронное, процесс работает по своему сценарию , вдруг ни стого ни с сего прерывается по сигналу и выполняет функцию, которую написал програмист на ЯП высокого уровня. по выходу из функции продолжает выполняться с места где его прервали. Чем не колбек ? ДохтаРДавайте без офтопика. Давайте, но ты же начал про сигналы зачем-то. [/quot] Сигнал в Юниксе или сообщение ( в винде WM_ ) базовый механизм, на котором строится асинхронное взаимодействие процесс-ядро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 19:08 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
ДохтаР Та шо вы говорите Это ссылка для хайлоад проггеров, которые считают мкросекунды респонстайма соотношение тактов процессоров пользовательсткого и системного CPU. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 19:21 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
ДохтаРИли асихронное, процесс работает по своему сценарию , вдруг ни стого ни с сего прерывается по сигналу и выполняет функцию, которую написал програмист на ЯП высокого уровня. по выходу из функции продолжает выполняться с места где его прервали. Чем не колбек? Это колбэк и именно это — дурацкий способ организации кода. Мало того, что неизвестно в каком состоянии будет разделяемая память перед вызовом колбэка и какой станет после, так еще куда этот колбэк может завести поток выполнения... В общем типичный лапшекод в goto-стиле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 19:35 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
DimmyMaster, Если у тебя большой io, объемный, большими блоками, то можно использовать асинхронный io, чтобы запускать его в фоне (т.е. как бы отдельным потоком). Но это не обязательно, можно то же самое сделать и самому в отдельном потоке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 19:37 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
ДохтаР, В Эрланге свои процессы, и без всяких колбеков http://en.wikipedia.org/wiki/Erlang_(programming_language)#Concurrency_and_distribution_orientation ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 19:43 |
|
||
|
Синхронный vs Асинхронный I/O
|
|||
|---|---|---|---|
|
#18+
k0rvinДохтаРИли асихронное, процесс работает по своему сценарию , вдруг ни стого ни с сего прерывается по сигналу и выполняет функцию, которую написал програмист на ЯП высокого уровня. по выходу из функции продолжает выполняться с места где его прервали. Чем не колбек? Это колбэк и именно это — дурацкий способ организации кода. Мало того, что неизвестно в каком состоянии будет разделяемая память перед вызовом колбэка и какой станет после, так еще куда этот колбэк может завести поток выполнения... В общем типичный лапшекод в goto-стиле. Не нравится колбек возьмите select или poll Но они не тру асинхрон, это асинхронный мультиплексор синхронного IO для множества сокетов в одном потоке. Чуть менее чем для 100% задач , кроме вери хайлоад., их вполне хватает . А какую альтернативу предлагаете вы ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2013, 19:46 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=58&tid=1341874]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 188ms |
| total: | 315ms |

| 0 / 0 |
