0MQ er en lett messaging-kjernen.
Få to apps til å snakke er alltid en utfordring. De må bli enige om hva dataene ser ut. Og hva det betyr. De må bli enige om hvordan dataene er organisert i en melding. XML, binær, eller noe annet? De må bli enige hvordan å snakke med hverandre. De må bli enige om sikkerhet. De må bli enige hvordan du kobler, over hvilke nettverk. De trenger å stå i kø meldinger som ikke kan leveres umiddelbart. De trenger å oppdage og håndtere feil ordentlig.
Mange apps prøve å løse disse problemene fra scratch. Men du kan også kjøpe store, dyre, langsomme pakker kalt "meldingssystemer" som håndterer mange av disse jobbene for deg. Noen av disse systemene selv bli enige om standardprotokoller som AMQP. Ved hjelp av et meldingssystem vanligvis koster mye, men det gir deg muligheten til å bringe apps sammen.
Meldinger pleide å være for store velstående bedrifter bare, og de virkelig raske meldingssystemer er fortsatt veldig dyrt. Denne situasjonen er i endring.
Her er noen viktige trekk ved "0MQ":
繚 Vår misjon med 嚙 瞎 Q ("ZeroMQ") er å bygge den raskeste messaging noensinne. Måten å få ytelsen er å optimalisere hele software og hardware stack sammen. Så utvikler vi 嚙 瞎 Q tett med store maskinvare butikk.
繚 嚙 瞎 Q er allerede veldig fort. Vi får 25 & mu; sek ende-til-ende ventetider og 2,8 millioner meldinger per sekund i dag.
繚 嚙 瞎 Q er helt gratis GPL-lisensiert programvare skrevet i C ++.
繚 嚙 瞎 Q er et prosjekt som pågår. Laste ned koden, lese whitepaper og testresultater, eller bli med på prosjektet hvis du er en meldingstjeneste fanatiker.
嚙 瞎 Q er et samarbeid mellom en gruppe av bedrifter, nemlig FastMQ (som bringer opplevelsen av det finansielle meldingsmarkedet), iMatix (som bringer AMQP kompetanse), Intel (som bringer hardware kompetanse) og andre bedrifter med maskinvare, operativsystem, nettverk, og anvendelse kompetanse. FastMQ Inc. vil samle alle opphavsrett på koden.
嚙 瞎 Q Goals
繚 Bygget på standarder: for rammeverk, protokoller, og samfunnet.
繚 knuser noe nettverk, fra 10 Gb Ethernet, til 4X IB.
繚 Transfer 2M meldinger i sekundet på et 1Gb nettverk med én CPU i hver ende.
繚 Ende-til-ende-latency etter tjue & mu; sek over TCP bruker egendefinerte nettverk maskinvare og drivere.
繚 Slår alle kommersielt produkt: raskere, mer portable, mer pålitelig, mer brukbare.
繚 Bygd for samfunnet: fri programvare i åpen kildekode-miljøet.
繚 Designet for den virkelige verden: video, aksjer, spill, rutenett, sanntidsdata, bekker.
繚 Kjører overalt: de minste enheter, alle operativsystemer, alle språk.
繚 Fullt fordelt: ingen sentrale servere til å krasje, milliarder av WAN og LAN-noder.
繚 Extensible rammeverk: kernel-stil drivere for tilpasset maskinvare eller applikasjoner
Hva er nytt i denne utgivelsen:.
- Bugfiks :
- Fikset problem 223, påstand svikt i tcp_connecter.cpp: 300 når du kobler til en server som er på et uoppnåelig nettverk (Feilkode er lik ENETUNREACH) .
- Endringer:
- Fjernet Debian emballasje, som nå er tilgjengelig på packages.debian.org eller via apt-get.
Hva er nytt i versjon 2.1.3:
- Fix til PUSH stikkontakter, som noen ganger ville levere hale rammene av en flerdelt melding til nye abonnenter (Martin Sustrik).
- Fix til PUB stikkontakter, som noen ganger ville levere halen rammer av en flerdelt melding til nye abonnenter (Martin Sustrik).
- Windows build ble brutt på grunn av EPROTONOSUPPORT ikke blir definert. Dette har nå blitt fikset (Martin Sustrik).
- Forskjellige fikser å gjøre OpenVMS port arbeid (Brett Cameron).
- Korrigert Reference Manual å merke seg at ZMQ_LINGER socket alternativet kan settes når som helst, ikke bare før tilkobling / binding (Pieter Hintjens).
- Fix til C ++ binding til skikkelig nære stikkontakter (Guido Goldstein).
- Fjernet foreldet hevde fra pgm_socket.cpp (Martin Sustrik).
- Fjernet frittstående enheter (/ enheter underkatalog) fra distribusjon. Disse udokumenterte programmene være tilgjengelig i eldre pakker (Pieter Hintjens).
- OpenPGM mislighold hevet til 40mbps som standard (Steven McCoy).
- ZMQ_DEALER og ZMQ_ROUTER makroer oppgitt til lette oppgradere til 0MQ / 3.0. Disse er planlagt å erstatte ZMQ_XREQ og ZMQ_XREP (Pieter Hintjens).
- Lagt man-siden for zmq_device (3) som ble hertil udokumentert (Pieter Hintjens).
- Fjernet zmq_queue (3), zmq_forwarder (3), zmq_streamer (3) man-sidene (Pieter Hintjens).
- Oppgradert OpenPGM til versjon 5.1.114 (Steven McCoy, Mikko Koppanen).
- Bygg systemet kaller nå OpenPGM bygge prosessen direkte, slik at enklere fremtidige oppgraderinger av OpenPGM (Mikko Koppanen).
- Bygg systemet tillater konfigurasjon med vilkårlige versjoner av OpenPGM (./configure --with-pgm = libpgm-xyz) (Mikko Koppanen).
- OpenPGM bruker ny PGM_ODATA_MAX_RTE kontrollerende opprinnelige dataene i stedet for PGM_TXW_MAX_RTE dekker hele kanalen (Steven McCoy).
- 0MQ bygger ordentlig på FreeBSD (Mikko Koppanen).
Hva er nytt i versjon 2.1.2 RC2:
- 0MQ nå håndterer holdbare inproc stikkontakter riktig; tidligere det ignorert eksplisitte identiteter på inproc stikkontakter.
- Ulike lekkasjer minne ble fikset.
- OpenPGM avsender / mottaker fast.
Skapelse
Hva er nytt i versjon 2.1.1:
- Dette er en stabil utgave med flere viktige feilrettinger i løpet 2.1.0 og ingen store funksjonsendringer.
Hva er nytt i versjon 2.0.10:
- Dette er en bugfix utgivelse uten store endringer.
Hva er nytt i versjon 2.0.9:.
- Fikset flere bugs
Hva er nytt i versjon 2.0.8:
- Den ZMQ_SWAP funksjonaliteten er nå implementert for alle socket typer.
- Om 30 feil ble fikset.
Hva er nytt i versjon 2.0 Beta 6:
- Legg Git beliggenhet til README
- Oppdater README
- Legg MSVC bygge filer til distribusjon
- Fjerne left MSVC bygger
- Slå sammen grenen "master" av git@github.com: sustrik / zeromq2
- belyser zmq_poll restriksjoner
- C ++ oppdateringer grensesnitt dokumentasjon
- opprydding til autogen.sh
- Bruk POSIX & quot; kommando -V & quot; konstruere å teste for forutsetning kommandoer
- Avklare feilmeldinger på svikt
- pipe_t :: rollback fjerner bare uferdig melding fra røret i stedet for alle unflushed meldinger
- Implementere flytkontroll
- Dette begå introduserer de nødvendige endringene nødvendig
- for å gjennomføre flytkontroll. Ingen av kontakt typer
- implementerer flytkontroll ennå. Koden vil krasje når
- flyten kontroll er aktivert og THW LWM er nådd.
- Følgende inger vil legge til flyt-kontroll støtte for
- individuell kontakt typer.
- C og C ++ overskrifter flyttet fra bindinger / for å inkludere /, bindinger / fjernet
- - med-c og --with-cpp alternativer for å konfigurere fjernet, C og C ++ nå bygget
- og installert som standard
Hva er nytt i versjon 2.0 Beta 1:
- Denne versjonen inkluderer Common Lisp API, null-kopi for store meldinger og mer.
Kommentarer ikke funnet