esb

El "número mágico" de la Lotería de Navidad desborda a una administración de El Escorial gracias a la Inteligencia Artificial

 Leer



  • Lotería de Navidad

esb

In Memoriam, Dorothy Allison (Author, Lesbian, Working-class Escapee)

American author, activist, lesbian, teacher, anthropologist, and working-class escapee, Dorothy Allison, died November 6th, 2024. She was 75 years old. In her honor, Arlene Zaucha shared the radio program she […]

The post In Memoriam, Dorothy Allison (Author, Lesbian, Working-class Escapee) appeared first on KKFI.




esb

Light in the dark on Lesbos

OM partners with a Greek aid organisation to run the only Christian camp on Lesbos, offering help in Jesus' name.




esb

Francis Schaeffer (1912-1984) - At one time an agnostic, Francis Schaeffer later became a Presbyterian minister with an ability to see how the questions of meaning, morals, and value being dealt with by philosophy, were the same questions that the Bible d

Francis Schaeffer was a Presbyterian minister with an ability to see how the questions of meaning, morals, and value being dealt with by philosophy, were the same questions that the Bible dealt with, only in different language. Once an agnostic, Schaeffer came to the conclusion that Biblical Christianity not only gave sufficient answers to the big questions, but that they were the only answers that were both self-consistent and livable. With this conviction he became a man of conversation. Schaeffer taught that God is really there and He is not silent. He had spoken to man in the Bible as and a result we could have "true truth" about God and man. Knowing the dignity of man created in God's image, he placed a high value on creativity as an expression of that image. He opened his Swiss home to travelers to discuss these things. Later he began lecturing in universities and writing a number of books. Perhaps no other Christian thinker of the twentieth century, besides C.S. Lewis, has had more influence on thinking people.



  • Christian Church History Study
  • 3. 1522 A.D. to 1880 A.D. - Indigenous Bible translations and Church Doctrines era - The Reformation

esb

Landesbeauftragte begrüßen Zusage der Ministerpräsidentenkonferenz zur Förderung der Inklusion von Menschen mit Behinderungen




esb

Landesbeauftragter für politische Bildung, Aktion Kinder- und Jugendschutz SH und Offene Kirche Sankt Nikolai holen Anne-Frank-Ausstellung 2025 nach Kiel und erinnern mahnend an Novemberpogrome




esb

Landesbeauftragter für politische Bildung: Alle Stolpersteine in Schleswig-Holstein jetzt in der App "Stolpersteine Digital" verfügbar




esb

July 21 Pacific AFRS Radio History - 9PA Port Moresby - By Adrian Petersen

For a period of around two years during the Pacific War, there was no radio broadcasting station on the air in Port Moresby. ...




esb

Neil Diamond concert stage in Johannesburg

On sunday April 2. 2011 the American singer Neil Diamond gave a concert at FNB Stadium in Johannesburg.
In this image the set being built up.

http://lee-reinhardt.blogspot.dk/2011/04/neil-diamond-concert-fnb-stadium.html





esb

Jehovahs Witness meeting in Johannesburg

On 18. December 2011 79 000 Jehovah’s Witnesses gather at FNB Stadium for instruction.

http://www.timeslive.co.za/ilive/2011/12/18/79-000-jehovahs-witnesses-gather-at-soccer-city-for-instruction-ilive





esb

lesbian lust

lesbian lust




esb

JonesBootmaker

Cheap Boot's from JonesBootmaker.com




esb

Teraco expands Johannesburg campus with new 40MW data centre

(Telecompaper) Teraco, a Digital Realty company and provider of interconnection platforms and colocation data centres in South Africa, announced that construction...




esb

Desbloquee datos de TikTok y cree un análisis comparativo junto a Shareablee

Shareablee, la herramienta líder en medición de audiencias en redes sociales y digitales habilita 26 nuevas métricas de medición enfocadas en la plataforma de TikTok para Latinoamérica




esb

Oct 15 - Hieromartyr Lucian, Presbyter Of The Chuch Of Antioch




esb

Oct 15- Holy Hieromartyr Lucian, Presbyter Of The Church Of Antioch




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch




