GSoC — Community Bonding Period
2 min read
This year, the community bonding period was from April 22nd — May 22nd.. Though I was communicating with my mentor and community members frequently even before GSoC project results were announced (Yeah!!, I was pretty confident), this period was very very helpful and useful.
I took off from April 29th — May 10 for my semester exams and my mentors were comfortable with it. We had a hangout session before that and my mentor explained what is expected out during this community bonding period. There was a major change in the code base from the time when I wrote proposal and now. Here is the previous code base and here is the new one. Big change right.? Yes, I too felt the same and I panicked!! But my mentor and members of the org were very helpful and understood my situation. They guided me through it very well.
Why a Load Balancer ?
My project is to build a HTTP Load Balancer on Top of WSO2 Gateway. When I tell this to my friends few astonished ( yes, I wanted to build a kick-ass product !) and few ask my “Why a Load Balancer.?”, “It’s already there, Why re-invent the wheel.?”. First of all, I chose this organization because, WSO2 ESB is the backbone of ebay! Yes, It helps ebay in handling more than 1 billion transactions per day!! Pretty cool uh..? So what does gateway has to do with it.? This gateway-framework will be used to build next-gen-ESB.
WSO2 Gateway is a high performance, lightweight, low-latency messaging gateway based on standard gateway pattern. Its Netty based non-blocking IO and Disruptor (ringbuffer) architecture makes it the fastest open-source gateway available. Performance Benchmarks (slide 13,14,15) shows that the gateway’s is very high when compared to other solutions and is close to the direct netty based backend (without any intermediate gateway).
- Support for different Load Balancing Algorithms
- Full Compliance with HTTP specification
- Support for SSL
- Session Persistence
- Health Checking and Redirection
So, I am building a pretty cool LB which is based on non-blocking IO to achieve high performance and low-latency mediation.If everything goes well and I hope so, one day, this LB will be used by many organizations.
Accomplishments so far:
- Understanding carbon-gateway-framework’s code base and trying out few samples of product-integration-server.
- Antlr 4 grammar support for reading Load Balancer specific configurations.
- Repository structure for a standalone HTTP Load Balancer Server.
You guys can find my code in the above mentioned link. Thanks for reading.
Originally published at https://venkat2811.blogspot.com/2016/05/gsoc-community-bonding-period.html on May 23, 2016.