Lightblue project

download Lightblue project

If you can't read please download the document

Transcript of Lightblue project

Lush Green

Lightblue: Re-thinking the old wayLessons of How to turn internal Fog into a simple Cloud

DISCLAMER

The views expressed in the following slides are solely those of the author, which aims just to share knowledge and help the community

Putting this in another way, the contents of this presentation do not necessarily represent the views or policies of anyone else than the author

Introduction

Luan Cestari

Software Engineer

@BR_LuanCestari and http://www.slideshare.net/LuanCestari

You can interrupt me to ask me, I'm here to help =)

Agenda

Quick story: from small first application in a company to a big interconnected services

Some problems that may occur

The Lightblue project that aims to fix those problems

Some details of the techonologies behind Lightblue

Bonus: Some interressting collections libraries

The Beginning

The Application Delivery

The Company and the systems grow

A Simple Change Involves a Lot of Systems

The Result of Change

What are the patterns that you may find?

Very hard to maintain services

Services which too much specific and compled

Slowness

Hard coded

Static content

Hard to garantee the security end to end

Hard to deploy in different enviroment

What some people thought

To re-write the services creating an open source solutionUsing cutting edge tecnologies, good practices and techniques

Make it simple to use and maintain

Make it fast but it also needs to have monitoring

Need to be flexible for changes

Make use a good techonologies which can provide some of the Cloud characteristics (Measured service,Rapid elasticity,Resource pooling,Broad network access,On-demand self-service)

Need to be very secure

This is Ligthblue

Lightblue

It aims to be capable to provide high availability, resiliency, consistency, and performance integrating with others SOA Services

To provide a high level of flexibility, it is metadata driven project

You can easily extend and change its behavior

You can use it for your own business

Lightblue: Overview

Lightblue: Simple Deployment

Lightblue: Deployed on the Cloud

Features: Hystrix

https://github.com/Netflix/Hystrix

Features: Hystrix

Hystrix: Latency and Fault Tolerance for Distributed SystemsCan be used with Servo for monitoring (Graphite and CloudWatch)https://github.com/Netflix/servo

Is there overhead?https://github.com/Netflix/Hystrix/wiki/FAQ#what-is-the-processing-overhead-of-using-hystrix

Features: Hystrix

https://github.com/Netflix/Hystrix/wiki/Dashboard

Features: MongoDB

https://en.wikipedia.org/wiki/MongoDB#Main_features

http://docs.mongodb.org/manual/core/replication-introduction/

Lightblue: more information

https://github.com/lightblue-platform/lightblue

https://github.com/lightblue-platform/lightblue/wiki

https://github.com/lightblue-platform/lightblue-quickstarts

Bonus: Beyond JDK Collections

https://github.com/goldmansachs/gs-collections

http://trove4j.sourceforge.net/index.html

http://high-scale-lib.sourceforge.net/

http://javolution.org/

https://code.google.com/p/guava-libraries/

http://www.goldmansachs.com/gs-collections/presentations/GSC_Memory_Tests.pdf

https://commons.apache.org/

colt

Bonus: Beyond Others

https://github.com/OpenHFT/OpenHFT

https://github.com/peter-lawrey/Java-Chronicle

https://lmax-exchange.github.io/disruptor/

https://sites.google.com/site/piotrwendykier/software/parallelcolt

https://code.google.com/p/thrift-protobuf-compare/wiki/Benchmarking

https://github.com/Netflix/RxJava/wiki

https://bitbucket.org/robeden/trove/

Conclusion

There are a lot of other tecnologies other than Java EE which are very good to use

Migrating to Lightblue can help you with some hard to maintain services

Thank you!

Thank you for watching and sharing your ideas

@BR_LuanCestari and http://www.slideshare.net/LuanCestari

Any questions?