esb

Hieromartyr Artemon, Presbyter of Laodicea in Syria




esb

Hieromartyr Artemon, Presbyter of Laodicea in Syria




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch




esb

Hieromartyr Artemon, Presbyter of Laodicea in Syria




esb

Hieromartyr Artemon, Presbyter of Laodicea in Syria




esb

Hieromartyr Artemon, Presbyter of Laodicea in Syria




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch




esb

Hieromartyr Artemon, presbyter of Laodicea in Syria (303)

At the time of Diocletian's persecutions, he was a very old man, having served as a reader for sixteen years, then a deacon for twenty-eight years, and finally as a priest for thirty years, for a total of seventy-four years. The pagan judge put him in the Temple of Aesculapius, where large snakes were kept and worshiped as gods. Though the judge meant for Artemon to be attacked by the snakes, the holy priest immobilized them with the sign of the Cross, brought them out of the temple and, in front of the pagan priests, breathed on the snakes, which died instantly. The chief priest, Vitalis, fell to his knees and cried 'Great is the Christian God!' Artemon baptised him along with several of his friends.   The unrepentant judge then condemned Artemon to be thrown into burning pitch, but the judge himself was thrown off his horse into the pitch and died. After this, Artemon went free for a time and spent his time teaching the Faith to his people ("accompanied always by two tame deer," says St Nikolia Velimirovic!). But he was arrested again and beheaded in the year 303.




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch (312)

He was born in Samosata in Syria (and is sometimes referred to as "Lucian of Samosata") of noble parents. In his youth he received an excellent education. Though a privileged life was open to him, he gave all his goods away to the poor and embraced a life of asceticism, supporting himself writing and tutoring. He produced an edition of the Old Testament, freeing it from various corruptions introduced by heretics. He was made a priest in Antioch, where he served the Church faithfully. During the persecutions of Maximian, he was arrested while visiting Nicomedia to strengthen the faithful there. He was cast into prison for his faith and allowed to perish of hunger and thirst. Saint John Chrysostom wrote of him: "He scorned hunger; let us also scorn luxury and destroy the lordship of the stomach; that we may, when the time comes for us to meet such torture, be prepared beforehand, by the help of a lesser ascesis, to show ourselves worthy of glory in the hour of battle."




esb

Hieromartyr Artemon, presbyter of Laodicea in Syria (303)

At the time of Diocletian's persecutions, he was a very old man, having served as a reader for sixteen years, then a deacon for twenty-eight years, and finally as a priest for thirty years, for a total of seventy-four years. The pagan judge put him in the Temple of Aesculapius, where large snakes were kept and worshiped as gods. Though the judge meant for Artemon to be attacked by the snakes, the holy priest immobilized them with the sign of the Cross, brought them out of the temple and, in front of the pagan priests, breathed on the snakes, which died instantly. The chief priest, Vitalis, fell to his knees and cried 'Great is the Christian God!' Artemon baptised him along with several of his friends.   The unrepentant judge then condemned Artemon to be thrown into burning pitch, but the judge himself was thrown off his horse into the pitch and died. After this, Artemon went free for a time and spent his time teaching the Faith to his people ("accompanied always by two tame deer," says St Nikolia Velimirovic!). But he was arrested again and beheaded in the year 303.




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch (312)

He was born in Samosata in Syria (and is sometimes referred to as "Lucian of Samosata") of noble parents. In his youth he received an excellent education. Though a privileged life was open to him, he gave all his goods away to the poor and embraced a life of asceticism, supporting himself writing and tutoring. He produced an edition of the Old Testament, freeing it from various corruptions introduced by heretics. He was made a priest in Antioch, where he served the Church faithfully. During the persecutions of Maximian, he was arrested while visiting Nicomedia to strengthen the faithful there. He was cast into prison for his faith and allowed to perish of hunger and thirst. Saint John Chrysostom wrote of him: "He scorned hunger; let us also scorn luxury and destroy the lordship of the stomach; that we may, when the time comes for us to meet such torture, be prepared beforehand, by the help of a lesser ascesis, to show ourselves worthy of glory in the hour of battle."




