Пока реализовывал у себя межпроцессные сообщения, появилась такая идея: Сделать, чтобы процесс для сообщения мог быть не двух видов - отправитель и приемник - а мог быть еще и "ретранслятором". Ретранслятор должен передавать сообщения на другую машину. Это отличная фича для серверов. Пример: apache запускает 10 дочерних подпроцессов. Пусть бы он их запускал не на этой машине, а два на этом, еще по три на двух мощных серверах и два на каком нибудь слабом. А обращались бы они друг к другу как если бы были на одной машине. Тогда бы очень упростился интерфейс обмена - кроме того, разработчикам веб-сервера не пришлось бы морочить голову межмашинным интерфейсом - хоть Ethernet, хоть firewire, можно даже через rs232 их соединить - отличаться будут только ретранслятором. Программно это реализовать очень просто - нужно указывать в сообщениях не один pid, а два - pid ретранслятора и pid удаленного процесса. А ретрансляторы привязывать к конкретному интерфейсу/ip.
|