WSO2 ESB - The Open Source ESB
By Samisa Abeysinghe
- 9 Aug, 2017
WSO2 ESB is the only completely open source ESB that’s 100% open source by definition. Some alternatives that claim to be fully open source do not have an enterprise version under their open source offering and you have to get a commercial enterprise version for enterprise features. Some do not have a license as open as Apache 2.0. Moreover, some open source ESBs that may have business friendly open source licenses do not have complete enterprise integration patterns (EIP) coverage.
There is no such thing as an enterprise ESB vs an open source ESB with WSO2 ESB. WSO2 ESB is fully open source under Apache 2.0 license and offers all enterprise features. There is no dual packaging model or dual-licensing model with WSO2 ESB.
When selecting an open source ESB, you should evaluate the following criteria:
- Can you get the complete feature set under an open source license?
- Would the license be business friendly, would the business lawyers feel comfortable with licensing model?
- What are the channels available for communicating with the community?
- Is the product being developed openly or is the source code thrown over the wall after it's all done privately?
- What are the tools you can use to monitor development activities, such as source code, issue tracking, and code quality?
- What is the development, and testing frequency and trends?
- Where can you get the latest updates and fixes?
Managing and sustaining the open source model
At WSO2, all development of new features happens on the source head trunk. In addition, all bug fixes done are committed to the latest release head right away. Even a bug that’s found and fixed for an older release of WSO2 ESB makes it to the latest release trunk immediately without any delay. All discussions are transparent. Both architecture and development discussions are open, and if you have any queries related to WSO2 ESB development or release status, you can always discuss them with the developer community. As a company, we do have meetings to discuss and drive ESB related topics forward. However, the principle followed in these cases to keep the community informed is to send meeting notes to the relevant mailing list, either architecture or development, and to look for feedback from others.
How does WSO2 do business with this open source model?
An important question when it comes to WSO2 is if it is that open source, how do you do business with the organization?
WSO2’s business model is based on helping customers be successful with using our products by providing necessary consultancy services as well as on-going production subscription support. What subscription support means is that while all the source code that WSO2 produces is openly available, what we do not give out freely is maintenance on previously released versions. Only our customers get updates to released versions of our software, all distributed via the WSO2 Update Manager.
The 100% open source model lives on with this business model, in that, we make sure all these fixes done for previous releases for customers make it into the next ESB release anyway. If you only want to use the ESB as an open source user and not as a customer, you can always either use the latest release, which is the greatest. If you want to keep using an older version of WSO2 ESB without a commercial subscription, you can keep track of the fixes in the source repository, which is possible, given it is open source, and given all features are in the open, and merge those to the version that you are using.
The value you get by being a customer of WSO2 and going into a subscription model is that you can save time in managing this model, rather than having to do it yourself.
Where is the development activity?
Git repository: https://github.com/wso2/product-ei
Issue tracker: https://github.com/wso2/product-ei/issues and https://wso2.org/jira/projects/ESBJAVA/issues
How to build: https://wso2.github.io/
How to contribute: https://wso2.com/community
Is open source too buggy?
One of the key FUD factors that’s raised against truly open source projects such as WSO2 is that there are too many open issues and too many code quality issues. It is part of the equation when it is completely open that you get to see what is out there. Some of the ESB vendors that claim to be open source may have a dual packaging model, and the enterprise version is closed source. So the reality is that you don’t get to see what bugs are really there in the hidden proprietary repo. You can see all issues that are open and pending with WSO2 ESB. You can also see the created vs. resolved trends to gauge where it is heading. And if you want to make an impact, you can participate and do something to help. Seeing all issues in an open manner means you get to know what is real with a proper open source project. The fact that you do not see many means the truth is hidden from you. You never know how many issues there could be in the hidden repositories.
Community engagement model
If you want to get involved with the WSO2 ESB open source project, there are many ways you can help.
- Use WSO2 ESB, evaluate and let us know what you think
- Participate in WSO2 ESB user forums, ask questions and you can even respond to others’ questions
- Report bugs against WSO2 ESB in case you run into any issues when using it
- You can also report documentation bugs against ESB documentation
- You can contribute to WSO2 ESB training material that are open too
- Report security vulnerabilities in WSO2 ESB
- Join WSO2 ESB mailing lists to discuss development trends and architecture
- You can implement and contribute connectors to WSO2
- Contribute to WSO2 ESB code, you can provide fixes, improvements and even new features
For more information on how to contribute, please see https://wso2.com/community.