esb

Hieromartyr Artemon, presbyter of Laodicea in Syria (303)

At the time of Diocletian's persecutions, he was a very old man, having served as a reader for sixteen years, then a deacon for twenty-eight years, and finally as a priest for thirty years, for a total of seventy-four years. The pagan judge put him in the Temple of Aesculapius, where large snakes were kept and worshiped as gods. Though the judge meant for Artemon to be attacked by the snakes, the holy priest immobilized them with the sign of the Cross, brought them out of the temple and, in front of the pagan priests, breathed on the snakes, which died instantly. The chief priest, Vitalis, fell to his knees and cried 'Great is the Christian God!' Artemon baptised him along with several of his friends.   The unrepentant judge then condemned Artemon to be thrown into burning pitch, but the judge himself was thrown off his horse into the pitch and died. After this, Artemon went free for a time and spent his time teaching the Faith to his people ("accompanied always by two tame deer," says St Nikolia Velimirovic!). But he was arrested again and beheaded in the year 303.




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch (312)

He was born in Samosata in Syria (and is sometimes referred to as "Lucian of Samosata") of noble parents. In his youth he received an excellent education. Though a privileged life was open to him, he gave all his goods away to the poor and embraced a life of asceticism, supporting himself writing and tutoring. He produced an edition of the Old Testament, freeing it from various corruptions introduced by heretics. He was made a priest in Antioch, where he served the Church faithfully. During the persecutions of Maximian, he was arrested while visiting Nicomedia to strengthen the faithful there. He was cast into prison for his faith and allowed to perish of hunger and thirst. Saint John Chrysostom wrote of him: "He scorned hunger; let us also scorn luxury and destroy the lordship of the stomach; that we may, when the time comes for us to meet such torture, be prepared beforehand, by the help of a lesser ascesis, to show ourselves worthy of glory in the hour of battle."




esb

Hieromartyr Artemon, presbyter of Laodicea in Syria (303)

At the time of Diocletian's persecutions, he was a very old man, having served as a reader for sixteen years, then a deacon for twenty-eight years, and finally as a priest for thirty years, for a total of seventy-four years. The pagan judge put him in the Temple of Aesculapius, where large snakes were kept and worshiped as gods. Though the judge meant for Artemon to be attacked by the snakes, the holy priest immobilized them with the sign of the Cross, brought them out of the temple and, in front of the pagan priests, breathed on the snakes, which died instantly. The chief priest, Vitalis, fell to his knees and cried 'Great is the Christian God!' Artemon baptised him along with several of his friends.   The unrepentant judge then condemned Artemon to be thrown into burning pitch, but the judge himself was thrown off his horse into the pitch and died. After this, Artemon went free for a time and spent his time teaching the Faith to his people ("accompanied always by two tame deer," says St Nikolia Velimirovic!). But he was arrested again and beheaded in the year 303.




esb

Hieromartyr Artemon, presbyter of Laodicea in Syria (303)

At the time of Diocletian's persecutions, he was a very old man, having served as a reader for sixteen years, then a deacon for twenty-eight years, and finally as a priest for thirty years, for a total of seventy-four years. The pagan judge put him in the Temple of Aesculapius, where large snakes were kept and worshiped as gods. Though the judge meant for Artemon to be attacked by the snakes, the holy priest immobilized them with the sign of the Cross, brought them out of the temple and, in front of the pagan priests, breathed on the snakes, which died instantly. The chief priest, Vitalis, fell to his knees and cried 'Great is the Christian God!' Artemon baptised him along with several of his friends.   The unrepentant judge then condemned Artemon to be thrown into burning pitch, but the judge himself was thrown off his horse into the pitch and died. After this, Artemon went free for a time and spent his time teaching the Faith to his people ("accompanied always by two tame deer," says St Nikolia Velimirovic!). But he was arrested again and beheaded in the year 303.




esb

Holy Hieromartyr Lucian, Presbyter of the Church of Antioch (312)

