0MQ to lekkie jądra wiadomości.
Pierwsze dwie aplikacje do rozmowy jest zawsze wyzwaniem. Muszą zgodzić się na to, co dane wygląda. A co to znaczy. Oni muszą uzgodnić, w jaki sposób dane są zorganizowane w wiadomości. XML, binarne, czy coś innego? Muszą zgodzić się, jak mówić do siebie. Muszą zgodzić się na bezpieczeństwie. Muszą zgodzić się, jak podłączyć, przez jakich sieciach. Muszą stać w kolejce wiadomości, które nie mogą być dostarczone natychmiast. Muszą wykryć i prawidłowo obsługiwać błędy.
Wiele aplikacji spróbować rozwiązać te problemy od podstaw. Ale można również kupić duże, drogie, powolne pakiety zwane "systemy", które zajmują wiadomości wiele z tych miejsc pracy dla Ciebie. Niektóre z tych systemów, nawet zgodzić się na standardowych protokołów, takich jak AMQP. Korzystanie z systemu wiadomości zwykle kosztuje dużo, ale daje Ci możliwość wniesienia aplikacje razem.
Wiadomości kiedyś tylko dla dużych bogatych firm, a bardzo szybki system przesyłania nadal są bardzo drogie. Sytuacja ta zmienia się.
Oto kilka kluczowych cech "0MQ":
繚 Nasza misja z 嚙 瞎 Q ("ZeroMQ") jest zbudowanie najszybszego wiadomości kiedykolwiek. Sposób, aby uzyskać wydajność jest optymalizacja całego oprogramowania i sprzętu stos razem. Tak, jesteśmy ściśle rozwój 嚙 瞎 Q z największych firm sprzętowych.
繚 嚙 瞎 P jest już bardzo szybko. Dostajemy 25 i MU sec end-to-end, opóźnienia i 2,8 miliona wiadomości na sekundę dzisiaj.
繚 嚙 瞎 Q jest całkowicie darmowe licencji GPL oprogramowanie napisane w C ++.
繚 嚙 瞎 Q jest projektem w toku. Pobierz kod, przeczytaj oficjalny dokument, a wyniki testu, lub dołączyć do projektu, jeśli jesteś fanatykiem wiadomości.
嚙 瞎 Q jest współpraca między grupą firm, a mianowicie FastMQ (które przynosi doświadczenie na rynku komunikatów finansowych), iMatix (która przynosi AMQP wiedzę), Intel (która oferuje wiedzę sprzętu) oraz inne firmy z sprzętu, systemu operacyjnego, sieci i doświadczenie aplikacji. FastMQ Inc. zjednoczyć wszystkie prawa autorskie do kodu.
嚙 瞎 Q goli
繚 Zbudowany na standardach: szkieletowe, protokołów i społeczności.
繚 burzy każdej sieci, z 10Gb Ethernet, do 4X IB.
繚 Transfery wiadomości 2M sekund w sieci 1Gb z jednego procesora na każdym końcu.
繚 opóźnienie end-to-end w dwudziestu & mu; s przez TCP przy użyciu własnego sprzętu i sterowników w sieci.
繚 Beats żadnego komercyjnego produktu: szybszy, bardziej mobilny, bardziej niezawodne, bardziej użyteczny.
繚 Zbudowany dla społeczności: wolne oprogramowanie w społeczności open source.
繚 Przeznaczone do realnego świata: wideo, zapasów, gier, sieci, dane w czasie rzeczywistym, strumieni.
繚 Działa wszędzie: najmniejsze urządzenia, wszystkie systemy operacyjne, wszystkie języki.
繚 pełni rozdzielone: ma serwerów centralnych do katastrofy, miliardy WAN i LAN węzłów.
繚 Extensible ramy: sterowniki jądra stylu dla niestandardowego sprzętu lub aplikacji
Co to jest nowy w tym wydaniu:.
- Poprawki :
- Naprawiono błąd 223, błąd potwierdzenia w tcp_connecter.cpp: 300 po podłączeniu do serwera, który znajduje się na nieosiągalnego sieci (errno jest równa ENETUNREACH) .
- Zmiany:
- Usunięto pakietami, który jest już dostępny w packages.debian.org lub za pomocą apt-get.
Co nowego w wersji 2.1.3:
- Fix PUSH gniazda, które czasem dostarczenia ogon Ramy wiadomości wieloczęściowej do nowych abonentów (Martin Sustrik).
- Fix do gniazd pub, które czasem dostarczenia ramek ogon wiadomości wieloczęściowej do nowych abonentów (Martin Sustrik).
- build Windows został uszkodzony z powodu EPROTONOSUPPORT nie zdefiniowano. Obecnie została ustalona (Martin Sustrik).
- Różne poprawki do pracy portu OpenVMS (Brett Cameron).
- Poprawiono Reference Manual, aby pamiętać, że opcja gniazda ZMQ_LINGER może być ustawiony w dowolnym momencie, nie tylko przed podłączeniem / wiązania (Pieter Hintjens).
- Fix do C ++ wiążące właściwie bliskie gniazda (Guido Goldstein).
- Usunięto nieaktualne dochodzić od pgm_socket.cpp (Martin Sustrik).
- Usunięto urządzenia wolnostojące (/ Urządzenia podkatalogu) z dystrybucji. Pozostają te nieudokumentowane programy dostępne w starszych pakietach (Pieter Hintjens).
- OpenPGM domyślna stawka podniesiona do 40mbps domyślnie (Steven McCoy).
- ZMQ_DEALER i ZMQ_ROUTER makra, które zapewniają prostą aktualizację do 0MQ / 3.0. Są one zaplanowane zastąpić ZMQ_XREQ i ZMQ_XREP (Pieter Hintjens).
- Dodane strony man dla zmq_device (3), który do niego nieudokumentowane (Pieter Hintjens).
- Usunięto zmq_queue (3), zmq_forwarder (3), zmq_streamer (3) strony man (Pieter Hintjens).
- Ulepszony OpenPGM do wersji 5.1.114 (Steven McCoy Mikko Koppanen).
- Zbuduj system wywołuje teraz OpenPGM budowania procesu bezpośrednio, dzięki czemu łatwiejsze przyszłych aktualizacji OpenPGM (Mikko Koppanen).
- System Budowanie umożliwia konfigurację z dowolnych wersjach OpenPGM (./configure --with-pgm = libpgm-xyz) (Mikko Koppanen).
- OpenPGM wykorzystuje nowy PGM_ODATA_MAX_RTE kontroli danych oryginalnych zamiast PGM_TXW_MAX_RTE obejmujące cały kanał (Steven McCoy).
- 0MQ buduje poprawnie na FreeBSD (Mikko Koppanen).
Co nowego w wersji 2.1.2 RC2:
- 0MQ się poprawnie, trwałe gniazda InProc; poprzednio ignorowane wyraźne tożsamości na gniazdach InProc.
- Różne wycieki pamięci zostały ustalone.
- OpenPGM nadawca / odbiorca stałe.
Tworzenie
Co nowego w wersji 2.1.1:
- Ta wersja stabilna kilka ważnych poprawek na 2.1.0 i nie przyniósł większych zmian funkcjonalności.
Co nowego w wersji 2.0.10:
- To jest wydanie poprawkowe bez większych zmian.
Co nowego w wersji 2.0.9:.
- Poprawiono kilka błędów,
Co jest nowa w wersji 2.0.8:
- Funkcja ZMQ_SWAP został już wdrożony we wszystkich gniazda typy.
- Około 30 błędy zostały naprawione.
Co nowego w wersji 2.0 Beta 6:
- Dodaj Git lokalizację README
- Aktualizuj README
- Dodaj MSVC zbudować pliki do dystrybucji
- Usuwanie pozostałości MSVC buduje
- Merge oddział "kapitan" z git@github.com: sustrik / zeromq2
- wyjaśnienie ograniczenia zmq_poll
- C ++ aktualizacje dokumentacji interfejsu
- porządki na autogen.sh
- Użyj POSIX & quot; Polecenie -v & quot; budowy do testowania wstępnych poleceń
- Wyjaśnij, informacje o błędach,
- pipe_t :: wycofywania usuwa tylko niedokończone wiadomość z rury, a nie wszystkich unflushed wiadomości
- Wdrożenie kontroli przepływu
- Ten popełnienia wprowadza niezbędne zmiany konieczne,
- za realizację kontroli przepływu. Żaden z typów gniazd,
- implementuje jeszcze kontroli przepływu. Kod będzie się zawieszać przy
- Kontrola przepływu jest włączona i LWM THW zostanie osiągnięty.
- Poniższe Zobowiązuje doda wsparcie kontroli przepływu dla
- typy gniazd indywidualnych.
- C i C ++ przeniesiony z wiązaniami / włączyć /, wiązania / usunięte
- - z-c i --with-cpp opcji do konfiguracji usunięte, C i C ++ już zbudowany,
- i instalowane domyślnie
Nagłówki
Co nowego w wersji 2.0 Beta 1:
- Ta wersja zawiera Common Lisp API, zero-copy dla dużych wiadomości i wiele więcej.
Komentarze nie znaleziono