Postás programtervezési minta
A számítógépprogramozásban az üzenetbróker, üzenetközvetítő, postás vagy tolmács egy köztes modul, ami a küldő formális protokolljáról a fogadó formális protokolljára fordítja az üzenetet. Az adapter programtervezési minta egy példája. A távközlés és a hálózati programozás gyakran használja, ahol az üzenetek formája előre definiálva van. Az üzenetorientált middleware építőegysége.
Feladatai
szerkesztésA postás tervminta célja az üzenet érvényességének ellenőrzése, átalakítása és routolása. Ha alkalmazások között közvetít, akkor lazítja a kapcsolatukat, így kevesebbet kell tudniuk ahhoz, hogy kommunikálni tudjanak.
A postás a következő transzformációkat végzi:
- Üzenet routolása egy vagy több címre.
- Üzenet átalakítása egy másik formába.
- Üzenetcsomag szétbontása, majd válaszcsomag összeállítása a több helyből érkezett válaszokból.
- Külső tárhellyel való kapcsolatfelvétel, üzenet tárolása vagy kiegészítése céljából.
- Webszolgáltatások igénybevétele az üzenet kiegészítése érdekében.
- Események vagy hibák továbbküldése.
- Környezet és téma alapú routolása a publish-subscribe mintának megfelelően.
Nem minden rendszer igényli a postás tervmintát. Például, ha ugyanaz a két végpont protokollja, akkor összekapcsolhatók a publish-subscribe programtervezési mintának megfelelően. A minta függetleníti a végpontokat, megkönnyíti a köztes függvények alkalmazását és javíthatja a nem funkcionális követelményeket. Kezelhet üzenetsort, vagy feladatok sorát, például ha ugyanazt az üzenetet több címzettnek kell kézbesíteni, de nyújthat további szolgáltatásokat is, megbízható tárolást, garantált üzenetközvetítést vagy tranzakciókezelést nyújtva.
Megvalósításai
szerkesztés- Apache ActiveMQ
- Apache Kafka
- Apache Qpid
- Celery
- Cloverleaf (E-Novation Lifeline)
- Comverse Message Broker (Comverse Technology)
- Enduro/X Transactional Message Queue (TMQ)
- Financial Fusion Message Broker (Sybase)
- Fuse Message Broker (enterprise ActiveMQ)
- Gearman
- HornetQ (Red Hat)
- IBM Integration Bus
- IBM Message Queues / IBM WebSphere MQ
- JBoss Messaging (JBoss)
- JORAM
- Microsoft Azure Service Bus (Microsoft)
- Microsoft BizTalk Server (Microsoft)
- NATS (MIT Open Source License, a Góban írva)
- Open Message Queue
- Oracle Message Broker (Oracle Corporation)
- QDB (Apache License 2.0, időpont szerinti visszajátszást is támogat)
- RabbitMQ (Mozilla Public License, Erlangban)
- Redis Nyílt forrású, memóriában működő adattárral, mint adatbázissal, cache-sel és postás programtervezési mintával.
- SAP PI (SAP AG)
- Solace Systems Message Router
- Spread Toolkit
- Tarantool, egy NoSQL adatbázis, üzenetsorokhoz tárolt függvényekkel
- WSO2 Message Broker
Fordítás
szerkesztésEz a szócikk részben vagy egészben a Message broker című angol Wikipédia-szócikk fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.