He was born in Samosata in Syria (and is sometimes referred to as "Lucian of Samosata") of noble parents. In his youth he received an excellent education. Though a privileged life was open to him, he gave all his goods away to the poor and embraced a life of asceticism, supporting himself writing and tutoring. He produced an edition of the Old Testament, freeing it from various corruptions introduced by heretics. He was made a priest in Antioch, where he served the Church faithfully. During the persecutions of Maximian, he was arrested while visiting Nicomedia to strengthen the faithful there. He was cast into prison for his faith and allowed to perish of hunger and thirst. Saint John Chrysostom wrote of him: "He scorned hunger; let us also scorn luxury and destroy the lordship of the stomach; that we may, when the time comes for us to meet such torture, be prepared beforehand, by the help of a lesser ascesis, to show ourselves worthy of glory in the hour of battle."




esb

Health staff pay deals cannot be matched, says Nesbitt

The health minister predicts difficult conversations with unions over pay due to budget problems.




esb

Meet Middlesbrough's championship cuber

12-year-old Alfie has competed in three Rubik's Cube championships.




esb

Understanding ESB Performance & Benchmarking

ESB performance is a hot (and disputed topic). In this post I don't want to talk about different vendors or different benchmarks. I'm simply trying to help people understand some of the general aspects of benchmarking ESBs and what to look out for in the results.

The general ESB model is that you have some service consumer, an ESB in the middle and a service provider (target service) that the ESB is calling. To benchmark this, you usually have a load driver client, an ESB, and a dummy service.

+-------------+      +---------+      +---------------+
| Load Driver |------|   ESB   |------| Dummy Service |
+-------------+      +---------+      +---------------+

Firstly, we want the Load Driver (LD), the ESB and the Dummy Service (DS) to be on different hardware. Why? Because we want to understand the ESB performance, not the performance of the DS or LD.

The second thing to be aware of is that the performance results are completely dependent on the hardware, memory, network, etc used. So never compare different results from different hardware.

Now there are three things we could look at:
A) Same LD, same DS, different vendors ESBs doing the same thing (e.g. content-based routing)
B) Same LD, same DS, different ESB configs for the same ESB, doing different things (e.g. static routing vs content-based routing)
C) Going via ESB compared to going Direct (e.g. LD--->DS without ESB)

Each of these provides useful data but each also needs to be understood.

Metrics
Before looking at the scenarios, lets look at how to measure the performance. The two metrics that are always a starting point in any benchmark of an ESB here are the throughput (requests/second) and the latency (how long each request takes). With latency we can consider overall latency - the time taken for a completed request observed at the LD, and the ESB latency, which is the time taken by the message in the ESB. The ESB latency can be hard to work out. A well designed ESB will already be sending bytes to the DS before its finished reading the bytes the LD has sent it. This is called pipelining. Some ESBs attempt to measure the ESB latency inside the ESB using clever calculations. Alternatively scenario C (comparing via ESB vs Direct) can give an idea of ESB Latency. 

But before we look at the metrics we need to understand the load driver.

There are two different models to doing Load Driving:
1) Do a realistic load test based on your requirements. For example if you know you want to support up to 50 concurrent clients each making a call every 5 seconds on average, you can simulate this.
2) Saturation! Have a large number of clients, each making a call as soon as the last one finishes.

The first one is aimed at testing what the ESB does before its fully CPU loaded. In other words, if you are looking to see the effect of adding an ESB, or the comparison of one ESB to another under realistic load, then #1 is the right approach. In this approach, looking at throughput may not be useful, because all the different approaches have similar results. If I'm only putting in 300 requests a sec on a modern system, I'm likely to see 300 request a sec. Nothing exciting. But the latency is revealing here. If one ESB responds in less time than another ESB thats a very good sign, because with the same DS the average time per request is very telling.

On the other hand the saturation test is where the throughput is interesting. Before you look at the throughput though, check three things:
1) Is the LD CPU running close to 100%?
2) Is the DS CPU running close to 100%?
3) Is the network bandwidth running close to 100%?

If any of these are true, you aren't doing a good test of the ESB throughput. Because if you are looking at throughput then you want the ESB to be the bottleneck. If something else is the bottleneck then the ESB is not providing its max throughput and you aren't giving it a fair chance. For this reason, most benchmarks use a very very lightweight LD or a clustered LD, and similarly use a DS that is superfast and not a realistic DS. Sometimes the DS is coded to do some real work or sleep the thread while its executing to provide a more realistic load test. In this case you probably want to look at latency more than throughput.

Finally you are looking to see a particular behaviour for throughput testing as you increase load.
Throughput vs Load
The shape of this graph shows an ideal scenario. As the LD puts more work through the ESB it responds linearly. At some point the CPU of the ESB hits maximum, and then the throughput stabilizes.  What we don't want to see is the line drooping at the far right. That would mean that the ESB is crumpling under the extra load, and its failing to manage the extra load effectively. This is like the office worker whose efficiency increases as you give them more work but eventually they start spending all their time re-organizing their todo lists and less work overall gets done.

Under the saturation test you really want to see the CPU of the ESB close to 100% utilised. Why? This is a sign that its doing as much as possible. Why would it not be 100%? Two reasons: I/O, multi-processing and thread locks: either the network card or disk or other I/O is holding it up, the code is not efficiently using the available cores, or there are thread contention issues.

Finally its worth noting that you expect the latency to increase a lot under the saturation test. A classic result is this: I do static routing for different size messages with 100 clients LD. For message sizes up to 100k maybe I see a constant 2ms overhead for using the ESB. Suddenly as the message size grows from 100k to 200k I see the overhead growing in proportion to the message size.


Is this such a bad thing? No, in fact this is what you would expect. Before 100K message size, the ESB is underloaded. The straight line up to this point is a great sign that the ESB is pipelining properly. Once the CPU becomes loaded, each request is taking longer because its being made to wait its turn at the ESB while the ESB deals with the increased load.

A big hint here: When you look at this graph, the most interesting latency numbers occur before the CPU is fully loaded. The latency after the CPU is fully loaded is not that interesting, because its simply a function of the number of queued requests.

Now we understand the metrics, lets look at the actual scenarios.

A. Different Vendors, Same Workload
For the first comparison (different vendors) the first thing to be careful of is that the scenario is implemented in the best way possible in each ESB. There are usually a number of ways of implementing the same scenario. For example the same ESB may offer two different HTTP transports (or more!). For example blocking vs non-blocking, servlet vs library, etc. There may be an optimum approach and its worth reading the docs and talking to the vendor to understand the performance tradeoffs of each approach.

Another thing to be careful of in this scenario is the tuning parameters. Each ESB has various tuning aspects that may affect the performance depending on the available hardware. For example, setting the number of threads and memory based on the number of cores and physical memory may make a big difference.

Once you have your results, assuming everything we've already looked at is tickety-boo, then both latency and throughput are interesting and valid comparisons here. 

B. Different Workloads, Same Vendor
What this is measuring is what it costs you to do different activities with the same ESB. For example, doing a static routing is likely to be faster than a content-based routing, which in turn is faster than a transformation. The data from this tells you the cost of doing different functions with the ESB. For example you might want to do a security authentication/authorization check. You should see a constant bump in latency for the security check, irrespective of message size. But if you were doing complex transformation, you would expect to see higher latency for larger messages, because they take more time to transform. 

C. Direct vs ESB
This is an interesting one. Usually this is done for a simple static routing/passthrough scenario. In other words, we are testing the ESB doing its minimum possible. Why bother? Well there are two different reasons. Firstly ESB vendors usually do this for their own benefit as a baseline test. In other words, once you understand the passthrough performance you can then see the cost of doing more work (e.g. logging a header, validating security, transforming the message). 

Remember the two testing methodologies (realistic load vs saturation)? You will see very very different results in each for this, and the data may seem surprising. For the realistic test, remember we want to look at latency. This is a good comparison for the ESB. How much extra time is spent going through the ESB per request under normal conditions. For example, if the average request to the backend takes 18ms and the average request via the ESB takes 19ms, we have an average ESB latency of 1ms. This is a good result - the client is not going to notice much difference - less than 5% extra. 

The saturation test here is a good test to compare different ESBs. For example, suppose I can get 5000 reqs/sec direct. Via ESB_A the number is 3000 reqs/sec and via ESB_B the number is 2000 reqs/sec, I can say that ESB_A is providing better throughput than ESB_B. 

What is not  a good metric here is comparing throughput in saturation mode for direct vs ESB. 


Why not? The reason here is a little complex to explain. Remember how we coded DS to be as fast as possible so as not to be a bottleneck? So what is DS doing? Its really just reading bytes and sending bytes as fast as it can. Assuming the DS code is written efficiently using something really fast (e.g. just a servlet), what this is testing is how fast the hardware (CPU plus Network Card) can read and write through user space in the operating system. On a modern server hardware box you might get a very high number of transactions/sec. Maybe 5000req/s with each message in and out being 1k in size.

So we have 1k in and 1k out = 2k IO.
2k IO x 5000 reqs/sec x 8bits gives us the total network bandwidth of 80Mbits/sec (excluding ethernet headers and overhead).

Now lets look at the ESB. Imagine it can handle 100% of the direct load. There is no slowdown in throughput for the ESB. For each request it has to read the message in from LD and send it out to DS. Even if its doing this in pipelining mode, there is still a CPU cost and an IO cost for this. So the ESB latency of the ESB maybe 1ms, but the CPU and IO cost is much higher. Now, for each response it also has to read it in from DS and write it out to LD. So if the DS is doing 80Mbits/second, the ESB must be doing 160Mbits/second. 

Here is a picture.

Now if the LD is good enough, it will have loaded the DS to the max. CPU or IO capacity or both will be maxed out. Suppose the ESB is running on the same hardware platform as the DS. If the DS machine can do 80Mbit/s flat out, there is no way that the same hardware running as an ESB can do 160Mbit/s! In fact, if the ESB and DS code are both as efficient as possible, then the throughput via ESB will always be 50% of the throughput direct to the DS. Now there is a possible way for the ESB to do better: it can be better coded than the DS. For example, if the ESB did transfers in kernel space instead of user space then it might make a difference. The real answer here is to look at the latency. What is the overhead of adding the ESB to each request. If the ESB latency is small, then we can solve this problem by clustering the ESB. In this case we would put two ESBs in and then get back to full throughput.

The real point of this discussion is that this is not a useful comparison. In reality backend target services are usually pretty slow. If the same dual core server is actually doing some real work - e.g. database lookups, calculations, business logic - then its much more likely to be doing 500 requests a second or even less. 

The following chart shows real data to demonstrate this. The X-Axis shows increasing complexity of work at the backend (DS). As the effort taken by the backend becomes more realistic, the loss in throughput of having an ESB in the way reduces. So with a blindingly fast backend, we see the ESB struggling to provide just 55% of the throughput of the direct case. But as the backend becomes more realistic, we see much better numbers. So at 2000 requests a second there is barely a difference (around 10% reduction in throughput). 


In real life, what we actually see is that often you have many fewer ESBs than backend servers. For example, if we took the scenario of a backend server that can handle 500 reqs/sec, then we might end up with a cluster of two ESBs handling a cluster of 8 backends. 

Conclusion
I hope this blog has given a good overview of ESB performance and benchmarking. In particular, when is a good idea to look at latency and when to use throughput. 





esb

Synapse and WSO2 ESB myths

There are a few myths about Synapse and the WSO2 ESB I'd like to address. Its amazing they still come up.

Not an ESB?
The first and oldest myth is that Synapse is not an ESB. This dates back to the initial creation of the project - before there was even any code! Dave Chappell was at Sonic at the time and he said "This project is related to ESB , but it is not in itself an ESB".

Well, firstly, since at that time Sonic was the ESB leader, he would say that! Secondly, this was purely theoretical - no code had been written at that point. While I love the internet's ability to archive everything for years, to quote this several years later (like the ServiceMix guys do here: http://servicemix.apache.org/how-does-servicemix-compare-to-synapse.html) is disingenuous to say the least.

The fact is that Synapse - both as a pure Apache project and when packaged as the runtime engine of the WSO2 ESB is an ESB. Rather than argue about the definition of an ESB, it would be simpler to describe a few of the many usecases it is in production for:

* Getting the latest trades from a legacy financial system and reporting them to third-parties to meet regulatory requirements.
* Linking an SAP/R3 system with a .NET-based Point-of-Sale (POS) system in 40+ retails stores to distribute the latest price updates.
* Integrating between BMC Remedy, Salesforce and Peoplesoft.
* Providing a full SOA bus for a telecom operator linking to provide a common fabric for payment services, SMS top up and other integrations.
* Lightweight Service Orchestration (what we call Service Chaining) - providing simple non-persistent flows across multiple services.
* Integrating FIX messaging to existing systems.
* etc etc

In addition, the beauty of the Synapse ESB (and WSO2 ESB) is that it can also provide very high performance lightweight routing, load-balancing, failover and security management, so it is often used for high throughput scenarios as well - for example at eBay where it handles well over 1bn request/response interactions/day.

Synapse (and WSO2 ESB) only support SOAP or translate every message into SOAP
This is also a complete myth. The WSO2 ESB has a very effective model for dealing with content that only parses the content as needed. This model is based on the concept of a message formatter and builder. These objects handle the internal representation of content and are very flexible. For example, the normal approach to handling non-XML data is to keep it as a binary stream. In addition, a new transport in the WSO2 ESB (the Passthru transport) supports even higher performance routing of messages where the message body is simply passed from one HTTP endpoint to the next, while still supporting useful functions like header-based routing, authentication and authorization, logging, throttling and cacheing.

For XML data, we have an internal model that unifies SOAP and non-SOAP. What this means is that for non-SOAP payloads, there are two extra objects in memory that represent the envelope and body. This makes it very easy (and performant) to handle scenarios like taking the SOAP body and publishing it (without the SOAP wrapper) onto a JMS queue.

 Because the XML object model we use (Apache Axiom) supports streaming (via StAX), the message is only built into a tree if a mediator such as the XSLT transform requests it.

I think this is where the mistaken belief lies. This is a bit like Heisenberg's Uncertainty Principle! The act of observing a quantum level action affects the action. Similarly, if you examine the message, then if you ask for it as SOAP, we will build it into a SOAP message and give it to you. Of course that doesn't mean it was a SOAP message until you asked for it as SOAP. If you were to ask for the message as pure XML then you would get it as a pure XML element. In both cases it remains as a binary stream until the point you ask for the message. If you simply route the message out to another system, it will not have been converted to or from anything:  Synapse will simply stream the message through and out to the target.

I hope that this clears up these two myths!




esb

OAuth2 Introspection with WSO2 ESB and WSO2 Identity Server

The OAuth2 specification defines several parties: the Client, the Resource Owner, the Authorization Server and the Resource Server. Here is the (textual) diagram from the spec:



     +--------+                               +---------------+
     |        |--(A)- Authorization Request ->|   Resource    |
     |        |                               |     Owner     |
     |        |<-(B)-- Authorization Grant ---|               |
     |        |                               +---------------+
     |        |
     |        |                               +---------------+
     |        |--(C)-- Authorization Grant -->| Authorization |
     | Client |                               |     Server    |
     |        |<-(D)----- Access Token -------|               |
     |        |                               +---------------+
     |        |
     |        |                               +---------------+
     |        |--(E)----- Access Token ------>|    Resource   |
     |        |                               |     Server    |
     |        |<-(F)--- Protected Resource ---|               |
     +--------+                               +---------------+

                     Figure 1: Abstract Protocol Flow

One flow that is not defined by the OAuth specification is any flow from the Resource Server to the Authorization server to validate an existing Bearer Token (or other token). 
The spec says:
The interaction between the authorization server and resource server is beyond the scope of this specification.  The authorization server may be the same server as the resource server or a separate entity. A single authorization server may issue access tokens accepted by multiple resource servers.
In many cases the Authorization server offers an API to access this. For example, Google allows you to call a TokenInfo APIto validate tokens. Similarly Facebook offers an API to "debug" a token. The WSO2 Identity Server also offers an API, but (shock and horror) we don't document it yet. The ESB and API manager both utilize this API to validate OAuth2 bearer tokens. The ESB code is of course available, and with a quick look at the code and also the use of TCPMON it didn't take me long to reverse engineer the API. This Gist has a sample HTTP SOAP request against the WSO2 IS to validate a token:
It turns out that the OAuth Working Group at the IETF is working on this and has a draft specification available, using a RESTful service. They call this OAuth Token Introspection. I figured this would be easier (and more pleasant) to call from my Python code, so I knocked up a quick WSO2 ESB API mediation flow to convert from the RESTful API to the existing WSO2 SOAP-based API.
I know that Prabath and the security and identity team at WSO2 will soon add this useful REST API, but in the meantime, here is a quick hack to help you out. Please note you need to hardcode the URL of the IS and the userid/password into the ESB flow. Also I assume if you don't provide a token_type_hint then this is a bearer token. And here is the Gist showing a sample interaction: 




esb

GNU Terry Pratchett on WSO2 ESB / Apache Synapse

If any of you are following the GNU Terry Pratchett discussion on Reddit, BBC or the Telegraph, then you might be wondering how to do this in the WSO2 ESB or Apache Synapse. Its very very simple. Here you go. Enjoy.
Loading ....




esb

Third largest non-profit senior living provider, Presbyterian Home & Services partners with Wellzesta to deliver engagement software that enhances resident well-being and staff operational efficiency

Wellzesta, a software company specializing in eldercare engagement platforms is pleased to welcome Presbyterian Homes & Services (PHS), headquartered in Roseville, Minnesota as one of its newest client-partners.




esb

Department of Homeland Security Win: Chevo Wins CBP Enterprise Small Business (ESB) Blanket Purchase Agreement (BPA)

Chevo One of Seven Awardees of BPA Valued at $450M




esb

TunesBank Releases One-Stop Video Downloader for all Video Platforms Supports Service for Netflix, Amazon, Disney+, Apple TV+, HBO and Hulu Videos

Designed for movie lovers worldwide, TunesBank iMovieTool supports 9 VIP video streaming services platform that supports service for Netflix, Amazon, Disney+, Apple TV+, YouTube, HBO, Facebook, Twitter/X and Hulu videos.




esb

New website design launched for Community Presbyterian Church, Englewood Florida

Brief The team at Community Presbyterian Church in Englewood, Florida came to us with an outdated website that they struggled...continue reading

The post New website design launched for Community Presbyterian Church, Englewood Florida first appeared on Website Design in Naples, Fort Myers Florida | Logo Design | Brian Joseph Studios.




esb

Health Reform Agenda: Mr Mike Nesbitt MLA, Minister of Health

Gransha Suite, La Mon Hotel



  • Committee for Health

esb

Cierra la cafetería más alternativa y 'cultureta' de Málaga: "Tanto amor de tanta gente nos tiene desbordados"

El local se despide de los malagueños tras 12 años de actividad Leer




esb

"¡Salid de ahí, ya, el río se ha desbordado!", la llamada que puso a salvo a una pareja y a sus hijos mellizos en Álora

La DANA causa inundaciones en la provincia de Málaga, el desbordamiento del río Guadalhorce y la muerte de un hombre de 71 años Leer




esb

La patrulla 'gay' de la Policía que vela por los derechos LGTBI: "Si a mí me llaman lesbiana, me doy media vuelta y me voy. Tenemos la piel muy fina y no todo es un delito de odio. A veces sólo es un hecho odioso"

La asociación LGTBIPol, con más de 300 agentes, lucha por la sensibilización y la diversidad dentro de los Cuerpos y Fuerzas de Seguridad del Estado. "Como en el resto de la sociedad, claro que hay homofobia en la Policía. Y machismo" Leer



  • Artículos Javier Cid

esb

El Gobierno confía en lograr un acuerdo con el PP por la Ley del Suelo antes de final de año y desbloquear una norma "clave" para el sector

Buscará acercar posturas con los 'populares' en la Conferencia de Presidentes de inicios de diciembre. La ministra Isabel Rodríguez comparece este miércoles en el Congreso para rendir cuentas sobre su actuación ante la crisis de vivienda Leer